Skip to content
Archive
← r/algotrading
1
100%
u/ekalyvio 2 days ago Education

Drawdown wants to kill my strategy.

Hi, the bellow is the equity curve on a $125 fixed bet for a 30-min ORB on GER40 (09:00-09:30 Frankfurt time) with a couple of filters. https://preview.redd.it/io6eirw8kjuh1.png… As you see there are some periods of heavy drawdowns and mostly in duration. This situation kills the whole strategy and I don't think this could be a playable strategy even though it seems giving some good profit. How do you handle such situations? I have lost days of sleep trying to find out which is the reason of these drawdown periods (perhaps some kind of market event or something) but I don't think I can find anything.
21 comments held Reddit says 0 on reddit ↗
  1. u/karan_rjpt 2 2 days ago
    I think the key here is to distinguish between a strategy that is unprofitable and one that has long periods of stagnation or drawdown. Have you tried analyzing the strategy's performance across different market regimes and measuring its maximum drawdown, recovery time, and risk-adjusted returns separately? For an ORB strategy, volatility regimes and changing market structure could be contributing factors. Rather than trying to identify a specific news event, I'd test whether the drawdowns correlate with measurable conditions, such as opening-range size, ATR, or trend strength. Also, have you tested whether reducing position size during extended drawdowns improves the overall risk profile without sacrificing too much return? The biggest concern isn't necessarily the drawdown itself, but whether the strategy's edge is still statistically valid during those periods.
  2. u/Embarrassed-Ad-7032 6 2 days ago
    two checks before you decide it's the strategy and not luck. shuffle the order of your closed trades a few thousand times and look at the longest underwater stretch in each shuffle. if your real curve sits inside that spread, the long flat patches are just what a strategy with this win rate and payoff does, and you size for the 95th percentile one instead of hunting for a market event. if the real one is well outside it, trades are clustered by regime and that's worth splitting by volatility. also run the same ORB with random-direction entries and the same stops and costs. if the random version has similar drawdown periods, the drawdown is the stop structure and the filters are doing the earning. general information, not personal advice.
  3. u/ShaznayNordgauer74 1 1 day ago
    yeah the shuffle test alone would answer like 80% of OPs question tbh
  4. u/Outrageous_Band9708 2 2 days ago
    before anything. ask claude fable or opus55 to do an alpha beta decompisation on your strat its highlylikely most of your strat is beta, which might explain your dd
  5. u/Alive-Imagination521 1 2 days ago
    Try ATR based stops/tp
  6. u/greenmatrix86 1 2 days ago
    The stagnation-duration chart is honestly the more useful one to stare at here, more than the dollar drawdown itself — a long flat/underwater stretch is usually what actually breaks people psychologically, not the raw dollar number. Ran into a similar thing myself: one strategy had a real, multi-week losing streak that looked alarming in isolation, and tracing it back, it turned out to be a genuine sector-wide correction the strategy's regime filter was blind to, not randomness and not a bug. Worth checking whether your drawdown windows line up with a broader regime shift (trending vs. choppy/ranging conditions) rather than hunting for a single news event — a recurring pattern like what your stagnation chart shows (resetting every couple years) smells more like a cyclical regime effect than a one-off cause, and that's a testable thing rather than something you have to intuit. On handling it once you've confirmed it's real and not a bug: position sizing is the lever that actually worked for me, not abandoning the strategy. Capped position size specifically to trade away some of the best-case upside in exchange for a meaningfully better worst-case drawdown on a different strategy — same edge, smaller swings, much easier to actually sit through live. One honest caveat: my direct experience is US equities, not GER40/index CFDs, so I can't speak to anything instrument-specific. But worth flagging regardless, since it's the same failure mode in spirit: I've also run an opening-range-breakout strategy that looked clean in a plain backtest and only showed its real fragility once realistic execution costs were applied — worth double-checking your $125 fixed-bet backtest isn't quietly assuming better fills than a 30-min ORB entry would actually get in practice, since that's a separate way a strategy can look better on paper than it behaves live.
  7. u/artemiusgreat 1 2 days ago
    Variable drawdown means that you don't have risk management. If limiting your drawdown kills the strategy, you don't have a strategy, it's just buy and hold with extra steps. MAE must be pretty bad.
  8. u/a18618 1 2 days ago
    Fixed $125 through multi-month flat stretches is the part that would bother me most, honestly. I had an ORB variant that looked exactly like this — great in trending years, then it just bled costs for 18 months straight. What finally helped me was checking whether the drawdowns clustered in low-vol regimes; if they do, a regime filter does more for the stagnation than any sizing tweak.
  9. u/[deleted] 1 2 days ago

    [removed] — already gone when the archive first saw it

  10. u/moobicool 1 2 days ago
    Just use LLM and tell : Do Oracle feature engineering find why its sitting under water and find how to solve this, try different values, grid grid search. And LLM will find the solution from the answer. At least you can find why its sitting under water.
  11. u/Feriman22 1 2 days ago
    First check whether the drawdowns cluster in specific market regimes. That's one reason I built my own rule-based system around regime detection in the first place. If the bad periods consistently line up with the same conditions, that's much more useful than hunting for one specific news event.
  12. u/One-Next 2 2 days ago
    you need more than one system to hedge drawdowns. what's the skew of this equity curve?
  13. u/ekalyvio OP 1 1 day ago
    Yes, I am already in that process. I just hope we didn't have such drawdowns in a lot of systems... The skewness is a positive like most of the ORB strategies. Metric                                                      , Observations, AdjustedSampleSkewness Daily weekday balance returns (zero-trade weekdays retained),         2806,    2.2950995781028656 Daily calendar balance returns (zero-trade dates retained)  ,         3928,    2.7736123436740465 Per-trade cash PnL                                          ,         1481,    1.6948073280748661 Per-trade initial-stop price R                              ,         1481,    1.7809708484108229 Active-close-day cash PnL                                   ,         1356,    1.4560545233706759 Weekly cash PnL                                             ,          562,    0.7516086339027098 Monthly cash PnL                                            ,          130,    0.28209534550715004 Daily closed-balance levels                                 ,         3928,    0.3186747699444437 Median: -$46.82 Mean: $12.68
  14. u/Aggravating-You1668 2 2 days ago
    Looks like you’re looking at a classic scenario where a high‑win‑rate, low‑payout ORB just runs out of luck in the wrong regime. Before relearning your strategy just test the three suspects you already have: 1) shuffle the trade bag a lot and see if your #max‑underwater is still larger than the 95th‑percentile from the shuffle – that tells you if the runs are just random streaks. 2) Pull a volatility‑zone filter on the opening‑range width or the 20‑period ATR – skip low‑VR days unless you add a directional bias. 3) Re‑price your back‑test with realistic slippage and commission for a 30‑min GER40 CFD – I’ve seen the paper edge wipe out once you let the cost suck. If the drawdowns keep clustering in the same regime, add a regime‑based sizing or a stop based on, say, 1‑ATR; if not, try a dynamic bet‑size tied to the 95th‑percentile of the Monte‑Carlo run lengths. No one says you have to abandon the system – just adjust the risk orchestration so you can stomach a few bad streaks.
  15. u/ekalyvio OP 1 1 day ago
    Well, actually the win-rate is around 40-45% with higher-payouts giving it advantage (as most ORB setups where you are searching for the fat-tail). 1) This is probably the next step. 2) The balance above is based already on days where I apply some volatility filter. I actually look the opening width to the median of the last 20 days and compare it to the historical relative volatiliy. If the condition is not favorable I halve the size even though I have seen that skipping it produces much better results. It definitely improves the results quite a lot but the drawdown still remains the same. The period sucks... :( 3) I have done that, I even add a $9 extra cost per lot even though the historical data I use have already wide spread compared to my provider. The most worry I have is that the more filters I add is like saying to me 'Welcome to the jungle... of over-fitting!'.
  16. u/[deleted] 1 2 days ago

    [removed] — already gone when the archive first saw it

  17. u/[deleted] 1 2 days ago

    [removed] — already gone when the archive first saw it

  18. u/Backrus 1 2 days ago
    You can't fix unprofitable start.
  19. u/[deleted] 1 1 day ago

    [removed] — already gone when the archive first saw it

  20. u/[deleted] 0 1 day ago

    [removed] — already gone when the archive first saw it

  21. u/Maleficent-Success-6 2 1 day ago
    I'd be careful about adding new filters specifically to eliminate those historical drawdown periods. It's tempting to identify what those periods had in common, build a regime filter around them and watch the equity curve improve. But that can easily become another form of overfitting. One thing I'd measure separately is time underwater, not just maximum drawdown. I'd also compare the observed recovery durations against block-bootstrap simulations that preserve some of the clustering between trades, rather than only reshuffling individual trades. Then I'd freeze any proposed risk rule and see how it behaves on genuinely new data. It may turn out that the strategy has a positive edge but an unacceptable recovery time for the capital you're willing to allocate. That's a risk-budget decision, not necessarily a signal problem.