What actually causes the backtest vs live gap?
In our experience the gap is rarely the strategy. It is universe eligibility, fill assumptions and data timing. A backtest that assumes every candidate can be bought ignores concurrent-position capacity and sell queues; matching those live constraints in simulation closed a 25x gap for us. What differences have you measured between your backtests and live runs?