mirror of
https://github.com/RomySaputraSihananda/ares.git
synced 2026-07-27 18:47:53 +00:00
2c02589521
Backtest validation (50k candles, XAUUSDm M5, RISK=5%, SESSION=08-13): v1.3.0 (no filter) : +174.7% PF=1.17 DD=-5482 trades=224 v1.4-prev (EMA=10+z=0.75) : +227.7% PF=2.19 DD=-1965 trades=55 v1.4 hybrid-C (EMA=20+z=0.75+ATR): +448.7% PF=2.08 DD=-2669 trades=83 EMA=20 captures more valid setups in trending markets (+83 vs 55 trades) while zone=0.75 + ATR filter maintain quality (WR 62.7%, PF 2.08). $5000 → $27,439 over 50k M5 candles (~8 months). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
77 lines
3.9 KiB
Bash
77 lines
3.9 KiB
Bash
# MT5 bridge URL (required)
|
||
MT5_BASE_URL=http://localhost:8080
|
||
|
||
# ── Symbol & Timeframe ──────────────────────────────────────────────────────
|
||
# Single pair:
|
||
SYMBOL=XAUUSDm
|
||
# Multi pair (comma-sep, overrides SYMBOL):
|
||
# SYMBOLS=XAUUSDm,XAGUSDm
|
||
TIMEFRAME=M5
|
||
|
||
# ── Risk ─────────────────────────────────────────────────────────────────────
|
||
RISK_PCT=0.01
|
||
|
||
# ── Momentum Candle Thresholds ───────────────────────────────────────────────
|
||
BODY_PCT_MIN=0.5
|
||
CLOSE_PCT_MIN=0.8
|
||
|
||
# ── FVG Setup ────────────────────────────────────────────────────────────────
|
||
FVG_EXPIRY_CANDLES=10
|
||
MIN_FVG_PIPS=1
|
||
MIN_SL_PIPS=5
|
||
SL_BUFFER=0
|
||
MIN_RR=1.5
|
||
# TIMEOUT_CANDLES=0
|
||
|
||
# ── Friction ─────────────────────────────────────────────────────────────────
|
||
COMMISSION_PER_LOT=7
|
||
SLIPPAGE_POINTS=2
|
||
SPREAD_OVERRIDE=0
|
||
|
||
# ── EMA Trend Filter ─────────────────────────────────────────────────────────
|
||
EMA_PERIOD=20
|
||
|
||
# ── Backtest ─────────────────────────────────────────────────────────────────
|
||
BACKTEST_BALANCE=600
|
||
BACKTEST_CANDLES=50000
|
||
# DATE_FROM=2025-01-01
|
||
# DATE_TO=2025-12-31
|
||
|
||
# ── Live Trading ─────────────────────────────────────────────────────────────
|
||
# LIVE=true
|
||
# LIVE_POLL_SECS=30
|
||
|
||
# ── 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
|
||
|
||
# Breakeven: move SL to entry once price moves this multiple of SL-distance.
|
||
# 0 = disabled, 1.0 = move at 1:1 RR
|
||
# BREAKEVEN_AT_RR=1.0
|
||
|
||
# Daily loss limit: halt new entries if today's closed PnL < -(balance × pct).
|
||
# 0 = disabled, 0.03 = stop after -3% day
|
||
# DAILY_LOSS_LIMIT_PCT=0.03
|
||
|
||
# ATR quality filters (backtest + live): reject weak FVGs/impulses.
|
||
# 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.
|
||
PRE_FILL_INVALIDATE=true
|
||
|
||
# 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.
|
||
# All three are optional — omit to disable notifications.
|
||
# TELEGRAM_BOT_TOKEN=123456:ABC-xxxx
|
||
# TELEGRAM_CHAT_ID=-100xxxxxxxxxx
|
||
# TELEGRAM_THREAD_ID=123 # forum topic/thread ID (optional)
|