ThetaTracker Pro · Decision Support

The Roll Choices Engine

Two modes, what each number means, and how to read an answer you disagree with. Build 2026.09.03-db · October 2026. The worked numbers in this guide are examples measured from the author's own roll history. The panel measures the same things from yours.
The engine surfaces choices. It never places a trade, and it is not trying to be right. Its job is to make sure the option you pick is one you saw, and that the ones you did not pick are ones you can see it rejected, and why. Where it quotes a rate — how fast your strikes drift, what a day of protection costs you — that rate was measured from your own filled trades, and it is shown with its sample size so you can judge how much to trust it.
Start here

The Guided front door

You do not need to know what delta is to use this tool. You need to know what you are trying to get done.

Roll Choices and New Position both open on a plain question at the top: What are you trying to get done? Answer it, say where you want to start, press the search button, and read two cards. The rest of the screen is there when you are ready for it.

Guided is a short list of steps, in order. On Roll Choices: 1 tick the position you want to work on (the list shows each short with what protects it, and the one closest to expiry is ticked for you; a line under it says how many shorts it is showing and how many a department filter is hiding, and Open the settings there lets you tick another department or search against a position you do not hold); 2 choose what you want to get done; 3 optionally pick a starting point; 4 optionally pick a search style (Cautious, Balanced or Aggressive); then press the one Find button. The answer opens right under the button and the page scrolls to it. New Position follows the same order, with the structure, the underlying and the number of contracts asked on the same screen. The old settings form, the long how-to text and a second Find button are not on the Guided screen; they are in Explore and Full control, and Show the settings opens the form in place if you need it once.

Your goalWhat it does
Roll a positionA short you hold is near expiry or under pressure. The engine prices every roll and ranks them.
Add a positionYou want new inventory. The engine searches the live chain for the structure you pick.
Balance my deltaYour account leans too far one way. The standout is the row that moves your whole book closest to the middle of your delta range.
Bring in cashThe standout is the row that collects the most credit. The cards also show what that credit costs in risk.
Protect buying powerThe standout frees the most buying power (a roll) or ties up the least cash (a new position).
Lessen a lossThe standout is the row that collects the most credit or costs the least, since that is what shrinks the hole.

A goal never changes the engine's numbers. It tells the screen which row to feature as the standout for you, and which structures to suggest next.

Rolling your longRoll my long

To buy more time on a protective long put, choose the tile Roll my long on the first screen. You do not need Explore or any form. Tick the position in the list at the top (each line shows the long that protects the short; a short with no long says so), then press Find the best roll for this long. Three cards come back, each priced the same careful way as everywhere else (closing your long at the bid, opening the new one at the ask): the cheapest per week of time bought, the cheapest that keeps your strike, and the roll that frees the most buying power while staying inside your weekly limit. Each card gives the new strike and date, the days added, the total cost, the cost per contract per week against your limit, and what the roll frees or uses in buying power. Choosing Roll a position again puts the tool back on the short. Explore shows every row the cards were picked from.

Where do you want to start?one decision

Every trade has a few dials: a strike, an expiration, a credit and a risk level. Fix one and the others fall into place around it. Pick the one you already know:

Two cards, one answer you can checkbest overall

After the search you see Best overall: the highest score the engine found. It is always shown, whatever you chose. If you chose a starting point, a second card, Your starting point, shows the best row that fits it. Under the two cards a short note says which one wins on what: cash, buying power, how far from the money the short sits, and time. If the two are within 5 points the note says they are effectively tied.

Three detail levelsgrow into it

LevelWhat you see
GuidedThe two cards with cash in or out and buying power, a plain-words note, and the structure cards. The filter forms and the engine's tables are tucked away. Show the full table opens the table in place and Show the settings opens the form in place; neither changes your level, and each button turns into Hide when it is open. To change level, use the Guided, Explore and Full control buttons at the top of the screen; the Find button also says which level you are on.
ExploreOpens with one plain sentence about what the tool does. Adds delta (assignment risk), the 0 to 100 score, the full table of rolls or positions, and the filters: the position picker, the on/off criteria and the search style.
Full controlAdds days added, the requirement after the roll, the engine's own description of the search, the long “How to read this tool” text, and the Advanced settings (pricing, search depth, portfolio steering, net credit range and buying power ceiling).

Your level is remembered separately for Roll Choices and New Position, so setting Explore in one never changes the other. Nothing about the search changes between levels; only how much of it you see.

Learn the structures as you gonovice to sophisticated

