TradePickerNifty · Bank Nifty · Sensex · Bitcoin

What it measured

The rule set on this site has been backtested, and the result is on its own page in the main navigation, with what it rests on and what it cannot show, rather than in small type at the bottom of another one.

A thin, modelled result after costs — barely positive in the last year.

The rules the tool runs today were replayed across three years of 15-minute candles and every trade was priced as the option you would have bought, with Zerodha’s charges and slippage taken off. Across all three indices they came out positive after costs in the first two years and slightly positive in the held-out final year: Nifty and Sensex made money in both periods, and Bank Nifty lost about half of what they made in the final year. Read the next section before reading anything into that.

6,012
trades on the current rules over three years
PF 1.09
profit factor in the held-out year, after costs: slightly positive
₹3.01 lakh
worst drawdown per lot in that year
modelled
option prices, not real fills - unproven

Why it is not proven

  • The option prices are modelled. Each trade is priced with Black-Scholes from India VIX, not from recorded option quotes, and volatility is held constant through the trade. Real fills, a widening spread and implied volatility falling after you buy all make real results worse.
  • All of the held-out year’s profit came on expiry days. Across the three indices, trades on a contract’s own expiry day made ₹3,09,635 per lot in that year (360 trades, profit factor 1.93); every other day together lost ₹59,099 (2,025 trades, 0.98). Expiry day is exactly where a constant-volatility model is least trustworthy.
  • The held-out year is no longer clean. Several of today’s rules were chosen after the held-out year had been looked at — the reward-to-risk floor on 11 Sep 2026, and on 15 Sep 2026 dropping the opening-range break, trading Bank Nifty again and skipping entries into an RSI divergence, on 16 Sep giving a trend day more room to run and dropping the opening-range wait, and on 17 Sep a faster trend measure. A test you have used to choose rules is no longer an independent test of them.
  • The drawdowns are large. The worst run in the held-out year was ₹3,00,843 per lot, with the three indices’ trades taken in the order they happened. An account sized so that a drawdown like that is survivable is the only kind this should be run with.
  • There is no long live record. The trades this server has logged are a sample of weeks, not years.
  • One input was measured inside the held-out year. The VWAP vote weights each quarter-hour by how much the index futures usually trade then, measured from July to September 2026. With equal weights instead — no measurement at all — the held-out year made ₹14,044 less and the first two years ₹22,387 less, measured before the trend-day rule. Every other input the backtest decides with was checked, candle by candle, to be known at the moment of entry.

The two measurements

The current rules, priced as options

Per lot, after Zerodha’s charges and 0.25% slippage a side, on the contract the tool would have suggested with the exchange’s real expiry dates. All three indices are traded: Nifty, Bank Nifty and Sensex.

TradesTotal per lotPer tradeProfit factorWorst drawdown
First two years (to 15 Aug 2025)3,627+₹6,91,171+₹1911.17₹1,70,001
Held-out year (15 Aug 2025 to 11 Sep 2026)2,385+₹2,50,536+₹1051.09₹3,00,843

A profit factor of 1.09 means about ₹1.09 won for every ₹1 lost: a thin margin. A modest increase in real costs over the modelled ones would take most of it.

By index

First two yearsPFHeld-out yearPF
Nifty+₹3,02,3261.24+₹1,53,8471.16
Bank Nifty+₹1,40,5401.09−₹48,0820.95
Sensex+₹2,48,3051.21+₹1,44,7711.18

Bank Nifty has lost money under these rules since its weekly expiry ended in November 2024. It is traded because that was chosen on 15 Sep 2026, not because the test supports it.

The raw signal, in index points

Every signal the engine produced on all three indices, before the reward floor, measured in index points against the stop and before any cost.

SignalsReached T1Reached T2Reached T3Stopped outAverage
Nifty2,16536%19%11%33%+0.041R
Bank Nifty2,14735%18%11%32%−0.002R
Sensex2,16134%18%10%32%+0.026R

About +0.02R a trade before costs across the three: the signal on its own is close to nothing. What the options test measures is that signal with its filters, its exit at T2 and the leverage of an option on the moves that do come — which is why the two can differ, and why the options result depends so heavily on its pricing assumptions.

