Verdict
No edge: loses before and after costs
Development 2277 trades: mean ₹-699 per day (t -6.3), win rate 24%, gross ₹-81 a trade before ₹130 of charges; validation ₹-593 a day. Random-time shorts with the same exits: median ₹-640 a day.
- Data: Dhan rolling weekly Nifty options at one minute, fetched back to 2020-12-01 (the API returned nothing for 2020-06), 1,250 sessions in all. The last 20% (from 2025-10-13) was sealed and never scored; development ends 2024-07-08 and validation 2025-10-10. Every year of development lost money (2021 -₹43k, 2022 -₹147k, 2023 -₹171k, 2024 -₹120k per lot pair).
- Why it loses: two thirds of trades (1548 of 2277) end on the EMA cross-back, a whipsaw; only 3% reach the 80% target; the 20% stop is hit in 12% of trades; the average gross is slightly negative (about -1 point) and charges plus slippage (₹130 and about ₹100 a trade) do the rest. Short-term momentum in an ATM premium does not persist.
- It is indistinguishable from chance: random-time shorts with the same exits earn a median ₹-640 a day in development against the strategy's ₹-699. Both the call and the put side lose (CE ₹-430, PE ₹-269 a day).
- Cost sensitivity: even at 0.5% slippage the loss is ₹491 a day in development and ₹339 in validation. Using only trades with observed (not modelled) prices it is worse (₹-922 and ₹-906 a day).
- Data caveat: about 10 to 20% of trades touch bars priced by the Black-76 model because the frozen strike left the -2..+2 window; two modelled fills at implausible premiums (21 Sep 2021 and 4 Jun 2024) were left in as the rules require; removing them does not change the conclusion. Capital was not given ('Rs. lacs'): ₹10 lakh assumed; rupee results are per lot pair and can be rescaled.
- Pass rule (pre-registered, STRATEGY_CINDER.md): failed 7 of 9 conditions. The sealed period stays unopened.
Promotion gates
No gates published for this strategy.
Explain the strategy
We sold the at-the-money option every time its short-term trend turned down, with a safety stop and profit targets. Over almost five years it lost money almost every year, and selling at random moments lost about the same.
Report
Development and validation by cost level, observed-only prices and the random-time null
| Period | Costs | Trading days | Trades | Mean per day (1 lot per side) | t-stat | Win rate | Gross per trade | Charges per trade | Total | Max drawdown on ₹10 lakh |
|---|---|---|---|---|---|---|---|---|---|---|
| Development 2020-12 to 2024-07 | 0.5% slippage (optimistic) | 687.0 | 2277.0 | ₹-491 | -4.4 | 25% | ₹-18 | ₹130 | ₹-337,207 | 34% |
| Development 2020-12 to 2024-07 | 1.0% slippage (base) | 687.0 | 2277.0 | ₹-699 | -6.3 | 24% | ₹-81 | ₹130 | ₹-480,188 | 48% |
| Development 2020-12 to 2024-07 | 2.0% slippage (stress) | 687.0 | 2277.0 | ₹-1,116 | -10.0 | 22% | ₹-207 | ₹130 | ₹-766,512 | 77% |
| Development 2020-12 to 2024-07 | 1.0% slippage, brokerage x2 | 687.0 | 2277.0 | ₹-1,090 | -9.8 | 22% | ₹-81 | ₹248 | ₹-748,874 | 75% |
| Development 2020-12 to 2024-07 | 1.0%, observed prices only | 687.0 | 2004.0 | ₹-922 | -16.0 | 21% | ₹-187 | ₹129 | ₹-633,733 | 63% |
| Validation 2024-07 to 2025-10 | 0.5% slippage (optimistic) | 313.0 | 1022.0 | ₹-339 | -2.3 | 29% | ₹29 | ₹132 | ₹-106,235 | 12% |
| Validation 2024-07 to 2025-10 | 1.0% slippage (base) | 313.0 | 1022.0 | ₹-593 | -3.9 | 28% | ₹-49 | ₹132 | ₹-185,612 | 19% |
| Validation 2024-07 to 2025-10 | 2.0% slippage (stress) | 313.0 | 1022.0 | ₹-1,101 | -7.1 | 26% | ₹-205 | ₹132 | ₹-344,525 | 35% |
| Validation 2024-07 to 2025-10 | 1.0% slippage, brokerage x2 | 313.0 | 1022.0 | ₹-978 | -6.4 | 26% | ₹-49 | ₹250 | ₹-306,208 | 31% |
| Validation 2024-07 to 2025-10 | 1.0%, observed prices only | 313.0 | 775.0 | ₹-906 | -9.3 | 23% | ₹-235 | ₹131 | ₹-283,684 | 29% |
| Development 2020-12 to 2024-07 | random-time shorts, same exits (30 seeds) | median ₹-640, 90th pct ₹-517 | ||||||||
| Validation 2024-07 to 2025-10 | random-time shorts, same exits (30 seeds) | median ₹-594, 90th pct ₹-341 |
Rules and parameters
Rules
- Record the Nifty spot at 09:20 and freeze the CE and PE of the nearest weekly expiry at the nearest 50 strike. 5-minute candles of each premium from 09:15; EMA2, EMA10, EMA20 of the closes (seeded each day).
- Sell at the next minute's open when EMA2 crosses below EMA20 on the last closed candle, from 10:00 to 14:55, at most 2 trades per side, premium at least ₹5.
- Exit: 20% stop (above entry), 80% premium-drop target, EMA2 crossing back above EMA20, EMA10 trail once the premium is 30% below entry, square-off at the 15:15 open. Stop first when several fall in one minute.
- Costs: Anand Rathi ₹50 per lot per order (third-party figure, unconfirmed), STT 0.10% (0.15% from 2026-04-01) of premium sold, NSE transaction charge 0.03503%, SEBI, GST 18%, stamp 0.003% on buys; slippage 1% per fill (0.5% and 2% tested).
Parameters
- capital
- ₹10 lakh assumed (not given)
- lot
- 65 in all years
- periods
- development 2020-12 to 2024-07; validation to 2025-10; sealed 2025-10-13+ unopened
- pre-registration
- research/cinder/STRATEGY_CINDER.md
- slippage
- 1.0% per fill base; 0.5% and 2.0% tested
- null
- 30 random-time runs with the same exits
Instrument
Nifty weekly ATM call and put frozen at 09:20, one lot (65) per trade, NRML, square-off 15:15 · capital ₹1,000,000
Known limitations
- EMAs are seeded at the first candle each day; a trading platform would carry the contract's earlier sessions.
- Anand Rathi's brokerage (₹50 per lot per order) comes from third-party review sites and is unconfirmed; STT and exchange charges are the statutory rates.
- No quotes in the data: slippage is an assumption; trades are filled at 1-minute bar opens.
- Modelled prices when the strike leaves the window; two extreme modelled premiums remain in the sample.
- Capital not given; ₹10 lakh assumed.
Logs and raw data
Downloads appear once a data window is loaded.
Files are plain CSV so results can be re-computed independently. Trade dates are IST sessions; returns are net of modelled costs and slippage.