Skip to content

Drop the four CBOE implied-vol indices from the registry - #19

Merged
mspinola merged 1 commit into
mainfrom
claude/drop-vol-indices
Aug 21, 2026
Merged

Drop the four CBOE implied-vol indices from the registry#19
mspinola merged 1 commit into
mainfrom
claude/drop-vol-indices

Conversation

@mspinola

Copy link
Copy Markdown
Owner

VIX, VXN, OVX and GVZ were fetchable but nothing kept them. The workspace notes had recorded them as "deliberately let go" since July while they sat here in the registry, so every unscoped --bars --domain equities fetched them straight back.

That is what happened on 2026-08-20: a new scheduled equities task ran unscoped, the four reappeared, and the whole equities half moved forward a month on every replica. The prose and the registry disagreed, and the registry is what runs.

Removing them here is the only thing that actually stops it. Scoping the producer task fixes that one caller; any other unscoped fetch, from any checkout, would undo it.

Consequence, recorded in the file rather than left to be discovered

npf/trading_riot maps all four to a realized counterpart for a variance risk premium study:

VOL_MAP = {"VIX": "ES", "VXN": "NQ", "OVX": "CL", "GVZ": "GC"}

and its data.py documents fetching them with --bars --symbols VIX. After this change that command is a silent no-op:

$ marketdata-update --bars --domain equities --symbols VIX
yfinance: no registry symbols resolve to this provider among ['VIX']
bars_yahoo: wrote=0 failed=0
exit: 0

Exit 0, nothing written. So the note left in registry.yaml says exactly this, at the point someone would look, and says re-adding the block is the fix if that work resumes. trading_riot is not scheduled and not imported by src/, so this is a bench dependency rather than a running book, but it is a real one.

Verification

equities registry now: SPY VTI QQQ IWM EFA EEM TLT IEF SHY GLD AGG   (11)

Matches the producer store, which already has the four parquets and their manifest entries removed. Suite 200 passed, 12 skipped, ruff clean. The month-end pin is untouched: the frozen copy never carried these.

Coordination note

The same edit already exists locally on the Windows producer and was never pushed. Once this merges, that checkout should be reset onto origin/main rather than pushing its own version, or the two will diverge on the same file.

🤖 Generated with Claude Code

VIX, VXN, OVX and GVZ were fetchable but nothing kept them. The workspace notes had
recorded them as "deliberately let go" since July while they sat here in the registry,
so every unscoped `--bars --domain equities` fetched them straight back. That is what
happened on 2026-08-20: a new scheduled equities task ran unscoped, the four
reappeared, and the whole equities half moved forward a month on every replica. The
prose and the registry disagreed, and the registry is what runs.

Removing them here is the only thing that actually stops it. Scoping the producer task
would fix that one caller; any other unscoped fetch, from any checkout, would undo it.

CONSEQUENCE, recorded in the file rather than left to be discovered: npf/trading_riot
maps all four to a realized counterpart (VIX->ES, VXN->NQ, OVX->CL, GVZ->GC) for a
variance risk premium study, and its data.py documents fetching them with
`--bars --symbols VIX`. That command now prints "no registry symbols resolve to this
provider" and exits 0 having written nothing, which is a silent no-op rather than an
error. Re-adding the block is the fix if that work resumes; the note in registry.yaml
says so at the point someone would look.

Store side is already done on the producer: the four parquets and their manifest
entries are gone, leaving 11 equities symbols, which is what this registry now lists.

Suite 200 passed, 12 skipped, ruff clean. The month-end pin is untouched: the frozen
copy never carried these.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@mspinola
mspinola merged commit 54e77e4 into main Aug 21, 2026
5 checks passed
@mspinola
mspinola deleted the claude/drop-vol-indices branch August 24, 2026 23:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant