Skip to main content
All posts
Blog

How Often a Second Entry Actually Appears: Six Years of ES and MES, Measured

A mechanical second entry appears 1.83 times per regular session on MES, and 11% of sessions have none at all. Measured across 128,693 five-minute bars from 2020 to 2026, with the definition and the script stated in full.

Wizdough9 min read

Every explanation of second entries, including ours, shows you examples. Nobody publishes the count. That leaves the most practical question about the setup unanswered: if you sit down tomorrow and watch one market, how many of these should you expect to see?

So we counted. What follows is measured from six and a half years of ES and MES bars, with the definition written out precisely enough that you can disagree with it, and the script that produced every number saved alongside the post.

What was measured

Where the numbers come from, in enough detail that you can check them:

Instruments   MES and ES, NinjaTrader's merged continuous series ("##-##")
Source        NinjaTrader 8's own local historical database on our machine
Bar data      1-minute bars, resampled to 5-minute. NOT tick data: this
              database holds no ES or MES tick history at all
Range         MES  2020-01-02 .. 2026-08-13   1,650 sessions, 128,693 bars
              ES   2020-01-02 .. 2026-04-09   1,563 sessions, 121,907 bars
Session       Regular hours only, 09:30 to 16:00 ET, DST handled
Excluded      Sessions holding fewer than 60 of the 78 possible 5-minute
              bars: holidays, early closes, and days the database is short of

The two instruments end on different days because that is where our local data ends. Anywhere the two are compared directly, the comparison runs on the 1,563 sessions they share.

The definition

A second entry is normally taught by eye. To count it, it has to be mechanical, so here is the rule in full, with no discretion anywhere in it.

Working on the long side, and mirrored exactly for shorts:

  1. A pullback opens on the first bar whose high is not above the previous bar's high. The high of that previous bar is the leg high.
  2. While the pullback is open, any bar whose high goes above the previous bar's high increments the count. The first is the first entry, the second is the second entry. After an increment, the count can only increment again once another bar has failed to make a higher high.
  3. The pullback closes and the count resets to zero on the first bar whose high goes above the leg high.
  4. Trend context comes from a 20-period EMA of the closes of the same session. A long signal requires the bar before it to have closed above that EMA; a short signal requires below.
  5. The entry order is a stop one tick beyond the signal bar's extreme. One tick is 0.25 index points on both contracts.

The EMA and the count both restart at each session's open, so nothing carries across days.

This is not WiSE's logic. WiSE applies bar quality, risk and structure filters on top of a count like this one, and it marks fewer signals than the raw definition above. What is measured here is the generic setup as commonly taught, which is the right baseline to judge any implementation of it against, including ours.

How often it appears

On MES across 1,650 regular sessions, the rule produced 3,020 second entries: 1,752 long and 1,268 short.

per session   mean 1.83   median 2   10th/90th pct 0 / 3   max 6
sessions with at least one    1,466 of 1,650   88.8%
sessions with none              184 of 1,650   11.2%

Two things fall out of that immediately. The setup is not frequent. Slightly under two a day on one instrument, and roughly one session in nine offers nothing at all. Anyone planning to fill a trading day with second entries on a single market is planning around a number that does not exist.

The long/short split is 58/42. That is a bull-market sample, not a property of the setup.

When in the session

Counted by the half hour the signal bar opens in, per session:

09:30   0.05     12:30   0.14     15:00   0.11
10:00   0.21     13:00   0.12     15:30   0.08
10:30   0.23     13:30   0.11
11:00   0.21     14:00   0.12
11:30   0.19     14:30   0.11
12:00   0.15

Almost half of them, 48.7%, arrive before noon, and the 10:00 to 11:30 stretch alone carries 35.8%. The last two hours hold 22.6% between them.

One honest caveat on the first block. The count and the EMA both restart at 09:30, so the opening bars are structurally unable to produce a second entry; that 0.05 is partly an artifact of the reset rather than a fact about the open. Every other block is clean.

First entry, second entry, third entry

The same run, counting all three, gives the setup something to be compared against:

                  signals   per session   triggered   bar height
first entry         9,563       5.80         52.4%     22 ticks
second entry        3,020       1.83         53.0%     20 ticks
third entry         1,642       1.00         51.7%     20 ticks

