TradeTech Analytics

NSE Nifty 500 cash equities · long only · daily bars · risk-sized · v1.0.0 · closed 2026-10-25

Tidewater NO EDGE

RSI(14) long reversal after a 50-day stretch below 50, Nifty 500 stocks, ₹10 lakh, 25% drawdown limit. Fixed owner rules, risk-sized at 1% per trade with a drawdown brake. Development 2015 to 2023: net +5.0% a year against +12.4% for the Nifty 500, max drawdown 22.4%, alpha t 0.5; validation: -3.3%. Random entries with the same exits did as well or better. Pre-registered pass rule failed.

Verdict

No edge: failed the pre-registered rule

Net CAGR +5.0% in development (647 trades, win rate 56%, average +0.10R), -3.3% in validation; alpha versus the Nifty 500 +1.4% a year (t 0.5) and negative at 2x costs. Random entries with identical exits earned a median +5.5%.

  • Honest run count: three runs were needed. Run 1 deadlocked (the 'no new entries at 15% drawdown' rule could never end), run 2 re-armed the pause immediately and contradicted its own written text, run 3 is the final result. All three logs are in the repository (research/rsi50/run*.log); the fixes are Amendments 1 and 2 in STRATEGY_RSI50.md and were logic corrections, but the 'no drawdown brake' sensitivity was known before run 2, so the result is not fully blind.
  • Failed conditions: after the 4% allowance the 2x-cost CAGR is -2.0% (development) and -9.6% (validation); alpha not positive (t 0.5); positive years in development 44% (need 60%); development CAGR below the random-entry null's 90th percentile (+8.2%). Max drawdown stayed under 25% at base costs (22.4% and 17.5%) but reached 25.4% at 2x costs.
  • Where the money came from: 2020 (+43.6%) and 2017 and 2021 (+15%, +14%) carried it; 2015, 2016, 2018 and 2022 lost. The profit exits work as designed (target 1.5R +1.46R on average, the SMA+2 sd exit +0.75R) but the stop is hit in about 40% of trades at -1.04R, and the gross edge is the market's drift, not the RSI signal.
  • The drawdown limit is respected only by the brake: without it development drawdown is 30.6%; the brake reduces participation and, after the early drawdown of 2015 and 2016, most of the recovery.
  • Owner rules read as follows (fixed in advance): below 50 for more than 50 calendar days up to the day before the cross; stop = lowest low of the last 50 sessions; target 1.5 x (fill minus stop); RSI cross above 75 and a close above SMA50 + 2 sd exit at the next open. Sizing, position caps and the drawdown brake are our additions.

Promotion gates

No gates published for this strategy.

Explain the strategy

We bought stocks that had been weak for over seven weeks and just turned up, with a safety stop and three ways to take profit. Over nine years it lost money while the market gained about 12% a year, and picking stocks at random with the same rules did better.

Report

Development and validation at 1x, 2x and 3x costs, with the random-entry null

PeriodCostsNet CAGRAfter 4% allowanceMax drawdownSharpeTradesWin rateAvg R per tradeAlpha vs Nifty 500 (t)BetaNifty 500 CAGR
Development 2015-20231x (base)+5.0%+1.0%22.4%0.5764756%0.1+1.4% (0.5)0.3+12.4%
Development 2015-20232x+2.0%-2.0%25.4%0.2863055%0.03-1.1% (-0.4)0.27+12.4%
Development 2015-20233x-1.1%-5.1%36.4%-0.162254%-0.04-4.0% (-1.7)0.24+12.4%
Validation 2024-01 to 2025-091x (base)-3.3%-7.3%17.5%-0.2216050%-0.04-8.1% (-1.2)0.52+9.4%
Validation 2024-01 to 2025-092x-5.6%-9.6%18.3%-0.4415950%-0.09-10.5% (-1.5)0.51+9.4%
Validation 2024-01 to 2025-093x-14.4%-18.4%26.8%-1.4614339%-0.31-19.5% (-2.9)0.4+9.4%
Development 2015-2023random-entry null (30 seeds)median +5.5%, 90th pct +8.2%
Validation 2024-01 to 2025-09random-entry null (30 seeds)median -6.4%, 90th pct -1.9%

Rules and parameters

Rules

  1. Universe: Nifty 500 members on each date, ADV at least ₹5 crore, 120 sessions of history (MFS-15 point-in-time store, 2014 to 2025-09-30). The sealed period from 2025-10-01 was never loaded.
  2. Signal on day t: Wilder RSI(14) crosses from below 50 to at least 50 after being below 50 on every session of a run longer than 50 calendar days. Buy at the open of t+1; skip if the open is at or below the stop.
  3. Stop: lowest low of the 50 sessions ending at t (stop first when stop and target share a bar). Initial risk R must be 1% to 20% of the fill.
  4. Exits: stop; target at +1.5R (limit fill); RSI crossing above 75 then exit next open; close above SMA50 + 2 standard deviations then exit next open.
  5. Sizing: 1% of equity at risk per trade, at most 10% of equity and 2% of traded value per position, at most 15 positions, cash funded. Brake: risk halved at 10% drawdown, 20-session entry pause at 15%, flatten and 40-session halt at 22%. Costs: MFS-15 delivery schedule plus tiered slippage 0.05% to 0.20% per fill.

Parameters

capital
₹10,00,000
periods
development 2015-2023; validation 2024-01 to 2025-09; sealed 2025-10+ unopened
pre-registration
research/rsi50/STRATEGY_RSI50.md (+2 amendments)
costs
MFS-15 delivery charges + tiered slippage; 2x and 3x stress
null
30 random-entry runs with the same exits and sizing

Instrument

Nifty 500 stocks (point-in-time membership, ADV at least ₹5 crore), delivery, whole shares · capital ₹1,000,000

Known limitations

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.