# Trading configuration TOTAL_CASH=100000 MARKET_TYPE=spot # spot or swap # Risk control # Safety floors — violations mean the strategy is unsafe, log as 'discard' MAX_DRAWDOWN_LIMIT=-20 # max drawdown must stay above this % (e.g. -20 means no worse than -20%) MAX_LEVERAGE_LIMIT=5.0 # hard limit: train.py raises an error if MAX_LEVERAGE exceeds this # Profit optimization targets # Layer 1 — statistical validity (checked first; failing means all other metrics are unreliable) MIN_NUM_TRADES=30 # minimum number of trades (sample size) MIN_EXPOSURE_PCT=5.0 # minimum % of time the strategy holds a position # Layer 2 — risk-adjusted return (the institutional standard) MIN_SHARPE_RATIO=1.0 # annualised return / volatility (comparable across any backtest period) MIN_CALMAR_RATIO=1.0 # annualised return / max drawdown (reward per unit of worst-case risk) # Data source EXCHANGE_ID=binance SYMBOL=BTC/USDT START_DATE=2023-01-01 END_DATE= # leave blank for up to today # Optional crypto data config CRYPTO_CACHE_DIR=./data CRYPTO_FETCH_MAX_RETRIES= # Optional network config CRYPTO_HTTP_PROXY= # Optional exchange credentials CRYPTO_API_KEY= CRYPTO_API_SECRET= CRYPTO_API_PASSWORD=