Verdict
No edge at 30% / 15%: the target is not reachable with option selling in this data
Non-intraday: 17,280 variants, none reaches 30% a year (best within a 15% drawdown cap 19%); intraday: 1,296 variants, 1% profitable in development. 3 of 6 pre-registered conditions passed.
- What was tested (pre-registered, STRATEGY_OPTSELL.md): short strangles, iron condors (100 and 200-point wings) and trend credit spreads on weekly and monthly expiries, with entry timing, strike distance (0.75 to 1.5 expected moves from VIX), profit targets, stops, a close-before-expiry option and six entry filters (VIX percentile, VIX minus realised volatility, VIX level, recent move), sized by risk and margin at 3%, 5% or 8%. Real end-of-day prices for every strike from NSE (Dec 2020 to Oct 2026, 1,456 sessions), settlement at the official index value, Anand Rathi brokerage assumed ₹50 per lot per order (unconfirmed), STT (0.15% from April 2026), exchange, SEBI, GST and stamp charges, and 0.5% slippage per fill (stressed at 2x and 3x). Development, validation and a sealed final 20%.
- The best an option seller could do inside the drawdown cap was 19% a year in development and 26% in validation, by different variants; 5 variants earned 10% or more in both periods with drawdown under 15%, and none reached 15%. The 30% target needs roughly 2.5 times the leverage the best robust variants use, which pushes the calm-period drawdown to roughly 20 to 25% before any crash.
- The finalist (selected on development only: short strangle at 1.5 expected moves, entered 4 days before the weekly expiry, 2x stop, entry only when VIX is above realised volatility) earned 10.3% with a 1.9% drawdown (t 5.1, 137 trades) and then -1.2% with a 10.6% drawdown in validation. At 2x costs: 7.8% and -3.3%; at 3x: 5.1% and -5.8%.
- It is not better than chance timing: random entry days with the same structure earned a median 9.2% in development (90th percentile 12.0%) against the finalist's 10.3%. The reality check across all variants is borderline (p = 0.05): the selling premium itself is real in development, but the timing and filters add nothing, and the premium weakened in validation (a ₹76,000 loss on 7 April 2025 and a net loss through 2025).
- Crash risk is the real constraint. On the 2019-02 to 2020-11 window, which was not used for selection, plain weekly short strangles lost 11% to 24% a year with drawdowns of 30% to 45%: between 20 February and 30 April 2020 they lost ₹3.1 to 4.3 lakh on ₹10 lakh, ₹2.8 to 3.2 lakh on 12 March 2020 alone. Hedged structures lose less in a crash (the 200-point iron condor lost 15% a year with a 25% drawdown on that window) but do not pay in normal times: iron condors lost in the scored periods (100-point wings: -10.3% a year in development), because the long wings cost more than the extra edge. Keeping the drawdown under 15% through a March-2020-type move would limit position size to roughly 40% of what the calm-period results used (their crash drawdown was 30 to 39%), which scales the return to about 4 to 6% a year (our estimate by scaling, not a separate back-test).
- Intraday (1,296 variants on 1-minute data): only 1% of variants were profitable in development and 9% in validation; the median iron condor variant lost about 85% of capital a year; the best variant earned 4.1% with a 5.9% drawdown and nothing in validation. 90 to 96% of trades include a model-priced leg (the strikes sit outside the observed ATM ±2 window), which weakens but does not reverse the conclusion, consistent with earlier intraday studies (Cinder, the fused scalp's selling side, MGTS).
- Limits: income tax is not deducted; end-of-day stops cannot see intraday excursions (this flatters stop variants); margin is approximated (12% of notional for naked strangles); Anand Rathi's brokerage is an assumption; March 2020 is a stress check, not part of the scored periods; sealed period (from 2025-08-19) unopened. Nothing is paper-traded because no variant passed.
Promotion gates
No gates published for this strategy.
Explain the strategy
Selling options earns small amounts most weeks and loses a lot rarely. We tried every sensible way to do it on the Nifty. The best safe versions earned about 10% a year, not 30%; the versions that could earn more would have lost a third of the account in the March 2020 crash.
Report
Finalist, top 10, baselines, 2020 stress window and intraday summary
| Section | Variant | Dev annual | Dev drawdown | Dev trades | Val annual | Val drawdown | Val trades | Note |
|---|---|---|---|---|---|---|---|---|
| N: finalist (selected on development only) | ST short strangle, m=1.5, weekly entry 4 days before expiry, 2x credit stop, filter VIX minus realised vol > 0, risk 8% | 10.3% | 1.9% | 137 | -1.2% | 10.6% | 56 | |
| N: finalist cost stress | same, 2x costs and slippage | 7.8% | 2.0% | 137 | -3.3% | 12.2% | 56 | |
| N: finalist cost stress | same, 3x costs and slippage | 5.1% | 2.6% | 137 | -5.8% | 13.9% | 56 | |
| N: top 10 on development (Calmar) | ST m=1.5 W4 tp=None sl=2.0 close-1d=0 F2 risk 8% | 10.3% | 1.9% | 137 | -1.2% | 10.6% | 56 | |
| N: top 10 on development (Calmar) | ST m=1.5 W4 tp=None sl=2.0 close-1d=0 F2 risk 5% | 10.0% | 1.9% | 137 | -2.0% | 10.7% | 56 | |
| N: top 10 on development (Calmar) | ST m=1.5 W4 tp=None sl=2.0 close-1d=0 F2 risk 3% | 9.2% | 1.9% | 137 | -2.3% | 9.9% | 56 | |
| N: top 10 on development (Calmar) | ST m=1.25 W4 tp=None sl=2.0 close-1d=0 F2 risk 8% | 13.5% | 3.2% | 137 | -2.6% | 13.9% | 56 | |
| N: top 10 on development (Calmar) | ST m=1.25 W4 tp=None sl=2.0 close-1d=0 F2 risk 5% | 12.9% | 3.2% | 137 | -4.0% | 14.2% | 56 | |
| N: top 10 on development (Calmar) | ST m=1.25 W4 tp=None sl=2.0 close-1d=0 F2 risk 3% | 10.8% | 3.3% | 137 | -3.4% | 12.1% | 56 | |
| N: top 10 on development (Calmar) | ST m=1.0 W4 tp=None sl=2.0 close-1d=0 F2 risk 8% | 17.1% | 5.4% | 137 | -6.1% | 16.9% | 56 | |
| N: top 10 on development (Calmar) | ST m=1.5 W2 tp=None sl=3.0 close-1d=0 F2 risk 5% | 8.8% | 2.8% | 139 | 6.4% | 2.2% | 61 | |
| N: top 10 on development (Calmar) | ST m=1.5 W2 tp=None sl=2.0 close-1d=0 F2 risk 5% | 8.8% | 2.8% | 139 | 6.4% | 2.2% | 61 | |
| N: top 10 on development (Calmar) | ST m=1.5 W2 tp=None sl=2.0 close-1d=0 F2 risk 8% | 8.8% | 2.8% | 139 | 5.4% | 3.1% | 61 | |
| N: unconditional baselines (no filter, hold to expiry, weekly, m=1.0, risk 5%) | Short strangle | 13.0% | 11.9% | 157 | 7.3% | 8.8% | 76 | |
| N: unconditional baselines (no filter, hold to expiry, weekly, m=1.0, risk 5%) | Iron condor 100-point wings | -10.3% | 32.6% | 157 | -21.9% | 39.6% | 75 | |
| N: unconditional baselines (no filter, hold to expiry, weekly, m=1.0, risk 5%) | Iron condor 200-point wings | -1.4% | 14.9% | 157 | -9.1% | 23.1% | 75 | |
| N: unconditional baselines (no filter, hold to expiry, weekly, m=1.0, risk 5%) | Trend credit spread | 3.5% | 7.3% | 157 | -12.0% | 22.5% | 75 | |
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | ST m1.5 W4 tpNone sl2.0 ed0 F2 r0.08 | 3.6% | 7.8% | 58 | Feb 20 to Apr 30 2020 P&L Rs -6,646; worst day Rs -85,313 on 2020-09-24 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | ST m1.5 W4 tpNone sl2.0 ed0 F2 r0.08 | 3.6% | 7.8% | 58 | Feb 20 to Apr 30 2020 P&L Rs -6,646; worst day Rs -85,313 on 2020-09-24 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | ST m1.5 W4 tpNone sl2.0 ed0 F2 r0.05 | 2.3% | 7.9% | 58 | Feb 20 to Apr 30 2020 P&L Rs -24,243; worst day Rs -85,313 on 2020-09-24 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | ST m1.5 W4 tpNone sl2.0 ed0 F2 r0.03 | 2.3% | 7.9% | 58 | Feb 20 to Apr 30 2020 P&L Rs -17,635; worst day Rs -85,313 on 2020-09-24 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | ST m1.25 W4 tpNone sl2.0 ed0 F2 r0.08 | -13.7% | 32.2% | 59 | Feb 20 to Apr 30 2020 P&L Rs -337,830; worst day Rs -302,212 on 2020-03-12 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | ST m1.25 W4 tpNone sl2.0 ed0 F2 r0.05 | -10.5% | 26.9% | 59 | Feb 20 to Apr 30 2020 P&L Rs -281,113; worst day Rs -241,770 on 2020-03-12 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | ST m1.25 W4 tpNone sl2.0 ed0 F2 r0.03 | -4.3% | 15.8% | 59 | Feb 20 to Apr 30 2020 P&L Rs -160,022; worst day Rs -120,885 on 2020-03-12 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | ST m1.0 W4 tpNone sl2.0 ed0 F2 r0.08 | -19.4% | 37.8% | 58 | Feb 20 to Apr 30 2020 P&L Rs -406,727; worst day Rs -316,706 on 2020-03-12 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | ST m1.5 W2 tpNone sl3.0 ed0 F2 r0.05 | 13.2% | 1.5% | 55 | Feb 20 to Apr 30 2020 P&L Rs 25,254; worst day Rs -14,569 on 2020-09-24 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | ST m1.5 W2 tpNone sl2.0 ed0 F2 r0.05 | 13.2% | 1.5% | 55 | Feb 20 to Apr 30 2020 P&L Rs 25,254; worst day Rs -14,569 on 2020-09-24 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | ST m1.5 W2 tpNone sl2.0 ed0 F2 r0.08 | 13.8% | 1.5% | 55 | Feb 20 to Apr 30 2020 P&L Rs 35,934; worst day Rs -14,569 on 2020-09-24 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | ST m1.0 W4 tpNone slNone ed0 F0 r0.05 | -24.4% | 44.9% | 75 | Feb 20 to Apr 30 2020 P&L Rs -450,876; worst day Rs -190,024 on 2020-03-12 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | CS m1.0 W4 tpNone slNone ed0 F0 r0.05 | 0.7% | 10.2% | 73 | Feb 20 to Apr 30 2020 P&L Rs -13,899; worst day Rs -44,977 on 2020-04-30 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | IC200 m1.0 W4 tpNone slNone ed0 F0 r0.05 | -15.2% | 24.6% | 65 | Feb 20 to Apr 30 2020 P&L Rs -162,152; worst day Rs -35,883 on 2020-09-24 | |||
| N: stress window 2019-02 to 2020-11 (incl. March 2020), nothing re-selected | ST m1.0 W4 tpNone slNone ed0 F0 r0.08 | -36.2% | 58.3% | 75 | Feb 20 to Apr 30 2020 P&L Rs -618,000; worst day Rs -316,706 on 2020-03-12 | |||
| I: intraday top 5 on development | ST m=1.0 entry 920 sl=1.0 tp=0.3 F7 risk 3% | 4.1% | 5.9% | 530 | -0.1% | 9.7% | 246 | |
| I: intraday top 5 on development | ST m=1.0 entry 920 sl=1.0 tp=0.3 F7 risk 5% | 2.8% | 7.1% | 530 | 1.7% | 10.6% | 246 | |
| I: intraday top 5 on development | ST m=1.0 entry 920 sl=1.0 tp=0.5 F6 risk 5% | 2.4% | 7.1% | 494 | 7.0% | 9.1% | 255 | |
| I: intraday top 5 on development | ST m=1.0 entry 920 sl=1.0 tp=0.3 F6 risk 5% | 2.2% | 7.9% | 494 | 3.8% | 8.1% | 255 | |
| I: intraday top 5 on development | ST m=1.0 entry 920 sl=1.0 tp=0.5 F6 risk 3% | 1.6% | 6.1% | 494 | 3.8% | 10.0% | 255 | |
| I: intraday median of all variants | Short strangle | -8.4% | 23.1% | 518 | -4.2% | 10.5% | 246 | |
| I: intraday median of all variants | Iron condor 100 | -88.0% | 99.6% | 239 | -97.3% | 98.9% | 142 | |
| I: intraday median of all variants | Iron condor 200 | -84.1% | 99.3% | 359 | -85.7% | 91.2% | 223 |
Rules and parameters
Rules
- Non-intraday: one position per expiry. Strikes at m expected moves (spot × VIX/100 × √(days/365)) from spot, m 0.75 to 1.5; entry at the settlement price 2, 4 or 7 days before a weekly expiry (14 or 28 before monthly); filters use previous-session data only.
- Structures: short strangle; iron condor with 100 or 200-point wings; trend credit spread (put spread above the 50-day average, call spread below, 150-point wing).
- Exits: hold to the official expiry settlement, or close one session before; optional profit target (50% of credit) and stop (2x or 3x credit) on end-of-day marks.
- Sizing: lots so the worst assumed loss is at most 3%, 5% or 8% of equity, capped at 50% of equity in margin; drawdown measured on daily marked equity.
- Intraday: same structures sold at 09:20, 10:00 or 13:30 at 0.5 to 1.0 intraday expected moves, stop 30/50/100% of credit, target 30/50%, square-off 15:15.
Parameters
- capital
- ₹10 lakh assumed
- target
- 30% net annual, drawdown ≤ 15% (owner)
- periods
- development 2021-02 to 2024-02, validation to 2025-08, sealed 2025-08-19+ unopened; stress 2019-02 to 2020-11
- costs
- Anand Rathi ₹50/lot/order (unconfirmed), STT 0.10% (0.15% from 2026-04-01), exchange 0.03503%, SEBI, GST 18%, stamp; slippage 0.5% per fill
- pre-registration
- research/optsell/STRATEGY_OPTSELL.md
- code
- research/optsell/ (prep, simN, run_N, eval_N, run_early, simI, run_I)
Instrument
Nifty weekly/monthly option structures sized by risk and margin on ₹10 lakh · capital ₹1,000,000
Known limitations
- Daily-mark stops cannot see intraday excursions; this flatters stop variants.
- Margin and the worst-case loss used for sizing are approximations.
- Income tax on profits is not deducted.
- The 2019-2020 window was added after the main scoring and was used as an out-of-sample stress check only; nothing was re-selected on it.
- Intraday legs are mostly model-priced.
- Brokerage is an assumption.
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.