Backtesting & Performance Report
The DELTAK Matrix Strategy, run 18 months past its own Quantum Horizon
What happened when we ran the strategy the terminal actually ships across 6 Indian indices for 18 months — including the parts that did not work.
Backtested, not live. Nothing here is a record of real money. These are simulated results on past data, with costs and taxes deducted. The terminal runs in practice mode only — not a single rupee of real capital has traded this strategy. Past results, real or simulated, never guarantee future ones. See Risks & Limitations.
Sentinel — both gates on, the shipped default. Fewer ALPHA entries, each writer-confirmed.
Equity curve
₹1,00,000 → ₹22,03,205Drawdown from running peak
worst −4.9%, Mar 27 2025Expectancy by walk-forward fold
R per tradeExpectancy vs. bid-ask spread
test fold, 0→3%Net P&L by index
₹, current sizing| Index | Trades | Win rate | Net P&L |
|---|---|---|---|
| NIFTY | 114 | 86.8% | +₹2.22L |
| SENSEX | 83 | 90.4% | +₹1.50L |
| FINNIFTY | 14 | 71.4% | +₹24.6K |
| BANKNIFTY | 17 | 82.4% | +₹16.2K |
| MIDCPNIFTY | 9 | 77.8% | +₹10.7K |
| BANKEX | 12 | 58.3% | +₹6.3K |
All six made money. NIFTY did the most work — the most trades (114) and the biggest share of the profit. SENSEX was the most reliable, winning 90.4% of the time. MIDCPNIFTY traded least of all: 9 times in 18 months.
R-multiple by protocol
total R, all foldsBETA (buying a dip at support) and GAMMA (selling a rally at resistance) are the workhorses — together they're nearly nine out of every ten trades, and both win over 81% of the time. ALPHA is the fussiest of the three: extra checks cut it down to 48 trades, but when it does fire it returns ₹6.52 for every ₹1 it loses — the best of the three.
Exit reason mix
share · net ₹Two exits now do almost all the work, and the split is close to even. Just under half of trades reach the profit target — every one of those is a winner by definition, and together they carry ₹20.3 lakh of the ₹22 lakh total. The other half close early because the reason for buying stopped being true; those are small, roughly break-even trades that mostly protect capital rather than make it. Only 1.5% ever hit the stop-loss, and that is the sole category that loses money overall.
Starting capital comparison
You can start the practice wallet at three different amounts. A smaller balance has to bet a larger share of itself per trade, simply because one lot of an index option costs what it costs — you cannot buy half a lot. Here is how the same strategy, over the same 18 months, treats each starting amount.
Same signals, different starting balance
6% risk per trade — the paper-wallet reset preset paired with this balance, run through the identical strategy and historical data as the report above. Position size changes with riskPct; which signals fire does not, which is why trade counts sit within a few percent of each other across every tier.
Sharpe drops and drawdown roughly doubles moving from Rs 1,00,000 to the smaller tiers — the cost of the higher riskPct a smaller float needs to clear the same per-index 1-lot floors. The raw P&L totals aren't shown here on purpose: fixed-fractional sizing compounded across ~905 trades (all three tiers) produces numbers in the crores that are a property of the sizing formula, not a real-market outcome — Sharpe, drawdown and win rate are what actually compare across tiers.
All three tiers, combined
Every balance starts at 100 here instead of its real rupee value, so the shapes can be compared side by side — a bigger account naturally ends on a bigger number, which tells you nothing useful about the strategy. Use the tabs to switch. The ₹50,000 and ₹25,000 wallets take almost identical trades, so showing all three at once buried two of the lines on top of each other.
Equity curve & drawdown
Win rate by protocol, all tiers
| ₹1,00,000 | ₹50,000 | ₹25,000 | |
|---|---|---|---|
| ALPHA | 86.5% n=192 | 88.5% n=253 | 89.1% n=248 |
| BETA | 77.3% n=22 | 81.8% n=33 | 81.8% n=33 |
| GAMMA | 82.9% n=35 | 82.2% n=45 | 84.1% n=44 |
How each exit pays for itself, all tiers
| ₹1,00,000 | ₹50,000 | ₹25,000 | |
|---|---|---|---|
| DAYLIGHT | −₹723 0% win · n=2 | +₹5.3K 33.3% win · n=3 | +₹3.7K 33.3% win · n=3 |
| STOP | −₹99.0K 0% win · n=16 | −₹5.31L 0% win · n=17 | −₹3.36L 0% win · n=15 |
| TARGET | +₹5.43L 100% win · n=201 | +₹39.69L 100% win · n=261 | +₹26.83L 100% win · n=258 |
| THESIS_BROKEN | −₹14.0K 36.7% win · n=30 | −₹9.4K 52% win · n=50 | −₹3.3K 53.1% win · n=49 |
Walk-forward win rate, all tiers
Train (oldest 60% of days), Validate (next 20%), Test (final 20%, looked at once) — the same split every tier ran through.
| ₹1,00,000 | ₹50,000 | ₹25,000 | |
|---|---|---|---|
| Train | 77.5%n=365 | 74.4%n=398 | 74.5%n=392 |
| Validate | 83.8%n=105 | 80.7%n=109 | 80.2%n=111 |
| Test | 86.7%n=90 | 80.4%n=107 | 80.6%n=108 |
Strategy configuration
Most strategies watch the index price go up and down. This one watches something else: where the big money has already committed. In an option chain you can see exactly which price levels the large sellers have written contracts against — and those are the levels they will defend, because they lose money if price breaks through. We call the strongest one below the current price the support wall, and the strongest one above it the resistance wall.
A wall is found two ways — the level with the most money parked against it, and the level with the most trading activity today. When those two disagree, we take whichever sits closer to the current price; more often than not they point at the same level anyway. We then cross-check the individual option against its own recent trend, and only act when both readings agree.
Two habits matter more than the signal itself. We never chase a price: the order sits below the going rate and waits, and if nobody fills it we let the trade go rather than pay up. And once we're in, we watch the reason we bought — not just the price. If that reason stops being true, we leave immediately, without waiting for the stop-loss to be hit.
| Which option we buy | Only deep in-the-money calls or puts — never a cheap out-of-the-money lottery ticket |
| Three setups | ALPHA — price pinned at a wall · BETA — a dip bought at support · GAMMA — a rally sold at resistance |
| Extra check on ALPHA | A direction cross-check that is always on — if support and resistance disagree, we stand down. Both modes run it. |
| How we buy | We never chase. We leave an offer below the going price — 7-8% in Maverick, 12% in Sentinel — and wait up to 15 minutes. If nobody sells to us there, we simply don't trade. |
| Where we give up | 25% below what we paid |
| Where we take profit | Half of what we're risking — a small, reachable target rather than a big hopeful one |
| The early exit | The moment the reason we bought stops being true, we're out — without waiting for the stop |
| How much we bet | 6% of the account per trade, three positions open at most |
| What we trade | NIFTY · BANKNIFTY · FINNIFTY · MIDCPNIFTY · SENSEX · BANKEX |
One trade, start to finish
NIFTY · ALPHA · put, entered against the Zenith wall
TARGET exitPrice had climbed into a resistance wall, so the strategy bought a put — a bet on it coming back down. The option was trading at ₹115.10, but instead of paying that we left an offer at ₹101.29 and waited. Someone sold to us there, which put ₹13.81 per unit in our pocket before the trade had done anything at all. Price fell as expected, and we took the profit at ₹119.68 — 5 minutes in, for ₹1,312.48 on a single lot.
Methodology & data
Split composition
6% risk/trade · ₹1,00,000 sizing cap · max 3 open
We tested it on data it had never seen. It is easy to invent a strategy that looks brilliant on the past — you just keep adjusting it until the old numbers flatter you. That proves nothing about tomorrow. So we split these 379 trading days (2025-02-05 → 2026-08-19) into three parts in time order. The strategy was built on the first 60%, checked on the next 20%, and then run once on the final 20% — which nothing was ever adjusted against. That last slice is the only honest test, and it is reported here whether it flattered us or not.
The costs are in the numbers. Every figure is after taxes and brokerage on both the buy and the sell — STT, exchange fees, stamp duty and GST — not before. We also charge ourselves for the gap between the buying and selling price, and we test what happens if that gap is up to three times wider than assumed. Wins and losses are counted using the highest and lowest price each candle actually reached, not the convenient closing price.
These numbers came down on purpose.An earlier version of this page reported a larger return. It was measuring things the live terminal cannot actually do — chiefly buying at a candle’s low and selling at the same candle’s high, which assumes you knew the order the two happened in. It also left out something the terminal really does: Autopilot cancels a resting buy order the moment the setup behind it stops holding, and that single rule decides most of which signals ever become trades. Both are now modelled, along with the wider exit band and the cooling-off period after a trade closes. Fewer trades, a smaller return, and a figure that means what it says.
What it still assumes.A resting order is treated as filled whenever the market touches its price. A real order also needs someone on the other side, so live fills are rarer than this — measured against the terminal’s own logs, quite a lot rarer. This remains a study of a signal, not a promise about an account.
Read the drawdown figure carefully.“Worst drop from a peak” usually describes a losing streak. Here it does not: across 379 trading days the strategy takes a few hundred trades with no clustered runs of losses, so the worst drop is, almost exactly, the single biggest losing trade measured against the account at the time. It is a real number and it is worth knowing, but it is not evidence that losses stay small when they arrive together — this study has too few overlapping positions to say anything about that.
Lot sizes are not one number per index here. SEBI's periodic review moved them twice inside this window, so each trade is sized with the lot actually in force on its own day: NIFTY 75 then 65 · BANKNIFTY 30, 35, then 30 · FINNIFTY 65 then 60 · MIDCPNIFTY 120, 140, then 120 · SENSEX 20 and BANKEX 30 throughout.
Risks & limitations
What this report doesn't paper over.
We assume every order we wanted actually got filled. In a real market you queue behind other people, prices move while you wait, and you sometimes get only part of what you asked for. None of that is here. No real money has ever traded this strategy.
The terminal ships with Maverick — the higher-risk of the two settings. That means the numbers you should expect are the Maverick ones: roughly twice as many trades, twice the risk on each, and a bigger swing down along the way. Sentinel halves the risk and waits for a deeper entry, so it trades about half as often and wins more of them. The toggle above switches which set you are reading.
When a trade moves in our favour the strategy can add to it. Here that happens instantly and perfectly; in the terminal it needs you to click. It only affects about one trade in seventy, but a person who hesitates will not match this exactly.
Volatility-adjusted stops and wall-based entries and trails are all modelled here. A few smaller live behaviours are not. The gap runs both ways: some live safeguards would have blocked trades this report counts, and testing showed a few of those safeguards cost more than they saved.
Because we refuse to chase, our offer only gets filled if the market actually comes down to meet it. Most of the time it doesn't, and the setup passes us by. There are far fewer real opportunities than the number of signals suggests.
BANKEX took 12 trades and MIDCPNIFTY 9, across 18 whole months. Their individual win rates look good, but on samples that small a handful of different outcomes would move those numbers a lot. Treat them as indicative, not established.
The untouched final slice covers about 3.6 months of trading. That is enough to be encouraging and nowhere near enough to be conclusive. One unusual market stretch could look very different, and the only real proof is forward performance nobody has seen yet.
Offering even less than 8% below the going price kept looking better in testing, right to the edge of whatever range we tested — but each step also left far fewer trades to judge it on. That pattern usually means you are fitting the past, not finding an edge, so we stopped at 8% instead of chasing it.
Take it with you
Every trade behind this report and the tier comparison above, exported directly — not a sample, the real 249-331 trades each tier took in Sentinel mode (560-614 in Maverick — pick the mode below).
Sentinel — half the tier's risk, entries 12% below. Fewer fills, each one better priced.
Trade ledger — ₹1,00,000 tier
Every trade: date, index, protocol, strike, entry/exit price, exit reason, charges, net P&L.
249 trades · CSV
Trade ledger — ₹50,000 tier
Same fields, the ₹50,000 / 30% risk tier's own trades.
331 trades · CSV
Trade ledger — ₹25,000 tier
Same fields, the ₹25,000 / 60% risk tier's own trades.
325 trades · CSV
Attribution summary, all tiers
By-index, by-protocol and by-exit-reason rollups for all three tiers in one sheet.
CSV
Full export, all tiers
Every trade plus its tier's summary stats, structured — for anyone re-processing the data themselves.
JSON
Disclaimer. This report presents backtested and simulated historical performance for the DeltaK Matrix Strategy (DKMS) as implemented in the Quantum Horizon terminal. Backtested performance has material inherent limitations — it does not reflect the impact material market or economic factors might have had on live decision-making, and cannot fully account for slippage, liquidity, latency or execution risk in live markets. No representation is made that any account will or is likely to achieve profits or losses similar to those shown. Options trading carries substantial risk of loss and is not suitable for every investor. Nothing in this report constitutes investment advice or a solicitation to invest. All figures are as of the backtest run dated 2026-08-20 and are subject to revision as methodology or data improve.
See it read live, not just diagrammed
Quantum Horizon reads Aegis/Zenith wall migration and RRG rotation live across NIFTY, BANKNIFTY, FINNIFTY and MIDCPNIFTY — sign in and watch it work in Paper mode.