From b013183f678fbfd2d704c2cb7d78d005d7bbad79 Mon Sep 17 00:00:00 2001 From: Simon Moisy Date: Tue, 27 May 2025 18:08:42 +0800 Subject: [PATCH] attempt fix for lookahead bias --- cycles/strategies/default_strategy.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cycles/strategies/default_strategy.py b/cycles/strategies/default_strategy.py index 78b1c35..2ef4a8f 100644 --- a/cycles/strategies/default_strategy.py +++ b/cycles/strategies/default_strategy.py @@ -123,12 +123,12 @@ class DefaultStrategy(StrategyBase): if not self.initialized: return StrategySignal("HOLD", 0.0) - if df_index < 1: + if df_index < 2: # shifting one index to prevent lookahead bias return StrategySignal("HOLD", 0.0) # Check for meta-trend entry condition - prev_trend = backtester.strategies["meta_trend"][df_index - 1] - curr_trend = backtester.strategies["meta_trend"][df_index] + prev_trend = backtester.strategies["meta_trend"][df_index - 2] + curr_trend = backtester.strategies["meta_trend"][df_index - 1] if prev_trend != 1 and curr_trend == 1: # Strong confidence when all indicators align for entry