variance risk premium
Variance risk premium, split into diffusive and jump legs.
FerroRisk measures the premium between implied and realized variance on one typed path — then decomposes it into the diffusive and jump/tail components that actually drive it.
Problem
Why this needs one shared risk path
A raw implied-minus-realized number hides whether the premium is diffusive carry or compensation for jump/tail risk.
Realized-vol inputs, tenor, and estimator choice have to agree with the implied side or the premium is meaningless.
A tradable signal needs a normalized read against a rolling baseline, not just a level.
Workflow
How FerroRisk handles it
Measure realized variance
realized_vol over OHLC bars produces the realized leg on the same tenor and estimator the premium is quoted against.
Take the premium
variance_risk_premium(implied_vol, realized_vol, tenor, method) returns a typed VrpRead in both vol-point and variance units.
Decompose and normalize
A JumpDiffusionFit splits the premium into diffusive and jump legs via vrp_decomposition, and vrp_zscore scores it against a baseline mean and std.
Fit
What makes this FerroRisk-shaped
variance_risk_premium, vrp_decomposition, and vrp_zscore are public crate-root exports.
The jump-diffusion fit reuses the same Merton (1976) parameters the pricing engine already exposes.
Numerical edges fail loud with typed errors rather than returning a silently wrong premium.
Questions
Common concerns
Does it only return a single premium number?
No. VrpRead carries the premium in vol-point and variance units, and vrp_decomposition returns the diffusive and jump legs plus the jump share of the premium.
Which realized-volatility estimator is used?
You choose. The RvMethod passed to variance_risk_premium is recorded on the read, and the realized leg is computed with the same method so both sides agree.
Related searches
Continue the cluster
realized volatility estimators
Realized volatility estimators in Rust — close-to-close, Parkinson, Garman-Klass, Yang-Zhang, and jump-robust bipower variation — with a realized jump split, on one typed OHLC path.
implied correlation dispersion
Option-implied average pairwise correlation and the dispersion read for an index versus its constituents, in Rust — weighted-average vol, uncorrelated index variance, and the dispersion premium.
options risk engine
An options risk engine for pricing, Greeks, volatility surfaces, chain exposures, scenario attribution, and portfolio risk workflows.