You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
1.3 KiB
YAML

# Morning Momentum Intraday Backtester — Default Configuration
# Strategy: Buy top N morning gainers at ENTRY time, sell at EXIT time or stop loss.
strategy:
entry_minutes_after_open: 30 # 9:30 + 30 = 10:00 AM ET
exit_minutes_before_close: 30 # 4:00 - 30 = 3:30 PM ET
stop_loss_pct: -0.02 # -2% stop loss (null to disable)
min_morning_gain_pct: 0.01 # stock must be up >= 1% to qualify
top_n: 3 # buy top 3 gainers
initial_capital: 10000 # $10,000 starting capital
slippage_bps: 5.0 # 0.05% per side (entry + exit)
universe:
source: sp500 # sp500 | nasdaq100 | midlarge | largecap | yaml | screener
sector_exclude: [] # e.g. ["Energy", "Utilities"]
min_price: 5.0 # filter out penny stocks
backtest:
start_date: null # null = auto (today - lookback_trading_days)
end_date: null # null = today
lookback_trading_days: 40 # ~2 months
pre_screen_threshold: 0.015 # phase 1 filter: opening gap vs prev_close >= 1.5%
cache:
enabled: true
dir: data/cache/intraday # Parquet files: {dir}/{TICKER}/{YYYY-MM-DD}.parquet
output:
dir: runs/intraday
verbose: false # true = show per-day table during run