Skip to content

Revert "Drop the four CBOE implied-vol indices from the registry" - #21

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

Revert "Drop the four CBOE implied-vol indices from the registry"#21
mspinola merged 1 commit into
mainfrom
claude/restore-vol-indices

Conversation

@mspinola

Copy link
Copy Markdown
Owner

Reverts the merge of #19, and adds the note whose absence caused it.

Why

#19 removed VIX, VXN, OVX and GVZ on the grounds that nothing kept them. Something does: npf/trading_riot maps each 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.

#19's own commit message recorded that dependency — as a consequence to accept. It is a reason not to remove them.

Its other premise expired

"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."

True when written; reverted on the producer shortly afterwards. That left registry and store disagreeing — registry 11, store 15 — and since nothing prunes unregistered symbols, the four would have sat in the store as orphans no run ever refreshed again, mirrored to both replicas in that state by the next sync.

After this change they agree at 15, verified against the producer's manifest:

registry: 15   store: 15
registered but not in store: none
in store but unregistered  : none

The note

These four have now been removed twice, both times because a grep of this repo comes back clean while the note recording their retirement lived somewhere else. So the reason they are registered is written next to them in registry.yaml, not in a document that can drift out of step with the file that actually runs:

Absence of a local reference is not evidence of absence of a dependency.

It also says what to do if trading_riot really is retired: delete the four and say so there, in the same commit, rather than leaving the next reader to rediscover the dependency from a failed fetch.

Verification

ruff check src tests clean. pytest tests/ -q -m "not network" — 205 passed, 12 deselected. The tests are insensitive to this either way since #20; they ask the registry for a symbol rather than naming one.

🤖 Generated with Claude Code

This reverts the merge of #19, and adds the note whose absence caused it.

#19 removed VIX, VXN, OVX and GVZ on the grounds that nothing kept them. Something
does: npf/trading_riot maps each 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`. #19's own commit message recorded that
dependency as a consequence to accept; it is a reason not to remove them.

Its other premise no longer holds either. It states "the store side is already done
on the producer ... leaving 11 equities symbols", which was true when written and
was reverted shortly afterwards. Registry and store had been left disagreeing --
registry 11, store 15 -- and since nothing prunes unregistered symbols, the four
would have sat in the store as orphans that no run ever refreshed again, mirrored
to both replicas in that state. They now agree at 15.

The four have been removed twice, both times because a grep of THIS repo comes back
clean and the note recording their retirement lived somewhere else. So the reason
they are registered is now written next to them in registry.yaml rather than in a
document that can drift out of step with the file that actually runs. Absence of a
local reference is not evidence of absence of a dependency, and that sentence is
the one worth keeping.

ruff clean; `pytest tests/ -q -m "not network"` 205 passed, 12 deselected. The
tests are insensitive to this either way since #20 -- they ask the registry for a
symbol rather than naming one.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@mspinola
mspinola merged commit 76efd3f into main Aug 21, 2026
5 checks passed
@mspinola
mspinola deleted the claude/restore-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