Under the results, a row of cards teaches each structure: what it is, when it pays, when it hurts. Ones that fit your goal are marked. The live structures are rolls, credit call and put spreads, debit call and put spreads, iron condors, strangles, straddles and Weekly Income sets. A single long call or put is marked Coming soon: it is not priced by the engine yet, so the card teaches it without offering a search.

Tap a structure on the New Position screen and the form sets itself to search for it.

Limits in force, and the closest misswhy nothing came back

Guided hides the filter boxes, so a limit you saved earlier (a strike range, a cash range, a ceiling) could empty a search with nothing on screen to explain it. The screen now lists Limits in force in plain words, and each limit that can empty a search has a Remove button that switches it off exactly as unticking its box would. On Roll Choices that covers the cash in or out, the buying power freed, the delta band and the margin cap. When the search comes back empty, the same list appears under Nothing passed your limits, together with a Closest to passing card for the single nearest row and what it misses by. Removing a limit after an empty result runs the search again for you.

Your delta rangeshiftable

If you like to keep your whole book near neutral and lean it up or down as the market asks, choose the goal Balance my delta. The screen then shows your book's delta right now and three buttons: Lean down, Neutral and Lean up. Neutral is a range from about −500 to +500; Lean up is 0 to 1,000; Lean down is −1,000 to 0. Two boxes let you type any range of your own. The range is shared by Roll Choices and New Position and is remembered. Choosing the goal also turns on steering: rows that pull your book toward the range score higher, so Best overall can change. Untick it and the range only filters.

The range does not follow your book. It stays where you set it, so a book that drifts away from neutral is shown as drifting.

Cost a week, on a long rollper contract

When you roll a long option, each row shows what the roll costs per contract, per week of time it buys: the net cost divided by contracts, divided by the weeks added. It turns green with inside your limit or red with over your limit. The limit is the weekly limit set in the Roll Watch settings (starting at $100). A roll that pays you shows a credit, so no weekly cost, and a roll that buys no time shows buys no time. This lets you compare a short extension with a long one on the same footing.

Roll Watch: direction, buying power and which longsSettings

Roll Watch now shows, for each long it watches, the buying power the best roll frees or uses. Rolling to a lower strike widens the spread and uses buying power; rolling to a higher strike narrows it and frees some. Below the best roll it also shows the best roll that moves the strike up and the best that moves it down, when they differ from the best overall. Two boxes in the Roll Watch settings, The strike may move up and The strike may move down, let you leave one direction out. They only matter when Strike may move is above zero. A third box, Watch Weekly Income longs only (on by default), keeps put credit spreads that sit in other departments off the radar; a note under the table says how many longs were skipped.

Roll Watch has three levels too, remembered on their own. Guided shows the one switch (Watch my longs), Check now, and the table of your longs with the best roll for each. Explore adds desktop alerts, email watching while you are away, the settings that decide when it speaks, and the recent alerts. Full control adds the long explanation of how it works. The buttons at the top of the screen change the level.

The Protection checkhow much cover is enough

A box above the results on Roll Choices and New Position answers one question: if the market gapped down, would the account stay inside the loss you can accept? See Part 19 for how it works.

Start here

Reading the full panel

Five steps, then the rest of this guide explains why.

  1. Pick the position under “Position under defense”.
  2. Choose a search style. It sets how far from the money the new short may sit.
  3. Press Find rolls.
  4. Read the cards at the top first. Each card is the winner at one thing: most credit, most buying power freed, closest to your delta target, and best overall. They are often different rolls, and the gap between them is the trade-off.
  5. Tick compare on up to three rolls to see them side by side.
Search styleDelta bandWhat it means
Cautious0.05 – 0.15Short strikes further from the money. Smaller premium, lower chance of finishing in the money. Target 0.10
Balanced0.08 – 0.25The starting point, and the middle of what the author's own history used. Target 0.15
Aggressive0.15 – 0.35Short strikes nearer the money. Bigger premium, higher chance of finishing in the money. Target 0.25
Part 1

What it is, and what it is not

Narrower than a scanner, wider than it used to be.

Give it one position you hold. It returns ranked ways to roll one leg of it, each already priced against the live chain and tested against your live account.

It doesIt does not
One position at a timeScan the whole book for trouble
Puts and calls, either legHandle condors, strangles, or stock
Any department you hold shorts inPair legs across departments
Judge against live portfolio stateJudge the roll in a vacuum
Rank, group and explainPlace, stage, or recommend an order
Quote rates measured from your historyForecast what the market will do
Where to find it. Tools › Roll Choices. The button next to it, 🆕 New Position, is covered in Part 18. A ⚑ Find rolls button also appears on a short that has crossed into defense territory — so the button showing up is itself the signal, and clicking it opens the panel with that position already loaded.
Part 2

