Strike Selection Reference Guide
Technical documentation of ATM, ITM, and OTM strike selection logic for calls and puts in RelayDesk.
Knowing precisely how RelayDesk selects option strikes is critical for systematic traders — especially when running 0DTE scalps where a single-strike misconfiguration can flip a trade from profit to loss. This reference documents the ATM/ITM/OTM logic for both calls and puts, explains offset behavior, and surfaces the specific edge cases that cause the most friction.
Definitions
At-the-Money (ATM)
ATM in RelayDesk refers to the strike closest to the current underlying price at the moment the signal is processed — not when the TradingView alert fires, and not when the bot was created. Strike evaluation happens live at execution time.
In fast markets or thin 0DTE chains, the ATM strike can shift between alert generation and order submission. RelayDesk always resolves the strike at execution, giving you the most accurate fill possible.
In-the-Money (ITM)
A strike is ITM when it has intrinsic value relative to the current underlying price:
- Call ITM: Strike is below the underlying price
- Put ITM: Strike is above the underlying price
Out-of-the-Money (OTM)
A strike is OTM when it has no intrinsic value:
- Call OTM: Strike is above the underlying price
- Put OTM: Strike is below the underlying price
Strike Offset Logic
The strikeOffset parameter moves your selection a fixed number of strikes away from ATM. The direction of that move is always relative to moneyness, not price direction.
| `strikeOffset` | Call Result | Put Result |
|---|---|---|
| `0` | ATM | ATM |
| `+1` | 1 strike OTM (higher strike) | 1 strike OTM (lower strike) |
| `+2` | 2 strikes OTM | 2 strikes OTM |
| `-1` | 1 strike ITM (lower strike) | 1 strike ITM (higher strike) |
| `-2` | 2 strikes ITM | 2 strikes ITM |The key rule: Positive offset always moves toward OTM. Negative offset always moves toward ITM. This holds true regardless of whether you're trading calls or puts.
Call Option Strike Selection
For calls, strikes increase in price terms as you move OTM. The chain below illustrates how offset maps to strikes when the underlying is at $150.00 and strikes are $1 wide:
Underlying: $150.00
Strike | Label | strikeOffset
---------|----------------|-------------
$147 | 2 strikes ITM | -2
$148 | 1 strike ITM | -1
$149 | 1 strike ITM | -1 ← boundary depends on chain gap
$150 | ATM | 0
$151 | 1 strike OTM | +1
$152 | 2 strikes OTM | +2Call Configuration Examples
ATM call — most liquid, tightest spread for scalping:
{
"optionType": "call",
"strikeOffset": 0
}1 strike OTM call — lower premium, higher sensitivity:
{
"optionType": "call",
"strikeOffset": 1
}1 strike ITM call — higher delta, lower time decay exposure:
{
"optionType": "call",
"strikeOffset": -1
}Put Option Strike Selection
For puts, the logic mirrors calls but the price direction inverts. OTM puts have strikes below the underlying price — a point of frequent confusion.
Underlying: $150.00
Strike | Label | strikeOffset
---------|----------------|-------------
$153 | 2 strikes ITM | -2
$152 | 1 strike ITM | -1
$151 | 1 strike ITM | -1
$150 | ATM | 0
$149 | 1 strike OTM | +1
$148 | 2 strikes OTM | +2This is the most common source of confusion. On puts, a positive strikeOffset moves to a lower strike price — but it is still moving OTM. The offset is always relative to moneyness, never to raw strike price direction.Put Configuration Examples
ATM put:
{
"optionType": "put",
"strikeOffset": 0
}1 strike OTM put (lower strike price):
{
"optionType": "put",
"strikeOffset": 1
}1 strike ITM put (higher strike price):
{
"optionType": "put",
"strikeOffset": -1
}How RelayDesk Resolves ATM When the Price Falls Between Strikes
If the underlying sits exactly between two strikes (e.g., $150.50 with $150 and $151 strikes), RelayDesk selects the lower strike as ATM by default. This behavior is consistent across all instruments and cannot be manually overridden — it ensures deterministic resolution.
0DTE-Specific Considerations
Same-day expiration chains behave differently than standard weekly or monthly contracts. A few things to keep in mind:
Liquidity narrows as expiration approaches. Strikes that are 2+ OTM may have wide bid/ask spreads or no market maker interest in the final hour. For 0DTE scalping strategies, strikeOffset: 0 or strikeOffset: 1 tend to provide the most consistent fills.
The ATM strike shifts more frequently. In high-volatility 0DTE sessions, the underlying can move through multiple strikes during a single candle. RelayDesk resolves the strike at signal execution — if your TradingView alert fires at bar close and your bot processes the signal 2–3 seconds later, the ATM may have moved. Consider this in your strategy design.
Use paper trading to validate strike resolution. Before going live with a new 0DTE setup, run it in paper mode and review the Signal History log to confirm the strikes being selected match your intent.
Common Mistakes
Mistake 1: Assuming positive offset = higher strike price for puts Positive offset on puts selects a lower strike price because OTM puts are below the underlying. Always think in terms of moneyness, not raw strike direction.
Mistake 2: Configuring strike selection based on bot creation price The underlying price at bot creation time has no bearing on strike resolution. ATM is always evaluated at signal execution.
Mistake 3: Using high OTM offsets on 0DTE contracts Deep OTM 0DTE options often have illiquid markets. strikeOffset: 3 or higher on same-day expiries can result in no-fill or unfavorable execution.
Related Articles
Was this article helpful?