Verdict
No edge at 1% a day, at any capital from ₹1 lakh to ₹10 lakh
2,880 development configurations (8 exit rules × 3 score cut-offs × 3 ADX × 2 day-stops × 4 risk settings × 5 capitals): fewer than 1% have profit factor above 1, none reaches PF 1.1. Frozen validation: ₹1 lakh -0.036%/day, ₹5 lakh +0.038%/day, ₹10 lakh +0.052% a day against a 1% target.
- Target read as 1% of capital net per trading day after Dhan costs at 1x (stated in the pre-registration, research/nifopt2/STRATEGY_NIFOPT2.md). 1% a day is roughly 250% a year.
- Model: LightGBM predicts whether a long CE/PE trade (delta about 0.55, entry at the next-minute ask) nets a profit under one of 8 stop/target/time exit rules; walk-forward, quarterly refit, embargo, from 2022-07. Out-of-sample AUC is 0.53 to 0.54 on the net-profit label; the top score decile wins about 42% to 44% against 38% for all candidates, which is not enough to cover spread, STT and brokerage.
- Entry requires: score above a threshold, trend agreement (EMA9>21, close>EMA50 in trade direction), optional ADX, spread ≤1.5%, inside 09:30 to 14:30; sizing by 0.5% to 2% risk to the stop, premium outlay ≤40% of equity, up to 30 lots; halts at −2% day, 3 losses, +1.5% day (option), −5% week.
- Validation (2024-01 to 2025-09, run once on the configuration frozen on development): net positive at ₹2 to 10 lakh (+0.02% to +0.05% a day) but day-bootstrap intervals include zero at every capital, drawdown is 27% to 39% (gate 12%), and at 2x cost the result is zero or negative. At ₹1 lakh it is negative (−0.04% a day).
- It does beat random entries with the same rules (the random-entry null loses heavily because of costs), so the score carries a little timing information; it is just far smaller than the cost of trading.
- Reality check across all 2,880 development configurations: p = 0.99. A first build with a rolling-strike bug showed +25% a day and was discarded (disclosed in the pre-registration, section 7).
- Capital: larger capital reduces the fixed brokerage share and allows more lots, but did not change the verdict; above about 10 lots the depth assumption of the bar-fill model weakens.
Promotion gates
No gates published for this strategy.
Explain the strategy
A computer model picked moments to buy Nifty options. It was slightly better than random but nowhere near enough to pay costs and earn 1% a day.
Report
Frozen configurations by capital, development grid summary, reality check
| section | item | dev | val_1x | val_2x | val_3x | controls |
|---|---|---|---|---|---|---|
| 1 Frozen config by capital (selected on development, validation run once) | ₹1 lakh · stop 10% target 25% time 20m · score t90 · ADX≥25 · daily gain stop True · risk 2.0% | 327 trades +0.008%/day PF 1.01 | 403 trades ₹-15,352 = -0.036%/day PF 0.94 maxDD 34% | -0.095%/day | -0.108%/day | bootstrap 95% ₹-76,373 to ₹47,339; random-entry null median ₹-58,492 |
| 1 Frozen config by capital (selected on development, validation run once) | ₹2 lakh · stop 10% target 25% time 20m · score t90 · ADX≥25 · daily gain stop True · risk 2.0% | 313 trades +0.032%/day PF 1.05 | 414 trades ₹20,730 = +0.024%/day PF 1.03 maxDD 28% | -0.057%/day | -0.097%/day | bootstrap 95% ₹-117,803 to ₹164,274; random-entry null median ₹-125,698 |
| 1 Frozen config by capital (selected on development, validation run once) | ₹3 lakh · stop 10% target 25% time 20m · score t90 · ADX≥25 · daily gain stop True · risk 2.0% | 309 trades +0.050%/day PF 1.07 | 418 trades ₹26,033 = +0.020%/day PF 1.03 maxDD 31% | -0.003%/day | -0.079%/day | bootstrap 95% ₹-197,160 to ₹251,042; random-entry null median ₹-190,006 |
| 1 Frozen config by capital (selected on development, validation run once) | ₹5 lakh · stop 10% target 25% time 20m · score t90 · ADX≥25 · daily gain stop True · risk 2.0% | 304 trades +0.056%/day PF 1.08 | 407 trades ₹82,622 = +0.038%/day PF 1.05 maxDD 30% | +0.008%/day | -0.044%/day | bootstrap 95% ₹-299,810 to ₹473,900; random-entry null median ₹-297,722 |
| 1 Frozen config by capital (selected on development, validation run once) | ₹10 lakh · stop 10% target 25% time 20m · score t90 · ADX≥0 · daily gain stop True · risk 2.0% | 463 trades +0.056%/day PF 1.07 | 586 trades ₹224,129 = +0.052%/day PF 1.05 maxDD 39% | -0.033%/day | -0.080%/day | bootstrap 95% ₹-649,301 to ₹1,091,021; random-entry null median ₹-622,568 |
| 2 Development grid summary | ₹1 lakh · 576 configs | best +0.008%/day; share with PF>1: 1.2% | median -0.141%/day | |||
| 2 Development grid summary | ₹2 lakh · 576 configs | best +0.032%/day; share with PF>1: 0.2% | median -0.153%/day | |||
| 2 Development grid summary | ₹3 lakh · 576 configs | best +0.050%/day; share with PF>1: 0.9% | median -0.155%/day | |||
| 2 Development grid summary | ₹5 lakh · 576 configs | best +0.056%/day; share with PF>1: 0.9% | median -0.148%/day | |||
| 2 Development grid summary | ₹10 lakh · 576 configs | best +0.056%/day; share with PF>1: 1.4% | median -0.143%/day | |||
| 3 Reality check | 2880 development configurations | max t 1.13; positive share 1.0% | p = 0.99 |
Rules and parameters
Rules
- Candidates on every closed 5-minute bar 09:30 to 14:30, CE and PE, strike with |delta| nearest 0.55
- Enter only if ML score ≥ threshold AND trend agrees AND ADX ≥ filter AND spread ≤1.5%
- Exit: stop 10 or 15%, target 15 or 25%, time 20 or 40 minutes, square-off 15:15
- Lots by risk to the stop (0.5% to 2% of equity), outlay ≤40%, ≤30 lots
- Halts: −2% day, 3 losses in a row, optional +1.5% day, −5% week
Parameters
- capital
- ₹1, 2, 3, 5, 10 lakh
- periods
- development 2022-07 to 2023-12 (out-of-sample scores), validation 2024-01 to 2025-09, sealed 2025-10 onward never opened
- costs
- Dhan-style brokerage ₹20, STT 0.0625% to 0.15%, exchange, SEBI, GST, stamp (estimates) at 1x; stress 2x and 3x; bar-fill spread
- data
- Dhan expired options ATM±10, 1-minute, 968 sessions used
- pre-registration
- research/nifopt2/STRATEGY_NIFOPT2.md
- code
- research/nifopt2/ (build, model, strat, run_grid, final)
Instrument
Nifty weekly options (long CE/PE), delta about 0.55, risk-sized lots · capital ₹100,000
Known limitations
- Bar-fill model from 1-minute option bars: no true bid/ask or depth
- Fees are estimates; Dhan brokerage assumed ₹20 per order
- Volume ratio and VIX change are proxies
- Weekly options on expiry days are included (dte 0)
- Above 10 lots market impact is not modelled
- Sealed period untouched
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.