← Live dashboard
01
02
03
04
05
06
07
08
09
ARN Options · How it decides

The Cortex

This isn't a machine trying to guess where the market goes next. It's a disciplined insurance desk: it sells the promise that a price floor won't break, collects the premium, and lets time do the work. Here is the exact chain of reasoning behind every trade — replayed against real ones.

Scroll
01 Vocabulary, fast

Six words, then the rest reads itself.

No trading background needed. Everything after this point is built from these.

Credit spread
Sell one put, buy a cheaper one beneath it as insurance. Cash in up front; the worst case is fixed the second it opens.
Width & credit
Strikes are always $5 apart — that's the width. Cash collected is the credit. Max loss = width − credit, ×100.
DTE
Days to expiration. This desk lives in the 7–14 day window.
Delta
A rough read on probability. A 0.30-delta put is loosely "about a 30% chance" of finishing in the money.
Theta
Value an option loses purely from time passing. Buyers race the clock; sellers get paid by it. This bot only sells.
Defined risk
Best case and worst case are both known in dollars before the trade goes on. Nothing can exceed them.
02 The Loop

Most cycles, it does nothing — on purpose.

Open to close, every 15 seconds, the same fixed checks run. The overwhelming majority end in "nothing to do." Restraint is the first feature, not an idle system.

Only two underlyings are ever eligible — SPY and QQQ — because their options markets stay liquid even 13 days out and far from the money.

live-cycle.log every 15s
[10:00:00] cycle #1
> checking  drawdown vs. today’s open
> result    OK — flat
0 underlyings eligible, ever
TREND_UP CHOPPY TREND_DOWN
recomputed every 30 min watches SPY · VIX
03 Reading the Weather

First, it reads the whole room.

SPY's own price action sorts the moment into one of three regimes, recomputed every 30 minutes so noise can't jerk it around.

TREND_UP Fine. Sell the floor.
CHOPPY Actually the best environment for this strategy — decay grinds on with no strong move threatening either side.
TREND_DOWN The only veto. A falling market is exactly when "the floor holds" is most likely to be wrong.
VIX 16.4 Under 25, so new spreads are allowed. A spike to 30+ closes everything open.
04 The Funnel

Eight gates. All eight had to open.

Replayed from a real cycle: SPY, August 4, 10:00 ET. One failure anywhere below and there is no trade.

01
Is today even survivable?
Down 2% from this morning's balance and everything halts — new trades and existing ones — until tomorrow.
PASS
flat vs open
02
What's the weather?
Regime must not read trending-down, and VIX must be calm enough to sell insurance at all.
PASS
TREND_UP · 16.4
03
Is it a safe time of day?
Entries only 10:00–14:30 ET. The opening bell is erratic; the last hour leaves no room to re-price a fill cleanly.
PASS
10:00 ET
04
How much am I already exposed?
Hard cap of two concurrent spreads, portfolio-wide.
PASS
0 / 2 open
05
Has this strategy been losing lately?
A rolling 20-day report card on itself. Down more than 3% of the account over that window and it stops feeding itself.
PASS
20d clean
06
Have I been burned on SPY recently?
A stop-out or breach in the last four hours locks that underlying out. Written after the bot once re-entered the same falling knife minutes later.
PASS
no lockout
07
Is the real trend healthy — not just today's mood?
The most important check in the system. Yesterday's completed daily close against its 10-day average — never today's still-forming candle, so an intraday bounce can't fake it. Born from three spreads sold into a genuine two-week decline while a 30-minute mood ring kept saying "choppy."
PASS
close > 10D
08
Are today's buyers in control?
Price above today's volume-weighted average price.
PASS
above VWAP
CLEARED · GO TO THE CHAIN
05 The Trade

One rung on the ladder, one ticket.

Now — and only now — the bot opens the live put chain, 7 to 14 days out, hunting the strike closest to 0.30 delta.

ONE TICKET
Bull put spread · SPY · 13 DTE
SELL 755Pshort leg · Δ0.30
BUY 750Pthe insurance · $5 wide
credit bar≥ 18% of width = $0.90
$0.00
credit filled · above the bar
$404
Max loss, known up front
~$810
Most at risk, ever (2 spreads)

Both legs leave together as a single multi-leg limit order at the estimated midpoint — never two market orders, which donate money to the bid-ask on every fill. If it doesn't fill, the bot offers 5¢ worse once, then waits. It doesn't chase.

06 Living With It

Five ways out, checked in order.

Every 15 seconds the open spread is re-tested against all five, top to bottom, until one fires.

