2 comments

[ 3.5 ms ] story [ 6.6 ms ] thread
This catches the loud version of the bug well, a signal thats suspiciously correlated with the same row return should stop you cold. The one Id want it to also catch is quieter: a feature thats honestly time aligned row by row but built with a lookback window that happens to include data not actually available yet, like a rolling stat computed through the close when your signal fires before the close. That one doesnt show up as a same row correlation spike, it just makes the backtest look smoother than live trading ever will. Curious whether the holdout stability check here is meant to catch that case too, since a subtly leaky feature can still pass a train and holdout split if the leakage is present in both halves.