Skip to content

Add the options market data notebook and the implied-move rescaling helper - #7

Merged
bradfordlynch merged 1 commit into
mainfrom
options-market-data
Oct 10, 2026
Merged

bradfordlynch merged 1 commit into
mainfrom
options-market-data

Conversation

@bradfordlynch

Copy link
Copy Markdown
Contributor

Summary

  • New notebooks/04_options_market_data.ipynb: reads the option-implied-stats item, then uses the implied move as an event-specific scale for a submission's predictions. The score is invariant to a uniform affine remap, so only a per-event factor can move it.
  • The naive rescale (pivot 0.5, linear in the move) lowers R-squared for both reference baselines. Pivoting at the submission's own mean with a square-root factor raises it for Gemini (0.103 to 0.108 on covered 2026Q3 events) and leaves GPT-5 nano flat. The Stargazer table has eight columns: surprise only, surprise plus the option statistics as regressors, and per baseline the surprise with the prediction as submitted, naively scaled, and adjusted. A final cell reports the competition's own delta_r_squared on the full quarter.
  • scale_by_implied_move in examples.option_stats implements both rules, with tests.
  • The bundled 2026Q3 sample now carries the item on its six events, so the parsing cells run offline; the regression cells need the live archive with the item and baseline predictions.
  • README, data/README.md, the package docstring, and pointers in notebooks 01 and 03 updated.

Test plan

  • uv run ruff check . && uv run ruff format --check .
  • uv run mypy
  • uv run pytest (108 passed)
  • EM_API_KEY= uv run pytest --nbmake notebooks/ (all five notebooks in sample mode)
  • Live execution of notebook 04 against the prod 2026Q3 archive; table and chart inspected

🤖 Generated with Claude Code

…elper

Notebook 04 reads the option-implied statistics item and uses the implied
move as an event-specific scale for a submission's predictions. The score is
invariant to a uniform affine remap, so only a per-event factor can move it.
The naive rescale (pivot 0.5, linear in the move) lowers R-squared for both
reference baselines; pivoting at the submission's own mean with a square-root
factor raises it for Gemini and leaves GPT-5 nano flat. The table has eight
columns: surprise only, surprise plus the option statistics as regressors,
and per baseline the surprise with the prediction as submitted, naively
scaled, and adjusted, followed by the competition's own delta R-squared on
the full quarter.

scale_by_implied_move in examples.option_stats implements both rules, with
tests. The bundled 2026Q3 sample now carries the item on its six events so
the parsing cells run offline; the regression cells need the live archive.
@bradfordlynch
bradfordlynch merged commit 450204f into main Oct 10, 2026
4 checks passed
@bradfordlynch
bradfordlynch deleted the options-market-data branch October 10, 2026 03:27
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