A Label Is The Least Informative Part Of A Structure
Four names carry most of the weight in defined-risk options software: call credit spread, put credit spread, iron condor, iron butterfly. Each name describes a shape. None of them says which contracts are involved, which side of the order book each leg was priced from, how much cash the structure reserves, or which of your limits it came close to breaking. Two rows carrying the same name can be entirely different positions.
CVEST shows a ranked comparison of candidates beside the count of combinations it examined and the count that fit your preferences. The ranking is arithmetic performed on quotes, fees and the limits you set. It is a pricing heuristic, not a recommendation, and the workspace says so in the same words: the leading structure leads by net credit relative to reserved risk, and that is a ranking heuristic, not a forecast of profit.
So the skill worth having is not choosing from the list. It is reading a row: what was compared before anything was ranked, what each figure counts, and what the skipped rows say about your own settings.
What Was Compared Before Anything Was Ranked
The comparison starts from a narrow slice of the ETH chain. Contracts are kept only if they expire inside your horizon, which defaults to between 2 and 36 hours away, and of the expiries that survive, only the nearest two are used. Everything further out is not ranked low; it is never built into a candidate.
Within each expiry, calls are taken from about the spot price upward and puts from about the spot price downward. Among those with a quoted delta, the five whose absolute delta sits closest to your target — 0.30 by default — become short legs, and each is paired with up to three protective strikes further out. Crossing every call pair with every put pair produces the iron condors; iron butterflies are built at the strike nearest spot with wings 50, 100 and 150 dollars wide.
Some combinations never reach the list at all. One whose legs lack a usable delta is discarded, as is one whose quantity misses a whole number of lots, or whose legs do not share a single contract multiplier. Those are dropped rather than shown as skipped. The workspace returns at most 80 candidates and lists the first 30 of whatever filter you select.
Open The Legs
Expanding a row replaces the summary with the structure: a modeled payoff curve, a ledger of the legs, a statement of what the protection does, three secondary figures, and a venue route comparison you can request separately.
The ledger is the part worth slowing down on. Each line gives the side, the quantity, whether it is a call or a put, the strike, the expiry date, the price in ETH and the multiplier per contract. Read it as a sentence: this many contracts bought at this strike, this many sold at that one, expiring on this date. A four-leg structure has four such lines and four times the gross exposure of a single leg, which is one reason a condor fails a budget a spread passes.
Those prices are not mid quotes. A leg being bought is priced at the ask and a leg being sold at the bid, from the executable side of the book. A quote older than 30 seconds is not used, and a leg that cannot be priced leaves the structure carrying a missing or stale quote reason rather than a guessed number. If the quoted size is smaller than the quantity required, the row carries an insufficient size reason instead. Missing data is never filled in with assumed prices.
Four Figures On The Row, And What Each One Counts
The table below is a reading aid for a row, not a score and not a checklist to total up. The right-hand column is the one that matters: each figure answers one question and is silent on the rest.
| Figure on the row | What it counts | What it does not tell you |
|---|---|---|
| Net premium | Premium from the executable sides of the book, less estimated entry fees, converted at the ETH index price | Whether any of it is kept: premium becomes cash flow only after a close or settlement, exit costs included |
| Terminal payout bound | The distance between the matched strikes, which caps the combined terminal option payout | Anything about collateral value, margin, or a liquidation before expiry |
| Risk reserve | Strike width, plus the cost of the protective legs, plus a fee allowance of twice the taker rate on gross notional | What a close would actually cost at the moment you request one |
| Gross notional | Every leg at quantity times multiplier times spot, protective legs counted the same as short ones | The size of a loss; it is an exposure measure a budget can be set against, nothing more |
| Eligible or skipped | Whether any of your limits was breached by this structure at the instant of that scan | Whether the same structure still qualifies on the next market snapshot |
Two of these are routinely confused. The payout bound is a property of the strikes. The reserve is a cash figure containing that bound, the money spent on protection, and an allowance for fees on both sides. A budget set against notional and a budget set against reserve therefore exclude different structures, and one setting decides which applies.
Read The Skipped Rows As Carefully As The Shape
A skipped row is more informative than an eligible one, because it names the limit that produced the skip. The reasons are finite and each maps to one condition.
- Net premium below minimum — the credit after estimated fees is under your minimum credit setting.
- Above your execution budget — gross notional, or the reserve, exceeds the budget, depending on which the budget is set against.
- Above your loss allowance — the reserve alone is larger than the loss allowance.
- Missing or stale executable quote — a leg had no usable price on its side of the book inside the freshness bound.
- Insufficient quoted size — the book showed a price but not enough size for the quantity required.
- ETH index is stale — the index price behind every USD conversion is too old, missing, or timestamped ahead of the clock.
A separate panel counts how many combinations each reason applied to, and states plainly that a structure may fail more than one condition. The counts therefore sum across reasons, not across structures, and will not add up to the number of rows. Read them as a diagnosis of which setting is doing the excluding, not as a queue of structures awaiting approval.
Eligible means one thing only: none of those conditions fired at that snapshot. The workspace says as much when a row qualifies, and adds that quotes, margin and protection are rechecked before each order rather than trusted from the scan.
The Score Is A Heuristic, And Not The Order Of The List
Each candidate carries a score, and the score is short arithmetic with no view in it. It takes net credit as a percentage of the reserve, subtracts a penalty for how far the short legs sit from your delta target, and subtracts a smaller one for the structure’s net directional exposure. That is the whole calculation: no probability, no expected value, no model of where ETH is going, no memory of anything before this snapshot.
It also does not set the order of the list. Rows are sorted eligible before skipped, then by earliest expiry, and only then by score. The top row is the highest-scoring eligible structure in the nearest expiry, not the highest-scoring overall, so a higher-scoring candidate one expiry out sits below rows that scored lower.
A ranking answers which structure scores highest on net credit against reserved cash, after the score subtracts a penalty for distance from your target delta and for net delta. It does not answer whether to hold any of them.
When the loop runs, it takes the first eligible candidate in exactly that order, then applies gates the scan knows nothing about: realized losses against the loss allowance, whether this reserve still fits inside what remains of it, and a cooldown since the last position closed. In live mode it re-reads the account, refuses instruments already carrying an external position or resting order, requires available ETH worth at least the reserve, and abandons the entry if the priced legs have moved against the scan.
What The Comparison Cannot Tell You
The payoff curve is modeled at expiry. Premium is held in ETH and converted at each modeled settlement price along the curve, which is why the shape moves with the ETH price as well as with the strikes. It is a picture of terminal outcomes, not a path, and says nothing about what the position is worth before expiry.
The protection is narrower than it sounds. Protective options cap the terminal payout of the matched structure. They do not remove trading fees, do not guarantee liquidity when you want out, and leave collateral movement, margin and liquidation before expiry as separate risks, which is what the workspace states beside every expanded structure. A delta near 0.30 is a sensitivity to a one dollar move in ETH before the multiplier, and the product is explicit that it is neither a probability nor a promise.
Everything on the row decays. Quotes are used only inside a 30-second freshness bound, and the venue route comparison shows the seconds of validity remaining and warns outright once it has expired, rather than displaying stale prices as current. Automated execution is also paused: the live-execution flag defaults to off in the service environment, and starting the loop in live mode refuses until it is set deliberately. Today a comparison is something you inspect in paper or replay mode.
First Steps
- Expand a row before reading a single figure on it. Count the legs, read the strikes and the expiry, and check which side of the book each leg was priced from.
- Open three skipped rows and write down the reason each one carries. If a reason repeats, the limit producing it is a setting of yours, not a property of the market.
- Take one skipped row and name the exact figure that would have to change for it to qualify. Then change that setting on purpose, or leave it alone on purpose; settings cannot be changed while a cycle is active, so decide before one opens.
What A Ranked Row Is Actually For
The honest use of this comparison is diagnostic. It shows what the current book supports, priced on executable quotes with fees included, filtered by limits you wrote down yourself. When nothing is eligible, that is the more useful reading of the two: the reasons tell you whether the market is thin, your credit floor is high, or your budget and your loss allowance describe two different appetites.
What no field does is tell you a structure is worth entering. The route comparison does show a model-estimated return on reserve, which divides a scenario payoff by the reserved cash, and the workspace labels it as a model estimate that is not a validated profit forecast. That is a scenario output, not a judgement: prices at one instant have no opinion about whether you should hold the position.
The question worth settling in a private beta is narrower and answerable today: opening the legs behind a label, can you reconstruct every figure on the row from what you see, and can you say which of your settings produced the decision beside it. Whether to act on one is not a question this software answers, and it does not claim to.
Read the risk information and check the current product scope before evaluating a workflow.
