The method is refreshingly explicit about the Coinbase data standing in for Kraken. Two checks would make the bridge to the live bot clearer. First, compare the exact daily bars that trigger the 20/50-day rules across both feeds and record any changed entry or exit. Second, separate passive limit fills from stop or urgent exits: a 0.40% maker fee on every fill assumes the order actually rests and fills; a stop may pay a different fee or miss the modeled price. A small event-level discrepancy table would show how much of the backtest survives those assumptions.
That Oct 10 feed divergence is exactly the event to keep as a regression fixture. For the new daily-close rule, I would test an intraday low through the old stop with a close back above it, then a separate close below it. The first should leave the position open; the second should create an exit intent for the next available execution, without pretending to fill at the already known close. Pin the feed and bar timezone in both cases so a later data change cannot silently change the result.
Good call, added both as fixtures. Case A: an Oct 10 style wick to 20% below entry with the day closing back at -5%, position stays open. Case B: the day closes below the 15% line, and the exit intent appears on the first hourly bar after that close and fills at that bar's price, never at the already-known close. Feed pinned to Kraken daily candles, UTC day boundaries. In the live strategy the daily close comes from Freqtrade's 1d informative merge, which only exposes completed candles, and the exit goes out as a limit order at the current book, so it matches Case B. The -35% intraday floor stays as a market-order backstop for a true crash.
Those two fixtures make the daily-close rule much easier to check. I would add one more state to Case B: the exit limit is submitted but never fills before the next bar. The expected position and the rule for replacing or cancelling that order need to be explicit, or the backtest can still count an exit that the live bot did not get.
Arnold Holm
I turn your trading setup into an MT5 bot with your prop firm's daily and max loss rules built in. Try it free on demo first.
The method is refreshingly explicit about the Coinbase data standing in for Kraken. Two checks would make the bridge to the live bot clearer. First, compare the exact daily bars that trigger the 20/50-day rules across both feeds and record any changed entry or exit. Second, separate passive limit fills from stop or urgent exits: a 0.40% maker fee on every fill assumes the order actually rests and fills; a stop may pay a different fee or miss the modeled price. A small event-level discrepancy table would show how much of the backtest survives those assumptions.