What was tested and dropped

  • Buy today, sell tomorrow. Buying an option into the close and selling it at the next morning’s open lost money on all three indices in both periods — about ₹700 to ₹900 a trade per lot in the last year, mostly time decay and charges. Of 30 setup, side and index combinations, three passed both periods, about what chance produces across 30 tries. It is not offered; an open ticket in the last hour instead shows what holding it overnight would cost.
  • Other ideas, each pre-declared and tested the same way: skipping expiry day, skipping days when VIX is above 20, skipping big opening gaps, rolling to the next expiry on expiry day, a two-hour time stop, taking half at T1, and moving the stop to breakeven after T1. None improved both periods, so none is used.
  • Two more indicators, at their standard settings: not buying once price has closed beyond its Bollinger Band (20, 2), and not buying when the Stochastic (14, 3) is already above 80 for a call or below 20 for a put. The Bollinger filter made more in the held-out year and cut the drawdown, but made ₹64,909 less in the first two years; the Stochastic filter made far less in both. Neither beat the current rules in both periods, so neither is used — and neither was re-tuned to make it pass.
  • Three ideas from trading-skill checklists, 15 Sep 2026: a stop that trails 1x ATR behind the best price once T1 is reached made less in both periods; requiring the 1-hour trend to agree made more in the first two years and less in the held-out one. Neither is used. Skipping an entry that runs into an RSI divergence — a new closing high or low that RSI does not confirm — made more in both periods, and is now a rule.
  • One ticket per direction across the indices. Nifty, Bank Nifty and Sensex move together, so a second ticket the same way is close to the same bet twice. Holding back a new ticket while another index had one open in the same direction made less in both periods, so it is not used.
  • More room to run on a trend day. The room a trade needs is what is left of a normal day's range; on 15 Sep 2026 every index had used all of it by 10:30 and went on to travel two and a half to three times it, while the tool held its signals for "low reward". Once a day has used its normal range and price is still near that day's extreme, the room that way is now one more normal day's range. It made more in both periods and on every index, and is now a rule.
  • Two controls meant to cut the drawdown. A circuit breaker that paper-traded once the strategy was ₹1,00,000 below its high, until it had recovered to within ₹50,000, cut the held-out year’s worst drawdown from ₹4,80,832 to ₹1,80,995 — measured against the rules as they stood that morning, which still waited out the opening range — but in the first two years it sat out recoveries and made both profit and drawdown worse. Halving size when India VIX was in the top quarter of its year made profit per unit of drawdown worse in both periods. Neither is used.
  • Trading from 09:15, and a lower reward floor. Two changes meant to produce more trades. Dropping the wait for the 09:15–09:45 opening range made ₹55,233 less in the first two years and ₹63,905 more in the held-out year, with a drawdown ₹54,804 shallower — mixed, and worth only 138 extra trades out of 6,158, because the gap between entries and the daily cap refill the day anyway. It is in use from 16 Sep 2026, chosen knowing it fails the “better in both periods” test. Asking a target of only 0.7× the stop instead of 1× did add trades — 404 of them — and made ₹75,136 more in the first two years, but turned the held-out year down to ₹61,958 with the deepest drawdown of the four versions tested, ₹5,31,939. It is not used.
  • A faster trend measure. ADX averages its trend reading over 14 fifteen-minute candles, so on 17 Sep 2026 it sat at 12–15 while Nifty rallied from the open. Keeping the buying and selling pressure over 14 candles but averaging the trend reading over 3 made ₹1,17,292 more in the first two years and ₹42,603 more in the held-out year, on fewer trades, with a shallower worst drawdown in both (₹4,26,028 to ₹3,00,843 in the held-out year). Most of that is Bank Nifty losing less; on Nifty and Sensex alone it made slightly less, with a shallower drawdown. In use from 17 Sep 2026, on the Indian indices only — Bitcoin was not tested with it. ADX over 7 candles also beat the old measure, but on many more trades and a deeper drawdown in the first two years; it is not used.

What the test could not do

  • Fill you at the price on the screen. Index options move in ticks and spreads, and the spread is where a marginal edge goes to die.
  • Know your slippage. Lot size, time of day and how far out of the money the strike sits all change it, and none of them are constant.
  • Model your own behaviour. A backtest takes every signal. Nobody does. Whether that helps or hurts is not something the test can say.
  • Predict a regime it never saw. Three years is three years of particular markets, not of all markets.

Why publish it

Because a rule set you can inspect and measure is worth more than a tip you cannot. Everything on the how-it-works page is checkable line by line, the code is in one place with the reasoning written beside it, and this page exists so that the measurement — and everything that weakens it — is as easy to find as the screenshots.

The useful version of this tool is as a second opinion you can interrogate: a fast, consistent read of what the indicators say, and an explicit statement when a setup does not clear its own bar. Whether it makes money is not settled by a backtest on modelled prices, and it is not claimed here.

Treat everything here as something to examine, never as something to act on. Options can lose their entire value.

How the live record is kept

Every ticket this server issues is written to a trade file when it closes, whichever way it went, with the targets and stop that were frozen at entry. The live figures shown with the measurement are computed from that file — there is no separate curated list, and nothing is excluded for having been a bad day.

A live record of a few dozen trades is a sample. It is shown because hiding it would be worse, not because it settles anything.