Connors RSI(2) 5-minute time-frame conversion test design
- Written: 2026-08-31
- Work week: work week 4, ISO
2026-W36 - Status: preregistration draft — before implementation and experiments
- Reference experiment:
EXP-005-connors-rsi2-creon-reference - New experiment group:
EXP-006-connors-rsi2-m5-*
1. One-line goal
Decide whether the positive Connors RSI(2) result observed on daily KODEX 200 repeats when the time frame changes to 5-minute bars, in an OOS period controlled for costs, look-ahead and session boundaries.
This experiment is not adopting a 5-minute strategy but judging the value of a time-frame conversion. Only if the two symbols currently in hand pass are 5-minute bars collected for more symbols.
2. Starting point and observed insights
2.1 Daily baseline
EXP-005 recorded the following on 5,891 daily bars of KODEX 200 A069500 from 2002-10-14~2026-08-26.
| Variant | Trades | Total return | MDD | Win rate | Profit factor |
|---|---|---|---|---|---|
| Baseline | 87 | +32.33% | -20.83% | 63.22% | 1.499 |
| -7% hard stop | 87 | +15.89% | -17.85% | 62.07% | 1.248 |
| 5-bar time exit | 82 | -10.66% | -21.68% | 56.10% | 0.888 |
| -7% hard stop + 5 bars | 82 | -10.68% | -21.70% | 56.10% | 0.888 |
There are three insights to take directly from this.
- The RSI dynamic-exit baseline was positive, but the absolute return is not large over 24 years.
- The -7% stop reduced drawdown slightly at the cost of lower returns and profit factor.
- The 5-bar time exit turned expectancy negative. Forcing time before mean reversion completes may damage the edge, so it is handled only as a separate variant on 5-minute bars as well.
2.2 Current 5-minute data
| Symbol | Period | Rows | Trading days | Typical intraday bar count |
|---|---|---|---|---|
Samsung Electronics A005930 | 2021-07-16~2026-08-26 | 96,142 | About 1,250 | 77 |
KODEX 200 A069500 | 2021-07-16~2026-08-26 | 96,134 | 1,250 | 77 |
Some trading days are short, with 65~76 bars. A fixed bar count must not be treated as a number of trading days; a session calendar must be used explicitly. With current data a 16-year 5-minute test is impossible; only a pilot of about 5 years is possible.
3. Hypotheses to test
H1 — pure 5-minute conversion
A short oversold condition with RSI(2 5-minute bars) < 5 above SMA(200 5-minute bars) mean-reverts within the next few tens of minutes .
Caution: SMA 200 means about 2.5 trading days and RSI 2 about 10 minutes. The rule shape is the same as the daily strategy, but the economic meaning of time differs: it is a new ultra-short-term strategy.
H2 — daily trend + 5-minute entry
Allowing 5-minute RSI(2) oversold signals only inside a daily close > SMA(200) trend filter confirmed up to the prior trading day reduces false rebounds and drawdowns compared with the pure 5-minute filter.
The same day's daily close and SMA cannot be known intraday, so the prior day's confirmed values must be used.
Null hypothesis
With costs and next-bar fills applied, both interpretations have OOS expectancy per trade at or below 0, or performance is concentrated in one symbol, one year or a particular time of day. In that case, collection of intraday bars for more symbols stops.
4. Execution contract to fix
Signal: computed after 5-minute bar t's close is confirmed
Order: submitted after t's close
Fill: open of the next valid 5-minute bar t+1
Quantity: integer quantity rounded down within available cash, including commission
Position: 1 per symbol; no averaging down, pyramiding or leverage
4.1 Capital and compounding contract
Initial account capital: 3,000,000 KRW
Entry budget: 95% of available cash just before entry
Quantity: rounded down to an integer number of shares that can also pay costs
Residual cash: at least 5% plus the rounding remainder stays in the account
Reinvestment: after exit proceeds and net P&L are reflected in cash, the next entry budget is recalculated at 95%
Borrowing, leverage, negative cash: forbidden
So the order amount is not fixed at 3,000,000 KRW each time. 3,000,000 KRW is the initial account capital; after a profit the next orderable amount grows and after a loss it shrinks — sequential compounding. For example, if 2,850,000 KRW is deployed in the first trade and the net return including costs is +2%, the account is about 3,057,000 KRW and the next entry budget about 2,904,000 KRW. Conversely at -2%, the account is about 2,943,000 KRW and the next entry budget about 2,796,000 KRW. The actual calculation uses integer quantities and an itemized cost ledger.
Standalone validation of each strategy and symbol runs in its own independent 3,000,000 KRW account. P&L from the A005930 result is not passed to the A069500 run, nor is capital transferred between different algorithms. Results of operating the two symbols in one account are not mixed with standalone strategy validation; shared capital, concurrent positions and allocation rules are preregistered only under a separate portfolio experiment ID.
- A signal made from a 5-minute bar's close is not filled at that bar's open, high or low.
- The exact meaning of the 15:30 bar and orders carried to the next session are fixed after the data audit.
carry, which allows carrying orders across sessions, andday_only, which ends same-day new entries, are not mixed.- In variants with a hard stop, if the next bar's open is below the stop, it fills at the actual open.
- If a stop and a strategy exit coincide on the same bar,
stop_firstapplies. - Unfilled signals on the last bar of the data are recorded in the ledger as
no_fill_bar.
5. Preregistered experiment matrix
5.1 Track A — convert bar counts as is
| ID suffix | Trend filter | Entry | Exit | Time limit | Stop |
|---|---|---|---|---|---|
A0-baseline | 5-minute SMA(200) | RSI(2) < 5 | RSI(2) > 70 | None | None |
A1-stop7 | Same | Same | Same | None | -7% |
A2-time5bars | Same | Same | Same | 5 bars of 5 minutes, about 25 minutes | None |
A3-stop7-time5bars | Same | Same | Same | 5 bars of 5 minutes | -7% |
Track A is a comparison group that mechanically transfers the four variants of daily EXP-005. The value with the highest return among them is not adopted after the fact.
5.2 Track B — preserving the meaning of the daily trend
| ID suffix | Trend filter | Intraday signal | Exit | Purpose |
|---|---|---|---|---|
B0-daily-regime | Prior-day daily close > SMA(200) | 5-minute RSI(2) < 5 | RSI(2) > 70 | Contribution of the long-term trend filter |
B1-daily-regime-day-only | Same | Same, with a pre-close cutoff | RSI or same-day forced exit | Effect of removing overnight exposure |
B2-daily-regime-five-sessions | Same | Same | RSI or 5 trading days | Preserving the time meaning of the daily 5-bar variant |
The close cutoff and forced-exit fill bar are fixed by raising the contract version after auditing the meaning of the 15:20/15:30 bars.
5.3 Cost scenarios
Every core cell is repeated under the following three costs.
| Scenario | Round-trip cost | Use |
|---|---|---|
zero | 0bp | Arithmetic and ledger verification only |
reference | 40bp | Conservative comparison baseline, the same as EXP-005 |
double | 80bp | High-turnover cost stress |
Commissions, taxes and slippage are separate ledger columns. Actual tax differences between ETFs and individual stocks are added in a later actual-cost scenario, but the EXP-005 comparison baseline of 40bp is not changed after the fact.
6. Data splits
| Period | Period | Use |
|---|---|---|
| Train including warm-up | 2021-07-16~2023-12-31 | Implementation checks and confirming hypothesis direction |
| validation | 2024-01-01~2024-12-31 | Checking preregistered neighbouring values and the execution contract |
| locked OOS | 2025-01-01~2026-08-26 | Final advance/hold/rejected verdict |
Changing RSI thresholds, time cutoffs or holding periods after seeing OOS requires a new experiment ID and new OOS.
7. Parameter sensitivity
Only tracks that passed the baseline run the neighbouring values below.
RSI period: 2, 3, 5
entry below: 5, 10, 15
exit above: 65, 70, 75
trend bars: 150, 200, 250 # track A only
The best value across all combinations is not selected. Only whether the sign of OOS expectancy and the cost sensitivity are consistent around the baseline value is examined. The number of combinations and the search order are recorded in the report before the experiment.
8. Data and engine gates
Gate 0 — source audit
- SHA-256, row counts, first and last times of both files
- Ascending timestamps, duplicates, OHLC violations, negative volume
- Distribution of bar counts per trading day and the list of dates with 65~76 bars
- Meaning of the 09:05 first bar and the 15:20 and 15:30 last bars
- 0 volume, intraday gaps, shortened trading days, trading halt candidates
- Daily OHLC from 5-minute bars compared with the daily OHLC already in hand
- Check that adjusted prices are reflected consistently in intraday OHLC
Gate 1 — synthetic-bar accounting and timing tests
- Signal t → fill t+1
- Last signal of a session → handled in the next session
- Changing future bars does not change past signals or fills
- Cash + valuation = NAV
- The first entry budget does not exceed 95% of 3,000,000 KRW
- The next quantity is recalculated from 95% of current cash after net P&L from the exit is reflected
- Cash does not go negative after costs and integer rounding, and residual cash is kept
- The next entry budget increases after a winning trade and decreases after a losing trade
- Buy and sell costs are each applied only 1 time
- Stop gaps fill at the next valid open
- The 5-bar and 5-trading-day limits produce different results
- Rerunning on identical input gives byte-identical ledgers and NAV
Gate 2 — pilot run
- Run
A005930andA069500independently - Separate single-symbol performance from a two-symbol equal-weight portfolio
- Link train/validation/OOS results, but label OOS separately
- Compute expectancy per trade and cost erosion at baseline and 2x costs
Gate 3 — independent ledger recalculation
For each symbol and main track, pick the first 5, worst 5, best 5 and last 5 trades, 20 in total each, and independently recalculate signal values, fill prices, costs, quantities, cash and P&L. If even one disagrees, no performance verdict is published.
9. Required metrics and charts
- Net and gross expectancy per trade, profit factor, win rate, average gain and loss
- Total return, CAGR, MDD, Calmar, market exposure, turnover
- Initial capital, amount deployed per trade, cash share, capital utilization
- Mean and median holding bars/minutes/trading days, average trades per day
- Expectancy before and after costs and cost erosion
- Intraday/overnight P&L decomposition
- Performance by symbol, year, month and time of day
- Equity and underwater curves for strategy, cash and buy-and-hold
- Distributions of trade P&L and holding time
- Cost sensitivity at 0/40/80bp
- Heatmaps of neighbouring RSI, entry, exit and trend-period values
- Linked train/validation/OOS curves
10. Decision criteria
advance — collection of 5-minute bars for more symbols allowed
- In locked OOS, at least 100 trades across both symbols combined and at least 30 per symbol
- After baseline costs, OOS expectancy per trade and cumulative return positive for both symbols
- Combined OOS expectancy positive even at 80bp costs
- OOS MDD of 25% or less
- No single symbol, year or time of day monopolizes 50% or more of total profit
- The sign of expectancy holds across most neighbouring values around the baseline
hold
- Positive on only one symbol, or only at baseline cost
- Trade count below the criterion, or strong dependence on particular periods
- Ledger and data audits passed, but grounds for generalization are insufficient
rejected
- OOS expectancy negative for both symbols
- Positive before costs but turns negative at 40bp
- Performance disappears after fixing look-ahead, session or accounting problems
- Performance arises only from the time exit or a single parameter point
11. Principles for expanding symbols after passing
5-minute bars are collected for more symbols only when advance. Symbols are not chosen by looking at RSI results; before collection, 5~10 are fixed by average daily trading value, listing age and product type. Large caps and index ETFs are separated and sectors are kept from clustering. All-symbol all_intraday collection is outside the scope of this pilot.
12. Required code changes — not yet implemented
- An
IntradayBarloader preserving 5-minute timestamps, timezone and session - An intraday F1 kernel supporting close signals, next-bar open fills and session carry-over
- A point-in-time join connecting the prior day's confirmed daily filter to 5-minute bars
- Exit state separating bar-count limits from trading-day limits
- Evaluation and charts by time of day, session, overnight and cost
- EXP-006 configuration, ledger and report CLI
The existing EXP-005, the daily engine and its ledgers are not modified.
13. Explicit non-goals
- Searching for the highest-return 5-minute parameters
- Promoting to a live-trading candidate on two symbols' results alone
- Immediate collection of 5-minute bars for all symbols
- Same-bar close signals with same-bar fills
- Describing quotes, VI and unfilled orders at price limits as verified
- Overwriting the daily EXP-005 results
Source and migration evidence
Source: docs/test-plans/2026-W36-connors-rsi2-m5.md
Original SHA-256: 289128671e03c4120028876eebcc538e8178d1a4d747301938ddd92fadb9c8c4
Raw data and account information are not part of the public package. The original results do not replace statistical or scientific revalidation. The English text is a translation; numbers, tables and charts are carried over unchanged.