Home
Strategies/ifvg_dol/ifvg_dol_mnq_prac

ifvg_dol_mnq_prac

ifvg_dol · MNQ · GLOBEX
Cell
Symbol
Engine-side symbol (e.g. MNQ, MGC).
Contract root
Topstep contract root for live runners.
Session
RTH / PM / ASIA / RTH_15m / GLOBEX.
Notes
Free text. Surfaces in /strategies + audit ledger.
Sizing
Contracts
1..10. Drives engine quantity per fill.
Size mode
fixed / risk_based / atr_scaled.
Max daily loss (USD)
Soft daily cap inside the engine (not Topstep's).
Risk
Panic flatten on disconnect
Always true. Every entry needs an SL by fill-time (engine-level invariant).
true
No overnight
Close any open position before session end.
Max concurrent positions
Almost always 1.
session
Timeframe
Signal-detection resolution. Fills are ALWAYS stepped on the underlying 1-minute bars (no coarse-bar fills), so non-1m results stay execution-honest. 1m is the validated edge; other timeframes are research-grade (not Ironclad-validated).
timeframe · enum
Session timezone
Session windows evaluated in Oslo local time (matches docx spec).
timezone · enum
Entry window open (Oslo)
No new entries before this Oslo hour. London open = 09:00.
entry_window_start · time
Entry window close (Oslo)
No new entries after this Oslo hour. NY close = 22:00.
entry_window_end · time
Max hold (minutes)
Time-stop: force-flat after this many minutes regardless of outcome.
max_hold_min · integer · min 1 · max 1440
Max entries / day
Hard daily entry cap (Oslo calendar day). Load-bearing: caps daily DD.
max_signals_per_day · integer · min 1 · max 20
entry
FVG min gap (pts)
Ignore FVGs narrower than this (filters micro-gaps).
fvg_min_gap_pts · decimal · min 0
Inversion window (bars)
An FVG must invert within this many 1m bars of forming. Wider = more signals, shorter = tighter recency gate.
invert_window_bars · integer · min 1 · max 500
Sweep lookback (bars)
Swept pool must have been swept within this many bars of the inversion bar. Prevents matching stale sweeps.
sweep_lookback_bars · integer · min 1 · max 240
Pool quality
major = PDH/PDL + session H/L + 4H/1H swings only (drop EQH/EQL). Load-bearing: all-pools kills the edge.
pool_quality · enum
Entry mode
retest_ce = resting limit at the iFVG 50% (consequent encroachment). Only validated mode.
entry_mode · enum
Fill-through (ticks)
Require price to trade THROUGH the limit by this many ticks before counting a fill. Conservative live-fill model.
fill_through_ticks · decimal · min 0
exit
Stop mode
wick = stop just beyond the swept pool's wick extreme (structural, load-bearing). gap = stop just beyond the iFVG edge (tighter but more noise).
stop_mode · enum
Stop buffer (pts)
Add this many points beyond the wick/gap for stop placement.
sl_buffer_pts · decimal · min 0
Min stop (pts)
Setups with a risk < this are rejected (too tight to be real).
min_stop_pts · decimal · min 0
Max risk (pts)
Setups wider than this are rejected. 18 pts = $36/ct on MNQ; keeps 9ct under the $2k Combine DD gate (qstack+risk18 model).
max_risk_pts · decimal · min 0
Target mode
dol = nearest opposing liquidity pool (draw-on-liquidity, validated). 1r/1.5r/2r = fixed R-multiple.
target_mode · enum
Target floor (R)
Minimum DOL target in R. Skip if nearest pool is closer.
tgt_min_r · decimal · min 0 · max 10
Target cap (R)
Cap an over-far DOL pool at this R-multiple to avoid unreachable targets.
tgt_cap_r · decimal · min 0 · max 20
instrument
Tick size
tick_size · decimal · min 0
Point value ($)
point_value · decimal · min 0
Commission / contract ($)
commission_per_contract · decimal · min 0
filters
Skip entries around HIGH-impact news
When on, the backtest harness refuses NEW entries inside the window around any HIGH-impact macro event (NFP, FOMC, CPI). Open positions are NOT touched — stops and exits still fire.
skip_around_high_impact_news · boolean
News block: minutes before event
Default 5 matches trade_guard.EVENT_SKIP_WINDOW_MIN.
news_block_before_min · integer · min 0 · max 120
News block: minutes after event
Default 15 matches trade_guard.EVENT_CAUTION_WINDOW_MIN.
news_block_after_min · integer · min 0 · max 240
Dry-run window
Preview runs against the saved cell. Save first to test edits.
Strategy
Liquidity-pool sweep -> FVG inversion -> limit entry at the 50% consequent encroachment -> stop beyond the swept wick -> target at the nearest opposing liquidity pool (Draw-on-Liquidity). High-win-rate mean-reversion on MNQ London+NY.
Edge thesis
A liquidity pool is swept (BSL/SSL), the FVG that powered the sweep inverts back through its origin — the iFVG is the institutional order block. Entering at the 50% CE on a resting limit (not market) gives a structural stop and a DOL target reachable within the session.
Risk notes
Stop = wick of the swept pool + sl_buffer_pts; capped at max_risk_pts (18 pts = $36/ct). Target = nearest opposing pool, min 0.5R, max 4.0R. Sim-fill on CFD proxy; live broker fill rate is UNVALIDATED (liqsweep_simfill rule applies). PRAC dry-run is the gate before any Combine wire-up.
Path
/home/mats/MWM-AI/projects/mwm-trading/platform/mwmt_platform/cells/ifvg_dol_mnq_prac.yaml
Saving runs schema + PARAM_SPEC validation, then atomic write. Every save (accepted or rejected) hits the audit log. API base: http://127.0.0.1:7654.