The two modes

Which leg moves changes everything else about the search.

At the top of the panel, which leg moves. The two are not settings on one search — they are different searches, because a defensive roll and an opportunity roll are judged on opposite things.

Short leg — defenseLong leg — opportunity
Why you are hereSomething has gone against youProtection has got cheap
PreconditionMust be in defense territory, or nothing is enumeratedNone. The position is healthy by definition
Money flowsUsually a credit inUsually a debit out
Judged onCredit, buying power, delta — three criteria you switch on and offValue per dollar, measured differently for each shape
Delta bandApplies to the short leg's own deltaDoes not apply. It was calibrated on short puts
Timing signalThe position itselfVIX low and the index high
The criteria block disappears in long mode. Deliberately. A long roll neither collects a credit nor steers a delta band, so leaving those controls on screen would invite you to read them as applying.
Long mode is held positions only. The long's strike, expiration and cost all come from the position. A hypothetical has nowhere to type the long's own expiration, so choosing the long leg from hypothetical mode switches you back to held and says so.
Part 3

Which positions it offers you

Structure builds the list. A department filter narrows it.

Every short option you hold appears — puts and calls, any department — paired with the nearest long beyond it in the same department.

Beyondthe pairing rule

A long is beyond a short when it sits further from the money on the same side: below for puts, above for calls. Of those, the engine takes the nearest — the highest long below a short put, the lowest long above a short call — because that is the leg that actually bounds the risk.

The long must be in the same department as the short. A Protection long was bought to protect the book, not to cap an Other Income short, and pairing them would report a width and a requirement for a spread that exists only in the engine's head.

A long that would have paired on strike alone but sits elsewhere is named, with its department: "Not used: 820 in Protection." Without that line, a short reads "undefined risk" and the natural conclusion is that the engine cannot see the long. It can. It is declining to use it.
Why this changed. The picker used to require Weekly Income and a put. On your 14 September book that returned nothing at all, while you held three genuine spreads: a breached XSP 752/755 put credit spread in Protection, and call credit spreads at 791/793 and 810/820. The routing was not wrong. The picker was asking the wrong question.

A short with no long on either side is listed and flagged undefined-risk, not hidden — it is the position most likely to need a roll. Width and requirement read as unavailable, and the engine declines to enumerate until you enter a bound by hand, rather than pricing against a leg that does not exist.

Because the pairing is derived rather than stored, everything questionable about it gets its own sentence when you select a row: a long from another department that was passed over, legs on different expirations, a long covering fewer contracts than the short, and one long claimed as the nearest leg by two shorts — at most one of those pairings can be real.

Different expirations are normal, not a warning. A Weekly Income set pairs a weekly short against a long-dated protective leg on purpose. It is noted and never enforced.
Part 4

The three shapes a spread can be in

The requirement formula changes with the shape. Getting this wrong is not cosmetic.

One quantity carries all of it: the signed width.

puts: width = Short − Long calls: width = Long − Short

Positive width is a credit spread: the long is the far leg and the risk is defined by the distance between them. Negative width is inverted: the long sits on the near side, the structure is a debit spread, and it cannot lose more than it cost.

ShapeRequirementReading
Credit spreadwidth × 100 − credit takenDefined risk. The number your broker charges
Invertedthe net debitModelled, not quoted — brokers differ on how they margin it
Undefined—No long leg. Nothing bounds the loss and no width exists
A call spread is the mirror, not a variant. Your XSP 810/820 call credit spread presents as "long above short." Under put rules that is the inverted state, and the engine would have margined the most ordinary structure you hold outside Weekly Income at the net debit instead of (820 − 810) × 100 − credit. Not a missing feature — a confident wrong number on a real position.

Why you invert on purposethe runway

Opening the long above the short buys weeks of fully covered weekly income. The short rolls up in strike each week chasing premium, closing the gap from below; while the long stays above it, a breach is harmless because the long is deeper in the money than the short is.

When the short passes the long it reverts to an ordinary credit spread, and width and buying power start binding again. The inversion is a runway, and placing the long high is buying weeks of it.

Buying power stops binding while inverted not because the requirement is smaller but because the definition changed. A debit spread cannot lose more than it cost. (Short − Long) × 100 goes negative in that state and is meaningless; any engine computing it would produce confident nonsense.
Part 5

The numbers that matter

Premiums are per share. Everything the engine reports is in dollars.

Net roll creditdollars

(new premium − buyback) × 100 × contracts

What the roll puts in or takes out. Positive is a credit.

Buying power freeddollars

The general definition is simply how much the requirement falls:

requirement before − requirement after

