Strasmore Research
Deep Dives · Matt ConnorBy Matt Connor ·

Probability of Touch vs Probability ITM

Probability of touch is roughly double the probability of expiring ITM. Here is why, with a seeded random walk argument and real SPY data to check it.

Probability of touch and probability ITM measure two different things about the same option. Probability ITM is about the finish: where the underlying settles on expiration day. Probability of touch is about the journey: whether the underlying ever trades at the strike at any point before expiration. For an out-of-the-money strike, touch runs at roughly twice ITM, and that gap is the most under-appreciated number in short-premium trading.

Probability of touch vs probability ITM, side by side

Take a stock trading at $100 and a call struck at $105 with a month to run. Probability ITM asks one question at one moment: on expiration day, does the stock close above $105? Probability of touch asks the same question of every print in between: does the stock trade at $105 even once? A path that runs to $106 in week two and settles back at $99 is a touch and not an ITM finish.

Two things follow from the definitions alone. Touch can never be smaller than ITM, since every path that finishes above the strike had to cross it on the way. And touch is the number that governs everything that happens before expiration: an alert, a roll, a stop order, an assignment scare on a short call. ITM governs the settlement itself, which is the subject of what happens if an option expires in the money.

Why is probability of touch about double probability ITM?

The short answer is a mirror argument, known in probability as the reflection principle. Picture the underlying as a driftless random walk: it moves up and down with constant volatility, watched continuously, with no built-in tendency either way.

Take any path that touches the strike before expiration and then comes back to finish below it. From the moment of first touch, flip every later move. Up becomes down, down becomes up. Under a symmetric driftless model, that mirrored path is exactly as likely as the original, and it finishes as far above the strike as the original finished below. Every touch-and-return path pairs one for one with a touch-and-stay path. The paths that finish in the money are the touch-and-stay half, which puts touch at about twice ITM.

Four assumptions carry that result, and none of them holds exactly:

  • Zero drift. Equity indexes have drifted upward over long samples, which pulls upside touch and upside finish rates away from the symmetric case.
  • Constant volatility. Real volatility clusters, and calm stretches sit next to violent ones. How the number is estimated in the first place is covered in how implied volatility is calculated.
  • Continuous monitoring. A touch only counts if someone is watching. A level pierced between sessions is not a touch on the regular-hours tape.
  • One fixed strike. Rolls, adjustments, and early assignment on American-style contracts all move the level being watched.

The doubling rule is a rule of thumb with a proof behind it: close for near-the-money strikes, looser as the strike moves out.

What price history says about touch versus finish

The rule is testable without any model at all. The panel below walks every SPY session since 2011, draws a level 1%, 2%, 3%, and 5% above that day's close, then looks forward 21 sessions, roughly a calendar month. It records two things: whether any session high in that month reached the level (a touch), and whether the close at the end of the month landed at or above it (the finish).

QuerySPY: touched versus finished above, 21-session forward windows since 2011
The exact SQL behind every number
WITH
    bars AS (
        SELECT
            date,
            any(toFloat64(close)) AS c,
            max(toFloat64(high))  AS h
        FROM global_markets.stocks_daily_aggs
        WHERE ticker = 'SPY'
          AND date >= '2011-01-01'
          AND date <  '2026-07-01'
        GROUP BY date
    ),
    fwd AS (
        SELECT
            c AS spot,
            max(h) OVER (ORDER BY date ROWS BETWEEN 1 FOLLOWING AND 21 FOLLOWING)      AS fwd_max_high,
            leadInFrame(c, 21) OVER (ORDER BY date ROWS BETWEEN CURRENT ROW AND 21 FOLLOWING) AS close_fwd_21
        FROM bars
    ),
    trials AS (
        SELECT
            arrayJoin([1, 2, 3, 5])     AS pct_away,
            spot * (1 + pct_away / 100) AS level,
            fwd_max_high >= level       AS touched,
            close_fwd_21 >= level       AS finished_above
        FROM fwd
        WHERE close_fwd_21 > 0
    )
SELECT
    concat(toString(pct_away), '% above spot')   AS strike_distance,
    round(100 * avg(touched), 1)                 AS touch_pct,
    round(100 * avg(finished_above), 1)          AS finish_above_pct,
    round(avg(touched) / avg(finished_above), 2) AS touch_to_finish_ratio,
    count()                                      AS windows
FROM trials
GROUP BY pct_away
ORDER BY pct_away
Run this yourself

Over 3874 monthly windows, a level 1% above spot was touched 83.8% of the time and finished above only 56.7% of the time, a ratio of 1.48. At the far end of the curve, 5% above spot, touch ran 19.6% against a finish rate of 12.3%, a ratio of 1.6. The ratio sits near two across the whole curve, which is where the mirror argument puts it, on fifteen years of tape and no model at all.

Is delta a good proxy for probability ITM?

Delta is the option's sensitivity to a $1 move in the underlying, and it doubles as a rough estimate of the chance the contract finishes in the money. A 25-delta call gains about $0.25 per $1 move in the stock, and it carries roughly a 25% chance of expiring above its strike. The estimate is not exact: delta is computed under the same driftless, constant-volatility assumptions, and true ITM probability sits a little under delta for calls. Our option delta explainer walks through the mechanics.

