chore(config): apply autonomous research findings — EMA=10, zone=0.75, ATR+prefill enabled by default

Autonomous 9-phase parameter sweep (20k candles, XAUUSDm, SESSION=08-13):
- EMA=10 sharper trend filter: WR 62% vs 52%, PF 2.23 vs 1.39
- ENTRY_ZONE_PCT=0.75 deeper entry confirmation: DD -1116 vs -3064
- Combined EMA=10 + zone=0.75: PF 2.58, WR 67%, DD -1134 (best overall)
- MIN_FVG_ATR_RATIO=0.3 + MIN_IMPULSE_ATR_RATIO=1.0: quality filter
- SESSION_FROM_UTC=8 / SESSION_TO_UTC=13: confirmed optimal London window
- PRE_FILL_INVALIDATE=true: negligible effect but conceptually sound

Net improvement vs unfiltered: PF 1.39 → 2.58, DD -3064 → -1134 (63% reduction).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
romysaputrasihananda
2026-06-12 01:59:54 +07:00
parent 9157c0d4f6
commit af2dcb244c
+11 -10
View File
@@ -29,7 +29,7 @@ SLIPPAGE_POINTS=2
SPREAD_OVERRIDE=0
# ── EMA Trend Filter ─────────────────────────────────────────────────────────
EMA_PERIOD=20
EMA_PERIOD=10
# ── Backtest ─────────────────────────────────────────────────────────────────
BACKTEST_BALANCE=600
@@ -44,8 +44,8 @@ BACKTEST_CANDLES=50000
# ── Optimisations ─────────────────────────────────────────────────────────────
# Session filter: only take new entries when UTC hour in [FROM, TO).
# Leave empty to disable. Recommended: 8-13 (London) based on live data.
# SESSION_FROM_UTC=8
# SESSION_TO_UTC=13
SESSION_FROM_UTC=8
SESSION_TO_UTC=13
# Breakeven: move SL to entry once price moves this multiple of SL-distance.
# 0 = disabled, 1.0 = move at 1:1 RR
@@ -56,16 +56,17 @@ BACKTEST_CANDLES=50000
# DAILY_LOSS_LIMIT_PCT=0.03
# ATR quality filters (backtest + live): reject weak FVGs/impulses.
# Backtest shows ATR filter improves PF from 1.12 → 1.29 on XAUUSDm 20k candles.
# MIN_FVG_ATR_RATIO=0.3 # FVG zone must be >= 0.3× ATR(14)
# MIN_IMPULSE_ATR_RATIO=1.0 # Impulse candle body must be >= 1.0× ATR(14)
# Research (20k candles, XAUUSDm): with ATR filters alone PF improves vs no-filter baseline.
# Combined with EMA=10 + ENTRY_ZONE_PCT=0.75: PF 2.58, DD -1134 (vs PF 1.39, DD -3064 unfiltered).
MIN_FVG_ATR_RATIO=0.3 # FVG zone must be >= 0.3× ATR(14)
MIN_IMPULSE_ATR_RATIO=1.0 # Impulse candle body must be >= 1.0× ATR(14)
# Pre-fill invalidation: cancel pending FVG if price closes past impulse SL before fill.
# Combined with ATR filter: PF 1.32, lowest DD. Recommended.
# PRE_FILL_INVALIDATE=true
PRE_FILL_INVALIDATE=true
# Entry zone within FVG: 0.0 = zone edge (aggressive), 0.5 = midpoint (default), 1.0 = far edge (conservative).
# ENTRY_ZONE_PCT=0.5
# Entry zone within FVG: 0.0 = zone edge (aggressive), 0.5 = midpoint, 1.0 = far edge (conservative).
# Research: 0.75 gives best PF/DD balance (waits deeper into zone for better confirmation).
ENTRY_ZONE_PCT=0.75
# ── Telegram Notifications ───────────────────────────────────────────────────
# Get token from @BotFather, chat_id from @userinfobot or Telegram API.