For a short-leg roll where both states are credit spreads that reduces exactly to the familiar two-term form — and the strike term mirrors by right, because a short put frees buying power by rolling down and a short call by rolling up. Both are "move the short further from the money and the spread narrows."

puts: (old short − new short) × 100 × contracts + credit calls: (new short − old short) × 100 × contracts + credit

The general form is used because it is the only one that stays right when the basis changes — crossing out of an inverted state switches the requirement from a net debit to a width, and no single formula spans that.

A narrow crossover frees buying power; it does not step up. At the instant the short passes the long the new spread is a point or two wide, so the requirement is easily lower than the net debit still outstanding. What starts binding after crossover is the trajectory — every further up-roll widens the spread — not the step.
A negative requirement is not an error. On the width basis it means the campaign has collected more credit than the spread's own maximum loss. It is not floored, because flooring it would break the reduction above, and the panel labels it "credit taken exceeds max loss."

Portfolio delta aftersigned

The journal stores position delta, which is why a short put reads positive and a short call negative. The swing is computed on signed contributions, not magnitudes — identical arithmetic for puts, and the opposite sign for calls.

Part 6

Why it quotes you the bad price

Haircut 100% by default, on both modes.

At full haircut the engine assumes you pay the ask to close and take the bid to open. Mid is shown alongside but never gated or ranked on.

The asymmetry argument. A candidate priced too optimistically becomes a real trade at a price that is not there. A candidate priced too pessimistically costs you a second look. Those are not the same size of mistake.

Turn the haircut down to see the optimistic case, by all means — but rank on the number you can actually fill.

Part 7

The precondition

Short-leg mode only. It exists so the engine never manufactures a roll.

Before a single chain is requested, the position must be in defense territory. Any one of these is enough:

1

The short is breached. Spot below the strike for a put, above it for a call. Mirrored, because a short call is breached from the other side.

2

Within 1% of the money, approaching from the side that matters for that right.

3

Delta at or above the band ceiling — 0.25. The number that says "too much delta to hold" is deliberately the same number the band rejects on, rather than a second constant.

4

At the weekly roll point and underwater — seven days or fewer, with the position at a loss.

An inverted position is covered, and a breach there is not an emergency. While the long sits on the near side it is deeper in the money than the short is. The engine says so in those words rather than declining flatly, because "not in defense territory" on a breached short reads as a bug unless the reason is given with it.
The weekly roll point still fires while covered, and it should: that is an income trigger, not a distress one. Rolling the short up for premium is the whole reason the long was placed high. When it does fire, the panel gives you both — the reason, and the fact that the breach itself is covered.

Refusing costs nothing: the check runs before any chain call, so a position that was never a candidate does not spend fifteen metered requests to tell you so. If you want to plan against a healthy position anyway, tick search even if not in defense; the result is labelled a planning run so it can never be mistaken for a defensive one.

Part 8

Which expirations it looks at

One chain call per expiration, against a metered vendor. So the set is chosen, not swept.

Every expiration the engine considers costs a real request to ThetaData. The duration ceiling decides how far out it will look, the chain cap decides how many of those it will actually pay for, and one expiration is exempt from both.

The expiration you already hold is always loaded. Its chain is what prices the buyback, and the buyback is inside every net credit on screen. Leaving it out does not narrow the search — it voids it, because nothing can be priced without it. It is fetched whatever the ceiling says and it is the one entry the chain cap may never drop.

The failure this rule exists for. A put credit spread, short 755 and long 752, both expiring 12/31/2026 — 106 days out. The ceiling defaulted to 90. Every expiration inside 90 days was loaded and paid for; the position's own was not, because 106 is more than 90. With no quote for the leg being bought back, every candidate's credit was unknown, and the panel refused with all of that work already spent.

The ceiling is now 150 days, and the held expiration is exempt from it. But 150 is still a number, and the exemption — not the larger default — is what makes the panel safe on a position you opened a long way out.

Dates, not day counts

An expiration is identified by its date. That sounds like pedantry and is not: the ThetaData bridge computes days-to-expiry on its own server and the journal computes its own in your browser, so the two disagree whenever they land either side of a midnight. Matching a leg to its own chain on those two numbers being equal works almost always, which is worse than working never — it fails silently, on a day you cannot predict, and the symptom is a panel that says it cannot price your position.

The same rule fixes the day count. The expiration you hold is zero days from itself, by definition, not the difference between two clocks. Computed as a subtraction it came out −1 on the 12/31/2026 spread, which labelled every same-expiration roll-down — the commonest defensive move there is — as a restructure that shortens duration. A false warning on the right answer costs more trust than no warning at all.

Rolling in, and why it is offered at all

