⚪ SPY Daily Iron Condor

Daily Iron Condor on SPY — Alpaca Paper Account · NikkiP2 · Mon–Thu Intraday


● Paper Trading  |  ⚪ Neutral / Net-Credit  |  📅 Intraday Only

📡 Strategy Overview

A neutral, premium-selling strategy that profits when SPY closes within a defined range at exit. Four option legs are opened each weekday morning (Mon–Thu) on the nearest-expiry weekly options and closed at 14:20 ET the same day.

The strategy is delta-neutral at entry but can develop directional exposure as SPY moves toward a short strike during the session. All filters together are calibrated to avoid the two primary failure modes: (a) selling into a high-IV environment where the market is already pricing in a large move, and (b) entering after a prior day with outsized directional momentum.

Spread Construction

Leg Side Strike Action
Long Put Buy to open ATM − SHORT_SPREAD − WING_WIDTH PAY (downside hedge)
Short Put Sell to open ATM − SHORT_SPREAD COLLECT (premium)
Short Call Sell to open ATM + SHORT_SPREAD COLLECT (premium)
Long Call Buy to open ATM + SHORT_SPREAD + WING_WIDTH PAY (upside hedge)
Net Credit (short put + short call) − (long put + long call)

With the defaults below, strikes are centred ±$10 from the ATM strike with $5 wings:

← $5 → ← $10 →   ATM   ← $10 → ← $5 →
LP              SP                          SC              LC
(buy)           (sell)                      (sell)        (buy)

⚙️ Parameters

Ticker
SPY
Qty / Leg
40
Short Spread
$10
Wing Width
$5
ParameterValueDescription
TICKERSPYUnderlying ETF
QTY40Contracts per leg
SHORT_SPREAD10Distance from ATM to short strikes ($)
WING_WIDTH5Width of each spread / max loss per side ($)

Max Profit

net_credit × $4,000

Max Loss

(5 − credit) × $4,000

Expiry

Next Friday

🕐 Schedule

EventTime (ET)Days
Entry open09:40Mon–Thu
Entry cutoff12:00Mon–Thu
Exit14:20Mon–Thu

Options expiry is always the next Friday (nearest weekly expiry).

📅

Friday Skipped

No new positions opened on Friday. Intraday-only exposure — no overnight risk.

Auto-Exit Rules

TriggerThresholdAction
PROFIT_TARGET_PCT+90% of max profitClose all legs
STOP_LOSS_PCT−80% of max profitClose all legs

🔍 Trade Filters

All filters are evaluated from live option prices at entry time. Set any filter to None to disable it.

#FilterValueRationale
1 MIN_CREDIT_RATIO 0.05 Net credit must be ≥ 5% of wing width — ensures a meaningful breakeven cushion
2 MIN_CREDIT_ABS $0.25 Absolute floor on collected premium per share — avoids trivial-credit trades
3 MIN_STRADDLE_PCT 0.10% Skip if the ATM straddle is < 0.10% of SPY price — signals IV collapse, not enough premium to justify risk
4 MAX_STRADDLE_PCT 1.50% Skip if the ATM straddle is > 1.50% of SPY price — market is pricing in a large move that may bust the wings
5 MAX_GAP_PCT 1.0% Skip if the overnight gap exceeds 1% — event-driven gap suggests directional momentum unfavourable for neutral entry
6 MAX_PREV_DAY_MOVE 0.45× wing Skip if the prior session’s intraday range exceeded 45% of the wing width — elevated momentum tends to persist
7 LOW_IV_HIGH_RVOL straddle < 0.15% and avg5 > $3.00 Skip days where IV looks calm but realized vol over the past 5 sessions has been elevated — avoids selling cheap premium into a volatile tape

⚠️ Risk Assessment

Max Profit

net_credit × $4,000

Max Loss

(5 − credit) × $4,000

Upper Breakeven

ATM + $10 + credit

Lower Breakeven

ATM − $10 − credit

Overnight Risk

None

Delta at Entry

Neutral
⚠️

Maximum Loss is Bounded

Maximum loss is bounded by the wing width: (WING_WIDTH − net_credit) × 100 × QTY = (5 − credit) × $4,000.

📋

Intraday-Only Exposure

No overnight risk. Positions are always closed by 14:20 ET. Friday is skipped entirely.

💡

Delta Can Drift During Session

The strategy is delta-neutral at entry but can develop directional exposure as SPY moves toward a short strike during the session. The auto-exit stop-loss limit controls the downside in these cases.

🛠️ Prerequisites & Usage

Install Dependencies

pip install -r requirements.txt

Environment File — .envNP2

apiKeyAIV011P=<paper-trading API key>
apiSecretAIV011P=<paper-trading API secret>
apiDataKey=<data API key>
apiDataSecret=<data API secret>

Run

python3 daily_iron_condor_spy.py

The script blocks until market close, monitoring the position every 5 minutes and auto-exiting on profit target or stop loss. Trades are appended to condor_spy_trades_log.csv.

⚠️

Paper Trading Only — Not Financial Advice

This strategy runs on an Alpaca paper trading account. Past performance does not guarantee future results. Do not use real capital without thorough risk review.

⚠️ Options Permission Requirements (Alpaca)

This strategy requires Level 3 (Spreads) options approval on the Alpaca account. Level 3 allows multi-leg defined-risk spreads (iron condors, iron butterflies, verticals, etc.). Accounts must also be margin-enabled.

Apply via: Alpaca Dashboard → Account → Trading → Options Trading → Level 3.