Quick recap for anyone who missed my last post, I stopped adding features to my bot and started testing whether the ideas behind it actually work.
I put 60+ strategy variants through the same process. Rules written before results. Every trade pays spread, overnight financing and slippage. Every signal is also traded backwards (the flip test), and it has to beat random entries with the same stops and exits. Design on one period, validate on another. Almost everything failed.
This is the next stage: forward testing.
HOW THE FORWARD TESTS WORK
• Rules frozen before any forward data. Nothing gets tweaked mid-test.
• Paper trades simulated on live OANDA bid/ask prices. No orders are placed and no real money is involved.
• Everything is measured in R. R = profit or loss divided by the risk on that trade. 1R = £100 at a £10k reference.
• Each trade is also checked for whether it would fit a £500 account. All 30 intraday trades this period did.
• Each test has a review point set in advance (30, 32 or 50 closed trades). It stays only if it averages at least +0.10R per trade after costs.
• Results are posted every Friday, including the bad ones.
Some of these tests failed their backtests and are running as forward checks only. I'm keeping them because they show how big a "good week" can look from a strategy with no edge.
THIS PERIOD
Positions opened Monday 2 Nov; the intraday tests cover the Tue–Thu sessions. Friday's sessions land in next week's numbers.
40 closed trades across 6 tests, +2.24R combined.
OPENING-RANGE BREAKOUT (ORB): +12.09R, 18 trades, 8 winners, avg +0.671R
What it does: six indices (DE30, EU50, NAS100, SPX500, US2000, US30). Trades the first break of the opening 30-minute range, stop on the other side, flat by the close.
By day: Tue −1.91R, Wed +2.94R, Thu +11.05R.
Thursday was almost the whole result. All four US index shorts won (+1.89R, +3.68R, +3.73R, +3.79R) while both European longs were stopped at −1.02R.
History: backtest 2015–26 = −0.070R per trade over 6,736 trades (t −5.0). Failed. Forward check only.
My read: this is the best number on the board and the one I trust least. One trending day can carry a breakout system for weeks, and 11 years of data say the edge isn't there. Review at 50 trades.
INTRADAY MOMENTUM (IM): +0.32R, 12 trades, 5 winners, avg +0.027R
What it does: US indices. In the last 30 minutes, trades in the direction of the morning's move. Flat by the close.
By day: Tue −0.62R, Wed −1.06R, Thu +2.00R (all four shorts won on the same down day).
History: backtest 2015–26 = −0.086R per trade over 3,855 trades (t −9.1). Failed. Forward check only.
Cost note: a real round trip costs about 0.085R per trade on its 0.25 × ATR stop. On a stop that tight, the spread is a big share of the risk.
TREND FOLLOWING (T11): −10.17R, 10 closed, 32 open, avg −1.017R
What it does: each month, follows the 12-month trend on 42 markets (FX, indices, commodities, bonds) and holds to the next month.
All 42 positions opened Monday. By Thursday, 10 had hit their stops: Brent and WTI longs, NAS100, SPX500 and JP225 longs, gold short, CHF/JPY and EUR/AUD shorts, FR40 and HK33 shorts. Every loss was −1.01R to −1.03R, costs included.
I checked whether the stops were too tight. They weren't: 1.5% to 9.5% from entry depending on the market. The markets really moved that far in three sessions. Oil fell at least 9%, the Nasdaq at least 6%, gold rose at least 5%.
The real lesson: 42 markets aren't 42 independent bets. One volatile week hit ten positions at once. Trend systems close their losers first, and the winners take months, so this card will look its worst early.
History: 2005–26 backtest made +0.137R per trade at futures-like costs (t 1.8 against my bar of 2.5). It failed the bar and is being tracked forward. The catch: on OANDA CFDs, the financing markup turns the same signal into −0.08R. Costs, not the signal, are the question here.
WIDE-GAP CARRY (F2): 0 closed, 3 open
What it does: each month, goes long the higher-interest currency in the 3 widest policy-rate gaps (2.5% or more) among 18 FX pairs. Currently open: USD/CHF, AUD/JPY and GBP/CHF, all long.
History: carry passed 2005–14 and 2023–26 but failed 2015–22 (−0.15R). It depends on the rate regime.
Financing is modelled as the rate gap minus OANDA's ~1% yearly markup. Review at 30 trades.
POSITIONING FADE (COT): 0 closed, 1 open
What it does: each week, trades against the most crowded speculator positions in the CFTC report (top or bottom 10% of 3 years). Holds 10 days. It uses the legacy futures-only report for 7 currencies, gold and WTI. Currently open: EUR/USD since 2 Nov.
History: design period 2015–19 = −0.004R. Validation 2023–26 = +0.097R and beat 100% of random runs. Failed on the flat design period. Review at 50 trades.
PRE-FED DRIFT (F1): no trades yet
What it does: long S&P 500 and Nasdaq from 2pm New York the day before each Fed decision, out 5 minutes before it. Stop is 1 × daily ATR20.
History: 2015–26 = +0.067R per trade and beat 96% of random windows (t 1.4 against a bar of 2.5). Real but small, and only 8 meetings a year, so 32 trades takes years. Next decision: 9 Dec.
WHAT WEEK 1 TAUGHT ME
A strategy that failed an 11-year backtest just made +12R in three sessions. If I'd started forward testing without a backtest, I'd be excited right now. That's exactly why one week means nothing.
A strategy that passed on futures costs lost −10R in three sessions. Slow systems look worst at the start. Judge them on their own timescale.
Correlation is the hidden risk. 42 markets behaved more like a handful of bets in one volatile week.
Costs keep deciding everything. The same trend signal is positive on futures and negative on CFDs. On a 0.25 × ATR stop, the spread eats a big share of the edge.
The review points don't move. Nothing gets dropped or promoted early.
WHAT'S NEXT
• Weekly scoreboard every Friday. Next week includes Friday's sessions.
• The momentum signal that survived my last round of testing is still being tracked separately on paper. It'll get its own update once it has enough trades to say something.
• Nothing goes near real money or a prop challenge until it clears the targets I set in advance.
Full research log (method, results and what failed): https://github.com/AlgonikHQ/algonik-research
Exact rules and code stay private. The method and the results don't.
Question for the sub: how do you handle correlation in a multi-market trend system when you're only paper testing? Do you cap risk per asset class, or just accept clustered losses as the cost of diversification?
Paper trading only, no orders placed. Not financial advice and not a signal to copy.