A roll to an earlier expiration than the one you hold is shown, with the days as a negative and a warning that it shortens duration. It is not a defensive roll — it collects less and buys no time — but it is a real trade: it is how a position opened months out gets brought back onto a weekly cadence. Calling that a restructure rather than a defense is the whole point of showing it labelled instead of hiding it.

Direction tagWhat it says about time
down and outStrike lower, expiration later. The classic defensive roll
up and outStrike higher, expiration later. Income, or an inverted position buying runway
downStrike lower, same expiration. No time changes hands
pure timeSame strike, later expiration. You are buying days and nothing else
down and in / up and inExpiration earlier. A restructure — you are giving time back
same strike, shortenedSame strike, earlier expiration. Rarely what you meant
Giving time back is scored as costing nothing, never as a gain. The ranking treats added days as a cost, so a roll that removes days would otherwise be handed a bonus for it. It scores as though it added no time at all, and the warning lives where you can read it rather than buried inside a number.

Sampling, and what the footer tells you

At a 150-day ceiling XSP can list fifty expirations, and fifty metered calls per search is not a reasonable price for one answer. Above the chain cap the list is sampled: the expiration you hold, the nearest, the furthest, and an even spread between. The footer states how many of how many were used, so a thin-looking result set can always be read back to the number of chains that produced it.

Chains are cached for the session. Re-running a search after changing a criterion normally costs nothing — the footer says how many were served from cache. Changing the ceiling or the cap is what makes it reach for new ones.
Part 9

Three criteria, one of them leading

Short-leg mode. Your priorities change with the market, so they are inputs.

Credit/debit, buying power and delta each switch on to filter or off to leave the decision — and their values still show on every row either way. One is nominated lead and sorts the results.

CriterionDefaultWhat switching it off means
Credit / debitmin 0, no maxDebits become findable. Set a negative min to allow one down to a limit
Buying powermin 0Rolls that consume buying power are shown
Delta0.08 – 0.25Strikes outside the band appear, with their delta stated
A debit is a legitimate answer. The governing case is 0DTE: having waited for the theta to decay — which is the point of the method — a debit may be the only roll that keeps the new position inside two weeks of expiration. An engine that hides that candidate is hiding the only available action.
The credit-and-buying-power test is a badge, not a filter. Every row still reports whether it satisfies credit ≥ 0 and buying power freed > 0, so the discipline stays visible at a glance without vetoing the search. It was never a law of arithmetic; it is a default posture, and it is displayed as one.

Liquidity and the resulting margin cap are standing guards, not criteria. They are about tradeability and absolute risk rather than preferences that shift with the market, so they sit apart and stay on by default. A bid-ask spread wider than 10% of mid is rejected — but never a spread of ten cents or less, on percentage alone.

The margin cap is not enforced across a change of structural state. A cap seeded as a multiple of today's requirement is meaningless when the basis itself changes: a small net debit × 1.5 would veto every crossover candidate, hiding exactly the ones worth seeing. The change is reported instead.
Leave the cap box blank and it means 1.5× today's requirement. It does not mean zero. If it meant zero, every candidate on earth would be rejected for exceeding it — which is precisely what used to happen.
Part 10

The trap the delta band exists for

The single most important behaviour in the engine, and it runs both ways.

A roll can free buying power, collect a fat credit, pass the credit-and-buying-power test completely — and leave you in a worse position. This is the worked example the whole gate structure was built around.

The put caseup and out

Short 5600 put over a 5400 long, spot 5580 — breached. Roll the short up to 5620 and out 45 days:

width term −$2,000 net credit +$3,500 buying power +$1,500 ✓ credit + BP freed new delta 0.42 ✗ band ceiling is 0.25

It pays you $3,500 and frees $1,500, and it moves the short deeper into the money. The delta band is the only thing standing between you and it.

The call mirrordown and out

Short 5600 call under a 5800 long, spot 5620 — breached from above. Roll the short down to 5580 and out. Identical arithmetic, opposite direction: −$2,000 of width, +$3,500 of credit, +$1,500 freed, delta 0.42, rejected.

Both directions are pinned in the test suite. If either one ever goes green the wrong way, the engine is recommending exactly the trade it was built to prevent.
On a call, the band is borrowed. 0.08–0.25 was calibrated on 121 short-put delta observations from your own history. Compared as a magnitude it applies to a short call without ambiguity, so the gate works — but there is no short-call population to calibrate against. Every call candidate says so. Sound comparison; someone else's calibration.
Part 11

Runway to crossover

"A few extra weeks" is computable, from your own rolls.

For an inverted position, the useful readout is not "in defense territory" but how many more weeks of covered income the structure has left.

