TQTradingQuery

Gaps · MNQ

How often does a gap up on MNQ get filled the same day

54.1%

fill rate

n=1462025-08-30 to 2026-09-06

fill rate

54.1%

num filled

79

num not filled

67

avg gap size points

170.15

Methodology

Computed by independently generating and running analysis code against real MNQ 1-minute bars from 2025-08-30 to 2026-09-06, 25 separate times in parallel, then taking the answer the largest group of independent attempts agreed on. The exact code is shown below.

Show the code

bars_et = to_et(bars)
rth = rth_session(bars_et)
rth = rth.copy()
rth['date'] = trading_date(rth)

daily = rth.groupby('date').agg(open=('open','first'), high=('high','max'), low=('low','min'), close=('close','last'))
daily = daily.sort_index()

prev_close = daily['close'].shift(1)
daily['prev_close'] = prev_close

# gap up: today's open above prior day's close
gap_up = daily[daily['open'] > daily['prev_close']].copy()

# filled same day if the low of the day trades back down to/through prev_close
gap_up['filled'] = gap_up['low'] <= gap_up['prev_close']

n = len(gap_up)
if n > 0:
    fill_rate = gap_up['filled'].mean()
    avg_gap_size = (gap_up['open'] - gap_up['prev_close']).mean()
else:
    fill_rate = None
    avg_gap_size = None

result = {
    'sample_size': int(n),
    'fill_rate': float(fill_rate) if fill_rate is not None else None,
    'num_filled': int(gap_up['filled'].sum()) if n > 0 else 0,
    'num_not_filled': int(n - gap_up['filled'].sum()) if n > 0 else 0,
    'avg_gap_size_points': float(avg_gap_size) if avg_gap_size is not None else None,
}
  • Generated and independently re-derived 25 times, then checked for logical consistency, before being shown to you -- the figures above are the answer the largest number of those independent attempts agreed on. Still a generated, one-off calculation, treat it as a rough, one-off analysis rather than a permanent fixture.

This is historical statistical information only. It is not investment advice, and past performance does not indicate future results. Trading involves risk of loss.