Make backtest optional and improve error handling for subscription limitations
This commit is contained in:
1 parent
65514ade82
commit
7238b3988c
1 file changed
+12
-9
+12
-9
@@ -520,7 +520,7 @@ def advanced_backtest_strategy():
|
|||||||
end=end_date.strftime('%Y-%m-%d')).df
|
end=end_date.strftime('%Y-%m-%d')).df
|
||||||
if len(bars) < 100:
|
if len(bars) < 100:
|
||||||
logger.warning("⚠️ Insufficient data for backtest")
|
logger.warning("⚠️ Insufficient data for backtest")
|
||||||
return True
|
return
|
||||||
|
|
||||||
closes = bars['close']
|
closes = bars['close']
|
||||||
highs = bars['high']
|
highs = bars['high']
|
||||||
@@ -698,11 +698,12 @@ def advanced_backtest_strategy():
|
|||||||
if profit_factor < 1.3:
|
if profit_factor < 1.3:
|
||||||
logger.warning("⚠️ Profit factor < 1.3")
|
logger.warning("⚠️ Profit factor < 1.3")
|
||||||
|
|
||||||
return True
|
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.warning(f"⚠️ Backtest failed: {e}")
|
error_msg = str(e).lower()
|
||||||
return True
|
if 'subscription' in error_msg or 'permit' in error_msg:
|
||||||
|
logger.warning(f"⚠️ Backtest unavailable: Your subscription doesn't permit historical data access")
|
||||||
|
else:
|
||||||
|
logger.warning(f"⚠️ Backtest failed: {e}")
|
||||||
|
|
||||||
def advanced_signal_generator(symbol):
|
def advanced_signal_generator(symbol):
|
||||||
# Advanced signal generation with ALL filters
|
# Advanced signal generation with ALL filters
|
||||||
@@ -1368,10 +1369,12 @@ def main():
|
|||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
# Run backtest once at startup
|
# Run backtest once at startup (optional - continues if it fails)
|
||||||
if not advanced_backtest_strategy():
|
try:
|
||||||
logger.error("❌ Backtest failed. Exiting...")
|
advanced_backtest_strategy()
|
||||||
return
|
except Exception as e:
|
||||||
|
logger.warning(f"⚠️ Backtest skipped: {e}")
|
||||||
|
logger.info(f"ℹ️ Continuing without backtest - this is optional")
|
||||||
|
|
||||||
# Track daily state
|
# Track daily state
|
||||||
last_reset_date = None
|
last_reset_date = None
|
||||||
|
|||||||
Reference in new issue
Block a user