runway = gap between the strikes ÷ your measured strike drift

The drift ratemeasured

Each roll's new contract is chained to the next roll that closes it, giving a lineage: one short, tracked through however many rolls it took, over however many days it actually took. How far that strike travelled, divided by the elapsed weeks.

FilterRollsLineagesMedian
All XSP put rolls19621+3.07 pts/wk
Only those still routed to Weekly Income546+3.54 pts/wk

Two filters sharing no selection logic, agreeing at about three points a week. That agreement is the reason to trust the number.

Why not "advance per roll". Because it is not a weekly rate. Of your 196 rolls, 103 went up, 42 down and 51 stayed at the same strike — the median advance per roll is +2 points and the median gap between roll records is two days, because several lots roll on their own schedules. Dividing a gap by that produces three different answers depending on which average you pick, none of them in weeks.

An 8-point gap at 3.07 a week reads "Runway 2.6 weeks to crossover", with the gap, the rate, and the sample size stated — and labelled a historical drift rate, not a forecast. Every candidate row also carries the runway it would leave, which is the number that actually decides between two inverted rolls.

A non-positive drift rate is good news, not a failure. If your history shows the short moving away from the long, the runway is open-ended and the panel says so, rather than printing a negative or five-figure week count. Below three qualifying lineages it quotes nothing at all.
Part 12

Long-roll mode: what a dollar buys

Opportunity, not defense. The short is held and the long moves.

Strike up or down, with or without a change of expiration — one grid, no direction filter. Your 68 long rolls went up 43 times, down 15, and held strike 11, so a mode that searched only upward-and-outward would miss a quarter of what you do.

Because the shapes buy different goods, results come back grouped, each sorted by its own metric in its own direction. Ranking them all on one number would hide the thing worth seeing.

ShapeWhat a dollar buysHow it is scored
Narrows the spreadbuying powerwidth removed per $1 — break-even at 1.00×
Narrows and buys daysboththe ratio is shown; no pass/fail is issued
Buys time outrightdayscost per day
Buys time by giving up widthdays, paid for twiceall-in cost per day, counting the surrendered width
Takes cash outnothing — it sells protection backcash, with what it gives up stated beside it
Why the second row issues no verdict. An up-and-out roll buys width and days. Scored on width alone, four of your seven came back "below break-even" — false, because the days they also bought were not counted. A threshold that ignores half of what the dollar purchased has no business passing judgement, so that shape reports the ratio and withholds the verdict.
Your roll-ups are good trades. All 32 of the same-expiry ones cleared break-even, from 2.34× to 6.37×: $94,500 of width removed for $22,309 spent, $4.24 per dollar. The break-even floor is a guardrail, not a filter — on this history it rejects nothing.
Cost control. A 400-day ceiling can mean forty expirations, and each one is a metered chain call. Above the cap the list is sampled — your long's own expiration always, since its quote prices every candidate, then the nearest, the furthest, and an even spread between — and the footer says how many of how many were loaded.
Part 13

The price of a day

And the finding that makes this mode worth opening.

Width and days cannot be compared without an exchange rate between them — and there is one in your history: the rolls where the strike did not move, so a day is the only thing being bought.

Your going rate9 samples

median $13.02 per day per contract range $10.25 – $16.00 a 1.6× spread

Tight enough to use. With it, every shape collapses to one all-in ratio: what a dollar bought, counting both width and time, against what it cost, counting both cash and width given up. Below three samples the engine quotes nothing and reports width and days separately.

The same-strike group's own ratios cluster at 1.00× by construction, since the rate is its median. Stated rather than hidden.

Time bought two ways is not the same price.
How the time was boughtMedian, per contract
Rolling out at an unchanged strike$13.02 a day
Rolling down and out — trading floor height for time$25.33 a day, all-in

Roughly double, and all ten of those rolls priced below your own going rate for a day. It hides in the cash: two of them were outright credits — money in, time gained, free on the cash line and the dearest time in the book once the surrendered floor is counted. That comparison was not previously possible, because the two shapes had never been measured in the same terms.

This is why a credit row states what it gives up — days of cover, width, or both — rather than repeating the cash figure the next column already shows.
Part 14

Market context

Shown, never gated.

Long-roll results open with VIX and the index, each with its percentile against its own last year.

VIX 12.40 · 5th percentile of 251 sessions  ·  S&P 500 6390.00 · 95th percentile
Low volatility and a high index — protection is on sale relative to the last year.

A bare "VIX 14.2" means nothing without knowing whether 14.2 is low. The percentile is the smallest honest way to say it.

Why high-and-low is the momentthe mechanics

