Methodology#
Approach#
The project runs two workstreams over CAISO data.
Spreads. From the hub APNode LMP, compute the basic price relationships: DAM-RT spreads (day-ahead hourly price minus the average of the matching real-time intervals at the same location), location spreads between hubs, time spreads within an operating day, and TBx storage value (average of the x most expensive hours minus the x cheapest). Definitions and formulas live on the Formulas page.
Quantos. Build toward weather-contingent power instruments. The gas leg comes from CAISO fuel-region prices (PG&E and SoCal Citygate) and feeds market implied heat rate, spark spread, and heat-rate call option calculations. The weather leg is HDD/CDD indices computed from daily station temperatures. The link between them is conditioning: generator-level outage reasons are weather-driven capacity reductions, and regional temperature indices are matched to hubs so that the weather signal aligns with prices.
Implementation Notes#
All computation uses Polars vectorized expressions; no row loops. Dense time-series charts render on Bokeh’s WebGL canvas.
Timestamps are stored as naive UTC everywhere on disk; US/Pacific views are computed at analysis time, never stored.