Backtest Lab · Nifty · 19 January 2023 to 26 May 2026
Nifty hero zero on expiry day: a 3.5-year backtest
Not SEBI-registered. Educational content only. Every figure on this page is from a backtest on historical data, 19 January 2023 to 26 May 2026. It is not investment advice, a recommendation, or a forecast.
The short answer
StrikeATM backtested hero zero, the strategy of buying very cheap options late on expiry day and hoping one of them becomes a hundred-rupee option, on 3.5 years of Nifty data: every expiry day from 19 January 2023 to 26 May 2026, 175 in all, with ₹65 of costs on every trade. 9 of 337 trades made money. The winners are real, but they are rare, and everything in between cost more than they paid: −₹46,628 on one lot. Booking profits, trailing stops and 4,05,000 smarter entries did not fix it.
Key numbers from the StrikeATM backtest
- Hero zero as it is usually taught (buy the ₹1–3 out-of-the-money call and put at 14:05, hold to 15:15): 337 trades, 9 made money, −₹46,628 after costs.
- It still lost with zero costs: −₹24,723.
- It lost in every year tested: 2023, 2024, 2025 and the first five months of 2026.
- Booking a 25% profit hit the target on 59% of trades, and not one made money after costs.
- StrikeATM Score: 1.5 out of 10.
What is hero zero?
Hero zero is one of the most talked-about option strategies in India. On expiry day, late in the afternoon, you buy options that cost almost nothing: one rupee, two rupees. Most of them go to zero. But once in a while, one of them goes to a hundred, and that one trade, the story goes, pays for everything. You have probably seen the screenshots. So we backtested it properly: not one screenshot, but every expiry day.
The rules we tested
Exactly the way it is usually taught:
- When: on expiry day, at 14:00, look at the five-minute candle that has just closed.
- What: the out-of-the-money call and the out-of-the-money put trading between ₹1–3. If there are several, take the one nearest the money.
- Buy: both, at the open of the next candle (14:05), one lot each. No stop-loss and no target.
- Sell: whatever is still held, at the close of the 15:15 candle.
Costs. In our other backtests we charge ₹100 for every trade, entry and exit together. These options are cheap, so the brokerage and taxes on them are lower, and here we assume ₹65 a trade. The real cost may be a little higher; we took the lower number to give the strategy its best chance, and we added no slippage.
First, prove the code trades the rules
Before running the rules on every expiry day, we checked them on real days from the backtest, one chart at a time: every entry and every exit where the rules put it.
Every entry and exit lands where the rules say. Only after days like these is it worth trusting the code with all of them.
The result
Across 3.5 years of our backtest, 175 expiry days, the rules took 337 trades. 9 of them made money after costs.
Where the money went
| Premium paid | ₹45,526 |
| Costs, ₹65 a trade | ₹21,905 |
| Options sold for ₹0.10 or less | 253 of 337 |
| Net, after costs | −₹46,628 |
| Even with zero costs | −₹24,723 |
Not one bad year. Every year.
| Year | Net, one lot |
|---|---|
| 2023 | −₹12,304 |
| 2024 | −₹10,514 |
| 2025 | −₹17,251 |
| 2026 (Jan–May) | −₹6,558 |
The longest run without a single winning trade lasted 46 expiry days in a row.
All 9 winners
They are real, and some of them are big. The biggest is 16 May 2024, the one above. But together, 9 winners cannot pay for 328 losers: ₹16,874 won against −₹63,502 lost. That is the whole problem with this strategy.
| Expiry day | Option | Bought | Sold | Net |
|---|---|---|---|---|
| 4 May 2023 | 18,250 call | ₹1.40 | ₹9.30 | ₹448 |
| 25 May 2023 | 18,300 call | ₹1.50 | ₹27.75 | ₹1,641 |
| 8 June 2023 | 18,650 put | ₹2.55 | ₹20.95 | ₹1,131 |
| 16 November 2023 | 19,750 put | ₹1.25 | ₹2.70 | ₹29 |
| 16 May 2024 | 22,300 call | ₹1.60 | ₹105.55 | ₹6,692 |
| 12 September 2024 | 25,350 call | ₹1.45 | ₹41.15 | ₹2,516 |
| 7 August 2025 | 24,550 call | ₹2.00 | ₹39.10 | ₹2,346 |
| 25 November 2025 | 25,900 put | ₹2.20 | ₹15.40 | ₹793 |
| 20 January 2026 | 25,250 put | ₹1.45 | ₹22.10 | ₹1,277 |
Maybe the timing is wrong?
Maybe 14:00 is too early, or ₹1–3 is too cheap. So we tested every combination: four entry times (13:30, 14:00, 14:30, 15:00), five price ranges from ₹0.5–1 to ₹10–20, and calls, puts and both together. 60 combinations. 4 made money; 56 lost.
Calls
| ₹0.5–1 | ₹1–3 | ₹3–6 | ₹6–10 | ₹10–20 | |
|---|---|---|---|---|---|
| 13:30 | −₹76 | −₹22 | −₹24 | −₹99 | ₹124 |
| 14:00 | −₹109 | −₹108 | −₹120 | ₹66 | −₹149 |
| 14:30 | −₹86 | −₹94 | ₹27 | −₹150 | ₹236 |
| 15:00 | −₹97 | −₹126 | −₹77 | −₹77 | −₹315 |
Puts
| ₹0.5–1 | ₹1–3 | ₹3–6 | ₹6–10 | ₹10–20 | |
|---|---|---|---|---|---|
| 13:30 | −₹114 | −₹188 | −₹225 | −₹271 | −₹508 |
| 14:00 | −₹112 | −₹169 | −₹161 | −₹317 | −₹173 |
| 14:30 | −₹101 | −₹122 | −₹163 | −₹216 | −₹372 |
| 15:00 | −₹86 | −₹82 | −₹164 | −₹375 | −₹420 |
Calls and puts
| ₹0.5–1 | ₹1–3 | ₹3–6 | ₹6–10 | ₹10–20 | |
|---|---|---|---|---|---|
| 13:30 | −₹95 | −₹104 | −₹124 | −₹193 | −₹196 |
| 14:00 | −₹111 | −₹138 | −₹142 | −₹116 | −₹161 |
| 14:30 | −₹94 | −₹108 | −₹68 | −₹183 | −₹89 |
| 15:00 | −₹91 | −₹101 | −₹124 | −₹226 | −₹353 |
Net per trade after costs, held to 15:15. Rows: entry time. Columns: option price at that time.
More expensive options win more often
There is a pattern. The more you pay, the more often the option wins: options under ₹1 made money 0.7% of the time, ₹1–3 options 3.3%, and ₹10–20 options 18.8%. But every price range still loses money overall. Across all 4,097 trades, the loss is −₹5,07,084.
| Option price | Trades | Made money | Net |
|---|---|---|---|
| ₹0.5–1 | 1,123 | 0.7% | −₹1,11,040 |
| ₹1–3 | 1,110 | 3.3% | −₹1,28,141 |
| ₹3–6 | 799 | 7.8% | −₹92,534 |
| ₹6–10 | 516 | 12.2% | −₹85,936 |
| ₹10–20 | 549 | 18.8% | −₹89,434 |
The heroes are real, and rare
The biggest winners in the whole grid are genuinely spectacular: an option bought at ₹2.25 and sold at ₹191.00, and moves of up to 99x. But look at the dates. 11 of the 12 biggest winners came on just three days: 16 May 2024, 12 September 2024, 22 February 2024. A handful of days in 3.5 years, and you cannot know in advance which expiry will be one of them. On every other expiry, you pay.
| Expiry day | At | Option | Bought | Sold | Peak | Net |
|---|---|---|---|---|---|---|
| 12 September 2024 | 13:30 | 25,050 call | ₹16.55 | ₹341.65 | 23x | ₹21,066 |
| 12 September 2024 | 13:30 | 25,100 call | ₹9.70 | ₹291.75 | 33x | ₹18,268 |
| 16 May 2024 | 13:30 | 22,150 call | ₹18.75 | ₹255.50 | 14x | ₹15,324 |
| 16 May 2024 | 14:00 | 22,150 call | ₹19.15 | ₹255.50 | 14x | ₹15,298 |
| 12 September 2024 | 13:30 | 25,150 call | ₹5.00 | ₹241.30 | 55x | ₹15,294 |
| 22 February 2024 | 13:30 | 22,000 call | ₹14.90 | ₹222.45 | 15x | ₹13,426 |
| 16 May 2024 | 14:00 | 22,200 call | ₹8.45 | ₹205.25 | 26x | ₹12,727 |
| 16 May 2024 | 14:30 | 22,200 call | ₹14.85 | ₹205.25 | 15x | ₹12,311 |
| 12 September 2024 | 13:30 | 25,200 call | ₹2.25 | ₹191.00 | 99x | ₹12,204 |
| 7 August 2025 | 13:30 | 24,400 call | ₹12.70 | ₹188.50 | 15x | ₹11,362 |
| 22 February 2024 | 13:30 | 22,050 call | ₹6.90 | ₹173.05 | 26x | ₹10,735 |
| 16 May 2024 | 14:00 | 22,250 call | ₹3.60 | ₹155.45 | 47x | ₹9,805 |
But it was in profit
Here is what surprised us. Most of these trades were in profit at some point. Of the 337 trades, 59% went up at least 25% after we bought them, 43% went up at least 50%, and 29% doubled. Only 2.7% were still in profit at 15:15. So the obvious question: why not just take that profit?
Book the profit
So we tested exactly that: sell as soon as the option is up by the target, and if it never gets there, hold to 15:15. With a 25% target, the target was hit on 59% of trades, and not one trade made money after costs.
| Book at | Target hit | Made money | Net |
|---|---|---|---|
| +25% | 59% | 0 | −₹33,364 |
| +50% | 43% | 71 | −₹37,438 |
| 2x | 29% | 97 | −₹40,141 |
| No target | – | 9 | −₹46,628 |
Here is why. A 25% gain on a ₹2 option is ₹0.50. On one lot, that is ₹32.50, and every trade pays ₹65 in costs. Even a 50% gain, ₹65 on one lot, only just covers them.
The 73% strategy
Book 25% on more expensive options, ₹10–20, and the picture changes completely: 73% of trades make money after costs. That is the kind of accuracy you see advertised. And the total is still a loss: −₹79,122 over 549 trades. The average win is ₹166; the average loss is −₹984. It takes many small wins to pay for one full loss, and the market does not give you enough of them.
So the next time you see a high win rate, ask one more question: how big are the wins, and how big are the losses?
Then trail it: 16 ways, all lost
Then a trailing stop should fix it: let the winners run, and protect the gains. We started the trail once the option was up 25%, 50%, 2x or 3x, and exited if it fell 25%, 33% or half from its peak, or back to our entry price. All 16 lost money. The best still lost −₹33,325.
| Start at | 25% off peak | 33% off peak | half off peak | back to entry |
|---|---|---|---|---|
| +25% | −₹33,325 | −₹34,366 | −₹39,091 | −₹37,902 |
| +50% | −₹37,620 | −₹38,559 | −₹41,595 | −₹44,307 |
| 2x | −₹41,289 | −₹42,464 | −₹45,118 | −₹48,357 |
| 3x | −₹49,034 | −₹49,793 | −₹51,111 | −₹44,535 |
Why trailing doesn't save it
- Most trades never get going. 57% never reach +50%. They still go to zero, and a trailing stop cannot help them.
- What the trail locks in is smaller than the costs. 50% of a ₹2 option is ₹1: ₹65 on one lot, exactly what the costs take.
- The trail cuts the real winners early. A 20x or 50x move does not go up in a straight line; it shakes, falls back, then runs, and the trail sells on the shake. Held to 15:15, 16 May 2024 made ₹6,692. 15 of our 16 trailing stops sold it for ₹471 or less, and that is exactly the trade hero zero depends on.
Targets and stops
What about a bigger target, 3x, 5x or 10x what you paid? All three did worse than simply holding to 15:15. A 50% stop-loss lost the least, −₹35,043, but it still lost.
| Exit | Made money | Net |
|---|---|---|
| Hold to 15:15 | 9 | −₹46,628 |
| Target 3x | 49 | −₹46,852 |
| Target 5x | 26 | −₹48,981 |
| Target 10x | 13 | −₹50,573 |
| 50% stop-loss | 6 | −₹35,043 |
A smarter entry?
Maybe buying blindly at 14:00 is too simple. What if you only buy when the option shows strength, for example when its price closes above its 12-candle moving average? We did not test that once. We tested 4,05,000 variations: moving-average crosses on the option's own price, new highs for the day, the option doubling from its low, Nifty breaking out or moving towards the strike, filters for trending, gap and quiet days, five start times, and ten ways to exit, including trailing stops.
45 entry signals × 5 price ranges × 12 day filters × 5 start times × 3 sides × 10 exits = 4,05,000
With that many variations, some will look amazing by luck alone. So we used the one test that separates luck from an edge: we chose the best rules using only 2023 and 2024, then tested them, unchanged, on 2025 and 2026, data they had never seen.
The moving-average idea
Buy the ₹1–3 option when it closes above its 12-candle average, from 14:00, and hold. In 2023–24 it made a small profit, ₹35 a trade. It looked promising. In 2025–26 it lost −₹121 a trade. We tested 1,600 versions of that idea on cheap options; not one made money in both periods.
The best ten
Then we took the ten best rules from 2023–24, out of all 4,05,000. Not one was a cheap option: all ten bought options costing ₹10–20. 97% of their 2023–24 profit came from the same three days. On the data they had never seen they averaged ₹47 a trade, close to zero, and 10 of 10 lost money in 2026.
| # | Option price | 2023–24 per trade | Share from 3 days | 2025–26 per trade | 2026 net |
|---|---|---|---|---|---|
| 1 | ₹10–20 | ₹1,493 | 98% | −₹91 | −₹1,664 |
| 2 | ₹10–20 | ₹1,437 | 98% | −₹92 | −₹1,778 |
| 3 | ₹10–20 | ₹1,346 | 86% | ₹120 | −₹1,632 |
| 4 | ₹10–20 | ₹1,300 | 84% | ₹119 | −₹5,356 |
| 5 | ₹10–20 | ₹1,258 | 100% | −₹17 | −₹318 |
| 6 | ₹10–20 | ₹1,246 | 84% | ₹150 | −₹2,984 |
| 7 | ₹10–20 | ₹1,216 | 115% | ₹179 | −₹7,270 |
| 8 | ₹10–20 | ₹1,215 | 120% | −₹380 | −₹2,512 |
| 9 | ₹10–20 | ₹1,201 | 104% | ₹136 | −₹2,412 |
| 10 | ₹10–20 | ₹1,170 | 88% | ₹346 | −₹2,070 |
No better than random
And for cheap options, one more check: we compared the clever entries against simply buying at a random moment, 200 times over. On data they had not seen, the clever entries lost −₹124 a trade; random entries lost −₹127 to −₹137. No better than random.
The StrikeATM Score
Finally, the same ten-question check we use for every strategy in our course: costs, slippage, concentration, sample size, every year, tested or fitted. Hero zero, as it is taught, scores 1.5 out of 10.
| Question | Result | What we found |
|---|---|---|
| Look-ahead bias | Pass | All 11,706 strike choices replayed with every candle after the decision removed: 11,706 identical, 0 changed. |
| Costs | Fail | Before costs, the average trade lost ₹73; each trade then pays ₹65 more in costs. |
| Slippage | n/a | Not scored: only 9 winning trades, too few to judge. |
| The curve | Fail | The worst drawdown was 31.0% of the capital. |
| Trade concentration | n/a | Not scored: there is no overall profit to check. |
| Calendar spread | n/a | Not scored: there is no overall profit to check. |
| Tested, or fitted? | Warning | Per trade: −₹40 in the first half of the data, −₹107 in the second. |
| Enough trades | Fail | t-statistic −5.59 on 337 trades: the loss is not bad luck. |
| Return per unit of wobble | Fail | Sharpe ratio −3.04. |
| Every year counts | Fail | No year made money: every calendar year lost, and the worst, 2025, lost ₹17,251. |
So, does hero zero work?
On 3.5 years of Nifty data, in our backtest: no. The heroes are real; 16 May 2024 was real. But they are rare, they come on a few days you cannot pick in advance, and everything in between costs more than they pay. Booking profits did not fix it. Trailing did not fix it. Smarter entries did not fix it. A strategy is only as good as the questions it survives, and this one does not survive the first few.
The same score, for the strategies we teach
For comparison, here are the option-selling strategies we build in the course, scored on the same card. They were tested on the same years, with higher costs than we gave hero zero: ₹160 a round trip against ₹65.
| Strategy | Score | Average month (backtest) | Sharpe | Worst drawdown | Capital |
|---|---|---|---|---|---|
| Foundation I | 8.5 | 4.2% | 2.1 | −14% | ₹4,40,000 |
| Foundation II | 8.5 | 4.3% | 2.5 | −13% | ₹4,40,000 |
| Steady I | 9 | 6.0% | 3.4 | −13% | ₹4,40,000 |
| Steady II | 9 | 6.6% | 3.6 | −13% | ₹4,40,000 |
| Steady III | 8.5 | 7.0% | 3.4 | −22% | ₹4,40,000 |
| Steady IV | 8.5 | 6.7% | 3.1 | −22% | ₹4,40,000 |
| Shield I | 8 | 8.8% | 3.2 | −21% | ₹3,00,000 |
| Shield II | 8.5 | 8.2% | 3.4 | −18% | ₹3,20,000 |
| Shield III | 9 | 7.5% | 3.4 | −14% | ₹3,50,000 |
| Shield IV | 8.5 | 6.9% | 3.4 | −15% | ₹3,80,000 |
| Sprint | 8 | 13.2% | 2.9 | −53% | ₹2,20,000 |
None scores ten, and the course shows where each one loses its points. These are backtest figures on historical data, not a promise of future returns; each has its own drawdown and needs its own capital.
Watch the full test
Frequently asked questions
Does the hero zero strategy work on Nifty?
Not in StrikeATM's backtest. StrikeATM tested hero zero, buying ₹1–3 out-of-the-money options at 14:05 on expiry day and holding to 15:15, on every Nifty expiry day from 19 January 2023 to 26 May 2026 (175 expiry days) with ₹65 costs per trade. 9 of 337 trades made money, and the strategy lost −₹46,628 on one lot. It lost in every year tested.
What is the hero zero option strategy?
Buying very cheap out-of-the-money options, often ₹1 to ₹3, late on expiry day, hoping one of them jumps to many times its price before the close. Most expire near zero; occasionally one becomes the "hero". StrikeATM's Backtest Lab tested whether the rare heroes pay for all the zeros.
Does booking profit or a trailing stop fix hero zero?
Not in StrikeATM's backtest. Booking a 25% profit on ₹1–3 options hit the target on 59% of trades, but none made money after costs, because a 25% gain on a ₹2 option is smaller than the costs. All 16 trailing-stop versions lost; the best lost −₹33,325.
Is buying more expensive options on expiry day better?
They win more often: in StrikeATM's backtest, ₹10–20 options made money 18.8% of the time against 3.3% for ₹1–3 options. But every price range lost overall, and booking 25% on ₹10–20 options won 73% of trades yet still lost −₹79,122.
Can a smarter entry, like a moving-average cross, make hero zero profitable?
StrikeATM tested 4,05,000 entry and exit variations, choosing the best on 2023–24 and testing them unchanged on 2025–26. For cheap options, the clever entries did no better than buying at a random moment on the data they had not seen, and none of 1,600 moving-average versions made money in both periods.
What data and costs did StrikeATM use?
Five-minute Nifty option and spot prices for every expiry day, 19 January 2023 to 26 May 2026, with ₹65 of costs on every trade (entry and exit together), deliberately lower than the ₹160 StrikeATM uses for its own course strategies, and no slippage added.
Where can I see the full hero zero results?
In StrikeATM's Backtest Lab, at strikeatm.com/backtest-lab, with every chart, table and test, and as a video on StrikeATM's YouTube channel.
How we tested
- Data: five-minute Nifty option and spot prices on every expiry day, 19 January 2023 to 26 May 2026, 175 expiry days.
- Rules: decision on the 14:00 candle's close; out-of-the-money call and put at ₹1–3, nearest the money; bought at the next open; sold at the 15:15 close; one lot each.
- Costs: ₹65 per trade, entry and exit together, on every trade; no slippage added. Both choices favour the strategy.
- No look-ahead: every strike choice was replayed with every candle after the decision removed; all of them matched.
- Out-of-sample: the smarter-entry search chose its rules on 2023–24 only and judged them, unchanged, on 2025–26.
Is there a strategy you want us to test next? Tell us in the comments on the video.
Not SEBI-registered. Educational content only. Backtest on historical data, 19 January 2023 to 26 May 2026. Past results, real or simulated, do not guarantee future results. Nothing here is a recommendation to buy or sell any security.