TAKE THE WIN · 60% CAPTURED
CUT THE LOSS · 2.5× CREDIT
CLOCK · 2 DTE
now · ~38% captured
≤40%
Buyback cost — take win
2.5×
Credit — cut loss
2 DTE
Never rides expiration week
VIX 30
Storm warning — all flat
1
Take the win. Buyback cost has fallen to 40% or less of the credit — 60%+ of max profit banked. The last stretch of profit is exactly where a sudden reversal hurts most (gamma risk), so it doesn't wait for the final dollar.
2
Cut the loss. Buyback cost reaches 2.5× the credit — admitting the trade was wrong well before max loss is reached.
3
Respect the clock. Two days or fewer to expiration and it closes regardless of P&L. Expiration-week pricing is erratic; the position never rides into it.
4
Defend the floor. Price actually trades down to or through the short strike — close now. Deliberately not prediction-based: an earlier version force-closed two live spreads at the exact intraday low because one noisy 30-minute reading flipped bearish for half an hour. Waiting for the real strike to break was the fix.
5
Storm warning. VIX spikes to 30+ and everything closes, across the board. Calm-market assumptions no longer hold, so it de-risks first and reasons about it later.
The last six times this ran 4 wins · 2 losses · every branch below is a real trade
Spread Opened Closed Credit Debit What ended it Result
QQQ 681/676Aug 3Aug 4$1.05$0.3460% captured+$71
SPY 746/741Aug 3Aug 4$0.86$0.4160% captured+$45
SPY 731/726Jul 31Aug 3$0.97$0.4260% captured+$55
QQQ 679/674Jul 23Jul 27$1.12$2.12Broke the short strike−$100
SPY 728/723Jul 23Jul 30$0.97$0.4560% captured+$52
SPY 736/731Jul 21Jul 23$0.92$1.82Broke the short strike−$90

Every win ended the same way — bought back around 35–60¢ on a roughly dollar credit, well before expiration. Every loss ended the same way too: not a slow bleed, but the underlying actually trading through the floor being defended.

07 The Watchtower

It never stops looking. It just isn't holding a trigger.

64 symbols, every 15 seconds, a full page of live technical analysis on each — trend crossover, RSI, VWAP position, volume confirmation, opening-range bias, sector-relative strength. All of it real, all of it published continuously.

But none of these 64 names can currently generate a trade. The scanner was built for two strategies that have since been switched off, and the wiring from "NVDA looks bullish" to an actual order is disconnected.

One wire is still live: SPY and QQQ's own VWAP reading feeds gate 08 of the spread funnel. That's the only room in the building with its hand on a trigger.

Scan · 64 symbols observing · not acting
0 of these 64 can place a trade today
08 The Dormant Model

The model it's quietly training for whatever comes next.

A trained pair of gradient-boosted (XGBoost) models — one scoring near-term up-moves, one down — built on this bot's own history from about a dozen engineered features: RSI, moving-average spread, VWAP distance, volume ratio, momentum over several windows, the day's return, encoded time-of-day and day-of-week, and VIX. A newer version adds pattern features: consecutive same-direction candles, range compression.

A working SHAP layer can decompose any single prediction, feature by feature. It's loaded, functioning, and ready — and it has no live trades to inform. It runs offline overnight, backtesting candidate versions of itself against each other.

Illustrative — research, not why this traded
Sample prediction · offline
SHAP decomposition · no order attached
0.68
up-move score
Feature attribution base 0.50 → 0.68
09 The Guardrails

On duty, and standing by.

Not everything this system knows how to do is something it's currently doing. Both lists are real code.

On duty governing live money
Daily 2% account drawdown halts everything for the day
Regime must not read TREND_DOWN
VIX under 25 to open; 30+ closes everything
New entries only 10:00–14:30 ET
Never more than 2 spreads open at once
Rolling 20-day self report-card kill switch at −3%
4-hour lockout on a stopped-out or breached underlying
10-day trend filter on each underlying's daily closes
Above-VWAP check on each underlying
Standing by nothing left to guard
60-minute cooldown after a losing stock trade
Daily cap of 3 losing options trades
No-trade windows at the open (9:30–9:50) and lunch (12:00–13:00) — these govern the dormant scanner, not spreads, whose 10:00–14:30 window deliberately overlaps lunch
Forced flat-close at 15:45 ET for stock and single-name options — spreads are exempt, they're built to be held overnight and through weekends

Three identities. It kept the one that worked.

A system that revises itself, rather than one running on rails.

ERA 01 · RETIRED
Trading shares directly
Buy on bullish signals, sell later. Hovered near a 28% win rate across its whole history.
ERA 02 · RETIRED
Buying short-dated options
The problem was geometric, not directional: the model detected real moves of about a third of a percent, while a fairly-priced option needed several times that to pay. Frequently right, still losing.
ERA 03 · CURRENT
Selling the premium instead
Don't predict a big move — get paid for the absence of one, and let time work for the position instead of against it. The first of the three to be net profitable.

And then it checks again — in fifteen seconds.

Eight gates, five ways out, two eligible underlyings, a $5-wide bet with its worst case known in advance. No real money — every trade runs on a paper account, fully logged and replayable. This same reasoning also runs a focused, SPY-only version elsewhere on the site.

PAPER TRADING Live prices · fake money
ARN Options