You are buying the price difference between two strikes. When the market has run away from your floor, both strikes sit further out of the money where premium is thin, so moving up ten points costs less. A low VIX thins both further. Rolling up while the market is high also locks in a higher floor than you could afford later.

Nothing is blocked. "Market high and VIX low" is a timing judgement and it stays with you. The panel states where both sit so the prices below can be read against the conditions that produced them.
Part 15

Reading the results

Rejected candidates stay visible. That is the point.

What you seeWhat it means
credit + BP freedCleared every enabled criterion and satisfies credit ≥ 0 with buying power freed
acceptedCleared everything you asked for, but does not pay a credit and free buying power — a deliberate debit, most often
minimal buying power reliefA survivor that frees almost nothing next to the best available. Said plainly rather than badged as passing
delta above / below bandThe specific rejection worth reading. Above is the dangerous direction
delta unavailableNo delta came back for that strike. Not a delta of zero
invertedNegative width. A debit spread, margined on the net debit
net debit · modelledThe requirement is modelled rather than quoted — brokers differ
⚠ no long cost on fileAn inverted requirement is the long's cost. Without it the figure is understated
⚠ shortens durationThe expiration is earlier than the one you hold. A restructure, not a defense
clears break-evenLong mode: removed more width than it cost
below your going rateLong mode: bought time above $13.02 a day, all-in

The footer always states what actually filtered, what was ranked on, the haircut, the number of metered calls made, and your measured strike drift — so a surprising result set can be read back to the settings that produced it.

Part 16

When it finds nothing

An empty result should teach what your book will permit.

It never goes dark. When nothing clears, the nearest misses are shown with how far outside each one sits — so the answer to "why nothing?" is a distance, not a shrug.

Widen the delta band before anything else. It is the gate that rejects most often, and it is the one you calibrated.
Allow a debit — set the credit min negative. At 0DTE this is frequently the only real option.
Raise the duration ceiling. 150 days is a default, not a law — though note it can no longer hide the expiration you hold, which is exempt from it.
Raise the chain cap before blaming the data. Fourteen chains sampled out of fifty is a thinner surface than it looks, and the footer tells you which it was.
Check the liquidity guard. On a thin chain it can be doing all the rejecting by itself.
Look at Limits in force. A limit saved earlier (a strike range, a cash range, a delta band, a margin cap) can empty a search by itself. Remove the one that is too tight and search again.
Read the nearest misses. If they all miss on the same thing by a little, that is your answer.
"No roll warranted" is the engine working, not failing. It means the position is not in defense territory, and it cost you nothing to learn — the check runs before any chain is requested.
Part 17

What it does not do

Read this list as carefully as the rest.

—

It does not place orders. Nothing it shows you is staged, routed or transmitted anywhere.

—

It does not predict. Every rate it quotes is a historical measurement of your own filled trades, labelled as such. Your strikes drifted +3.07 a week; they are not required to keep doing so.

—

It does not model early assignment, dividends or pin risk.

—

It does not quote your broker's margin. A defined-risk requirement is arithmetic and will match. An inverted requirement is modelled as the net debit, and brokers differ — check yours before sizing on it.

—

It does not pair legs across departments. If two legs belong together, route them together.

—

It does not scan the book. One position at a time, chosen by you.

—

It does not see every expiration. Above the chain cap the surface is sampled, so a candidate can exist that was never loaded. The footer always says how many of how many.

—

It does not calibrate a call delta band. There is no short-call population in your history yet. The put band is borrowed and says so.

A missing number is never treated as zero. A blank strike is not strike 0; a missing bid is not a bid of 0; an empty cap box is not a cap of 0. Every one of those was once a real bug in this engine, and the property is now asserted at every entry point.
And when it refuses to price something, it says which of three things went wrong. The expiration was not among the chains loaded; the chain loaded but lists no contract at that strike; or the contract is listed and quoted no usable bid/ask. The first is a setting, the other two are the data — and a refusal that does not distinguish them sends you looking in the wrong place, which is exactly what happened on 16 September.
Part 18

New Position: searching for a trade you do not hold yet

Roll Choices ranks rolls of a position you hold. New Position searches the chain for one you do not.

Same promises as Roll Choices. It prices at the worst case (you pay the ask, take the bid), it never places a trade, and it does not forecast.
Part 19

The Protection check and the Market Drop Check

How much cover is enough, worked out from your own positions.

A fixed rule such as "one protection spread for every five positions" ignores what you actually hold. The Protection check replaces it with arithmetic: it reprices your whole book for a market gap and compares the loss with a limit you set.