"Triggered" means the next bar traded through the stop price, so the order would have filled. It says nothing about what happened afterwards.

The control matters more than any of those rows. Across all 127,043 bar pairs in the sample, ignoring the count entirely, the next bar traded a tick above the current bar's high 47.4% of the time and a tick below its low 44.9% of the time. Matching each side against its own baseline, long second entries filled 53.1% against 47.4%, and short ones 52.8% against 44.9%. So a counted signal does get filled more often than an arbitrary bar, by six points on the long side and eight on the short, and the second entry is the highest of the three counts. That gap is real and it is also a good deal smaller than the way this setup usually gets talked about.

How big the bar is

Signal bar height, which is what sets the distance to a stop under the bar and therefore the size of the position:

25th pct 13 ticks   median 20   75th pct 31   90th pct 45

A median of 20 ticks is 5.00 index points. That is $25 of distance per contract on MES and $250 on ES, before you add any buffer. It is the single most useful number here for anyone deciding which of the two contracts to learn the setup on.

How far price travelled afterwards

For the signals that triggered, measured from the stop price over the following hour, in ticks:

with the signal    25th 11   median 26   75th 50   90th 85
against it         25th 14   median 26   75th 49   90th 84

Those two rows are almost identical, and that is the most useful finding in the whole exercise. The raw travel after a second entry is close to symmetric. The signal marks a location where the market has already failed once and is trying again; it does not, on its own, do anything to the distribution of what comes next. Everything separating a good outcome from a bad one at that location is the part traders like to skip: which pullbacks you take, where the stop goes, and when you get out.

Nothing here is a result. There is no exit rule, no commission, no slippage, and no fill modelling of any kind. It is raw price travel.

ES against MES

On the 1,563 sessions the two share:

MES   2,859 second entries   1.83 per session   triggered 53.1%
ES    2,826 second entries   1.81 per session   triggered 53.1%

A 1.2% difference in count and none at all in trigger rate. On time-based bars the micro and the full-size contract offer the same setup at the same rate, which is worth knowing if you are sizing down for risk reasons and worried about giving something up.

That result does not carry over to tick charts, where the two genuinely do diverge, because a tick chart counts trades and the two contracts do not print the same number of them. That is a separate problem with its own answer in MES tick chart settings.

How sensitive is this to the context rule?

The trend filter is the one place a reasonable person would choose differently, so we ran it both ways. Swapping the 20-period EMA for a 50-period one raises MES from 1.83 second entries per session to 2.32, a 27% increase, and moves the trigger rate from 53.0% to 53.5%.

So the frequency is sensitive to the context rule and the trigger rate essentially is not. Every number above uses the 20-period rule. We are not averaging the two.

Reproducing it

The script is second_entry_stats.py, and it decodes NinjaTrader's .ncd files directly from the local database rather than going through an export, so there is no intermediate file to get wrong. Its docstring carries the full definition, including the two things it deliberately does not do: it applies no rollover filter, because every number is computed inside a single session and a splice between two sessions cannot reach across; and it excludes short sessions only.

If you want it, ask through the contact page and we will send it over with the raw output.

What to do with this

If you trade second entries, the count is the planning number. Under two a day on one instrument means the setup cannot be your whole session, and it means the discipline problem is the opposite of the one most people prepare for. You are not filtering a flood. You are waiting, and the risk is taking something else while you wait.

Watching two or three markets is the usual answer, and that is where marking them by hand stops working, because the count has to be maintained continuously on every chart and it resets on a bar you were not looking at. WiSE keeps the count and marks the signals as they form, with its own filters applied on top of the raw definition used here. If you want to see the setup explained rather than counted, the second entry guide walks through it, and there is a 7-day free trial.

Futures trading involves substantial risk of loss and is not appropriate for all investors. The figures above are measured frequencies and distributions from historical data, not trading results. They involve no exit rule, no costs and no fill assumptions. Hypothetical or simulated results have inherent limitations: unlike an actual performance record, they do not represent actual trading, and because the trades have not been executed the results may have under- or over-compensated for the impact of market factors such as lack of liquidity. Past performance is not necessarily indicative of future results.

Share
Mentioned in this post

WiSE

Master the Art of Identifying Second Entries. $25/mo · 7-day free trial.

View product