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.

30 lines
1.3 KiB
YAML

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# ORB v62 Sweep — Stop distance fix for compound_returns=True
#
# Problem: v61 uses atr_stop_multiplier=0.01 → stop≈$0.02 per trade
# 5bps slippage on $50 stock = $0.025/side → slippage > stop → unrealistic
# With compound_returns=True over 1,000 days: 1.027^1000 ≈ 3.8 trillion%
#
# Fix: Find realistic atr_stop_multiplier where stop >> slippage
# Benchmark: 5bps × 2 sides × $50 = $0.05 total slippage
# Typical ATR for mid-large cap: ~$1.50$2.50
# multiplier=0.05 → stop≈$0.09 (1.8× above total slippage — marginal)
# multiplier=0.10 → stop≈$0.18 (3.6× buffer)
# multiplier=0.20 → stop≈$0.36 (7× buffer)
# multiplier=0.30 → stop≈$0.54 (10× buffer) ← practical minimum
# multiplier=0.50 → stop≈$0.90 (18× buffer)
#
# compound_returns=True is fixed across all 5 combinations.
# 5 × 1 = 5 combinations
#
# Run: python -m apps.intraday_bt.run --config configs/intraday/strategies/orb_v61_trail01.yaml \
# --sweep configs/intraday/sweep_orb_v62_stop.yaml --start 2022-01-01
base_config: configs/intraday/strategies/orb_v61_trail01.yaml
sweep:
# Realistic stop distances: stop must exceed 2-way slippage ($0.05)
atr_stop_multiplier: [0.05, 0.10, 0.20, 0.30, 0.50]
# Force compound returns (this is what caused the 3.8T% result with v61's 0.01)
compound_returns: [true]