The steps

  1. The gap. It moves every underlying down by the gap you choose (10% to start) and reprices every option you hold, with volatility rising the way it does in a real drop. This is the same calculation as the Market Drop Check, so the two screens agree to the dollar.
  2. The limit. You choose the loss you can accept as a percent of the account (15% to start). Inside it, the screen says Adequate. Over it, Not adequate, with the dollar shortfall.
  3. The fix. It prices one protection spread: a long put at the money and a short put below it (50 points wide and about 90 days out to start), using the volatility in your own positions. It shows what one costs, what one gives back in that gap, how many more you need, and the buying power they would tie up.
  4. On New Position it also adds the trade you are building, at the average per-contract loss of the weekly-income puts you already hold, so the answer is for the book after the trade.

Is it a good time to buy?

The check reads the VIX the screen already fetches and compares it with your buy level (16 to start). At or below it, protection is cheap relative to the last year and the screen says so. Above it, protection costs more and the screen suggests buying part of the amount or waiting. Nothing is blocked either way.

Rolling protection you hold

If a protection spread has 14 days or fewer left, the screen reminds you to roll it only if the roll pays you a credit, and otherwise to let it go and buy again when volatility is low. The Protection check counts only the protection spreads you have routed to the Protection department.

The button

Find the protection spread opens New Position as a debit put spread, with the days, the width and a bought-leg delta of about 0.50 already filled in. The normal engine then prices real quotes and ranks them. You choose.

On the dashboard

A Protection Check tile sits between Protection and Other Income in the department row. It shows the same gap loss, the limit and the number of protection spreads needed. Click it to open the Market Drop Check.

Settings you can change

SettingStarts atWhat it does
Gap tested10%How far the market is assumed to fall. A bigger gap shows a bigger loss.
Loss limit15% of the accountThe loss you can accept. A tighter limit needs more protection.
Buy when VIX is at or below16Your line between cheap and dear protection.
Width50 pointsDistance between the two puts of the protection spread.
Days out90How long the protection spread has to run.
An estimate, not a promise. The spread price comes from a model and the volatility in your own positions, and the gap loss moves every underlying together. It cannot see a gap through your strikes, a fill that fails, or a change in your broker's margin. These starting values are a starting point to adjust to your own account and tolerance. Nothing here is a recommendation to trade.

The Market Drop Check

For the full picture, open Tools › Market Drop Check. It shows eight market moves (−20%, −15%, −10%, −5%, −2%, +2%, +5%, +10%) and what each would do to your whole account, in dollars and as a percent of the account, two ways: repriced right now, and held to expiry, where every option is worth only what it is in the money. The held-to-expiry column understates the protection from a long put that still has months to run.

Under the first note the Market Drop Check now gives a verdict against your loss limit: it uses the same fall and the same limit as the Protection check, so the two always agree to the dollar. It says Adequate (the fall costs less than your limit) or Not adequate (over it, by how much), and when it is not adequate it offers Find the protection spread. To change the fall or the limit, use the boxes in the Protection check on Roll Choices or New Position.

Part 20

Cockpit reference card

The page to keep.

SettingDefaultIf you change it
Haircut100%Lower shows the optimistic fill. Rank on what you can fill
Search styleBalancedCautious 0.05 – 0.15, Balanced 0.08 – 0.25, Aggressive 0.15 – 0.35
Delta band0.08 – 0.25The gate that rejects most. Target 0.15
Quote life90 secondsOlder quotes are dropped. Press Refresh quotes
Duration ceiling — short150 daysAn absolute cap from today. Your own expiration is exempt
Duration ceiling — long400 daysLongs run far further out; one of yours added 169 days
Max chains — short mode14Each one is a metered call. Above this the list is sampled
Max chains — long mode12Each one is a metered call. Above this the list is sampled
Buying-power floor$0Auto-raised when BP used is over your warning level
Margin cap1.5 × currentBlank means 1.5×, not zero
Liquidity guard10% of midNever rejects a spread of $0.10 or less
Break-even floor — long mode1.00×Width removed per dollar spent
Example figures from the author's historyValueSample
Strike drift+3.07 pts/wk21 lineages across 196 rolls
Price of a day$13.02 /day /contract9 same-strike roll-outs, 1.6× spread
Roll-up value$4.24 per $132 rolls, $94,500 of width for $22,309
Down-and-out, all-in$25.33 /day10 rolls, all above the going rate
Delta band0.08 – 0.25121 short-put observations. Borrowed on calls
The one-line version. Short mode asks how do I defend this and answers in credit, buying power and delta. Long mode asks is protection cheap right now and answers in what a dollar bought. Neither places a trade, and every rate on screen is yours.