Take delta as the ITM estimate and the doubling rule hands you a touch estimate for free. The panel below buckets six months of SPY contract-days with 20 to 45 days to expiry by the size of delta, and puts the two figures next to each other.

QuerySPY option delta buckets, with the doubling rule applied (Jan to Jun 2026)
The exact SQL behind every number
WITH graded AS (
    SELECT
        toUInt16(round(100 * abs(delta) / 5) * 5) AS delta_bucket,
        abs(delta)                                AS abs_delta
    FROM global_markets.options_greeks
    WHERE underlying_symbol = 'SPY'
      AND date >= '2026-01-01'
      AND date <  '2026-07-01'
      AND iv_converged = 1
      AND volume > 0
      AND days_to_expiry BETWEEN 20 AND 45
      AND abs(delta) BETWEEN 0.05 AND 0.45
)
SELECT
    concat(toString(delta_bucket), ' delta') AS short_strike,
    round(100 * avg(abs_delta), 1)           AS approx_itm_pct,
    round(200 * avg(abs_delta), 1)           AS approx_touch_pct,
    count()                                  AS contract_days
FROM graded
GROUP BY delta_bucket
ORDER BY delta_bucket
Run this yourself

In the 25 delta bucket, the average size of delta across 5211 contract-days was 25%, and the doubling rule puts the chance of the underlying visiting that strike at some point during the contract's life at 49.9%. A strike that only finishes in the money about one time in four is close to a coin flip to be touched.

Why a stop at the short strike turns winners into losers

This is where the distinction stops being academic. A trader who sells a 25-delta call and places a stop order at the strike has built one position with two different exit tests. The option's payoff is settled by the finish, roughly a one-in-four event. The stop is settled by the touch, roughly a one-in-two event.

On those numbers the stop fires about half the time, and most of the trades it closes are the ones that touched and came back. Those are precisely the trades that would have expired worthless and kept the full premium. The stop converts a large share of winners into realized losses, and it does little about the tail it was placed to control, since a gap through the strike fills below the stop price anyway. Sizing a position against the touch rate rather than against delta prices the exit a trader will actually meet. Sizing against the expected move from implied volatility is the same idea approached from the volatility side.

A path that touched and came back

July 2024 gives a clean pinned example, fixed in the past so the numbers never move. The panel anchors on the first session of July, draws a level 2% above that close, and tracks SPY through the first week of August. The spy_high series is what does the touching; the spy_close series is what settles the finish.

QuerySPY through July 2024 against a level 2% above the July 1 close
The exact SQL behind every number
WITH
    bars AS (
        SELECT
            date,
            any(toFloat64(close)) AS c,
            max(toFloat64(high))  AS h
        FROM global_markets.stocks_daily_aggs
        WHERE ticker = 'SPY'
          AND date BETWEEN '2024-07-01' AND '2024-08-08'
        GROUP BY date
    ),
    anchor AS (
        SELECT argMin(c, date) * 1.02 AS lvl
        FROM bars
    )
SELECT
    toString(b.date)                  AS session_date,
    round(b.c, 2)                     AS spy_close,
    round(b.h, 2)                     AS spy_high,
    round(a.lvl, 2)                   AS strike_level,
    round(100 * (b.c / a.lvl - 1), 2) AS close_vs_level_pct,
    round(100 * (max(b.h) OVER (ORDER BY b.date ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) / a.lvl - 1), 2) AS run_max_vs_level_pct
FROM bars AS b
CROSS JOIN anchor AS a
ORDER BY b.date
Run this yourself

SPY opened the window at $545.34, putting the level at $556.25. The running high ended the stretch 1.6% above that level, so the level was reached during the window. The final close printed -4.6% against the same level. A short call struck there would have been touched partway through and would still have been out of the money at the end. A stop at the strike would have closed the position somewhere in between the two.

Where the doubling rule breaks down

Two cases matter most. Far out-of-the-money strikes push the ratio above two as ITM probability approaches zero, and by then both numbers are small enough that the difference rarely changes a decision. A strongly trending underlying breaks the symmetry the mirror argument rests on, since the drift makes the up-path and the down-path unequal in the first place. Beyond those, monitoring granularity matters at short horizons: a price that gaps through a strike overnight never trades there, so a touch measured on the tape and a touch measured in a continuous model can part ways on the same day.

FAQ

What is probability of touch in options trading?

Probability of touch is the chance the underlying trades at a given strike at any point before the option expires, rather than only at expiration. It is the relevant number for anything that can be triggered mid-life, including stop orders, alerts, rolls, and early assignment risk.

Is probability of touch always double probability ITM?

No. Doubling is an approximation that holds under zero drift, constant volatility, and continuous price monitoring. It is close for near-the-money strikes and drifts wider as the strike moves further out or as the underlying trends.

Does delta tell you the probability of touch?

Delta approximates probability ITM, not touch. Doubling delta gives a working touch estimate, which is why a 25-delta strike is often described as roughly a 50% chance of being touched at some point before expiration.

Why do stop-loss orders at the short strike hurt short option positions?

A stop at the strike is settled by touch, while the option's payoff is settled by the finish. Since touch is about twice as frequent, the stop closes many positions that would have expired worthless, turning a share of profitable trades into realized losses.


Every panel here carries the exact SQL that produced it, so the touch and finish counts can be traced row by row. To run the same touch-versus-finish test on another ticker or another horizon, ask the question in plain English on the Strasmore terminal.