Skip to content
All strategies

Strategies

Spot Gold Variance-Risk-Premium Regime, Long/Short: trade XAUUSD.SPOTMETAL by the trailing-year rank of CBOE GVZ minus gold's 21-session realized vol (1-DAY bars, hysteresis exits, flat ~45% of the time, unlevered)

Outcome: Verifying

GoldGvzVarianceRiskPremiumRegime

Spot Gold Variance-Risk-Premium Regime, Long/Short: trade XAUUSD.SPOTMETAL by the trailing-year rank of CBOE GVZ minus gold's 21-session realized vol (1-DAY bars, hysteresis exits, flat ~45% of the time, unlevered)

Hypothesis

Single-instrument, long/short regime strategy on spot gold (XAUUSD.SPOTMETAL, 1-DAY bars, Dukascopy mid prices, history from 2003; the signal starts in mid-2008 when GVZ begins). Signal: the gold variance risk premium VRP_t = GVZ_{t-1} - RV21_t, where GVZ is the CBOE Gold ETF Volatility Index (30-day implied vol of GLD options, in vol points) and RV21 is the annualized close-to-close standard deviation of the last rv_lookback daily log returns of XAUUSD.SPOTMETAL x sqrt(252) x 100. Each session the strategy……Show moreShow less

Single-instrument, long/short regime strategy on spot gold (XAUUSD.SPOTMETAL, 1-DAY bars, Dukascopy mid prices, history from 2003; the signal starts in mid-2008 when GVZ begins). Signal: the gold variance risk premium VRP_t = GVZ_{t-1} - RV21_t, where GVZ is the CBOE Gold ETF Volatility Index (30-day implied vol of GLD options, in vol points) and RV21 is the annualized close-to-close standard deviation of the last rv_lookback daily log returns of XAUUSD.SPOTMETAL x sqrt(252) x 100. Each session the strategy computes the percentile rank of VRP_t within its own trailing rank_window values. It goes LONG when the rank reaches entry_rank, meaning option buyers are paying an unusually rich premium over realized gold risk. It goes SHORT when the rank falls to 1 - entry_rank, meaning implied vol is cheap relative to realized turbulence. Each side is held with hysteresis until the rank crosses back through exit_band around the median. This is the variance-risk-premium return predictor of Bollerslev, Tauchen & Zhou (2009, RFS, 'Expected Stock Returns and Variance Risk Premia') applied to gold's own options market. It is also a deliberate CROSS-ASSET test of the one VRP mechanism that has survived in this factory: 'ETH Variance-Risk-Premium Regime Long on Deribit's Own Linear Perp' (promoted, Sharpe 0.81, avg trade +2.66%, 36 trades). Novelty vs the corpus: no prior hypothesis uses GVZ or any gold implied-vol input. All nine prior SPOTMETAL runs are intraday session-breakout/drift rules, OHLCV-only reversion, or the BTC/XAU relative-momentum rotation, so none of them is a vol-premium regime trade. SPOTMETAL is 0.2% of the corpus and BTC/Binance is over-concentrated, so this spends an unused series. Execution: SPOTMETAL is a session venue, so a decision taken on daily bar N's close (17:00 New York) fills at bar N+1's OPEN (the 18:00 session reopen), which the platform supports natively (next_open_fill). No stop orders are needed. Risk-control route (b): signal/regime exit with capped sizing. Position notional is fixed at 100% of equity (unlevered, never above 100%), and long and short do not overlap because the account is netting and a flip closes before reversing. Overnight financing is charged by the engine's funding ledger on every 17:00 roll (long pays fed funds + 2.5%/yr, short receives fed funds - 2.5%/yr, Wednesday x3), and the edge arithmetic below includes it. Report long-leg and short-leg PnL separately so the analyst can tell whether the long side alone (the side with the survivor precedent) carries the result. DATA: GVZ is NOT yet an injectable supplementary key (only VIX is mirrored from FRED). FRED publishes it as GVZCLS (daily from 2008-06-03), and the existing FRED macro collector should add it under the key US_GVZCLS with the same availability-time stamping as US_VIXCLS: a value appears at 00:00 UTC the day after its date. A daily decision at the 17:00 NY gold close therefore reads the PREVIOUS US session's GVZ close through supp_as_of('US_GVZCLS'), never a same-day value. See data_needs.

Bucket choice: the long/short direction (22% vs the 45% target share), plus an almost untouched venue (SPOTMETAL 0.2%) and asset class, away from the Binance USD-M concentration (52.8%). The mechanism is the factory's single surviving implied-vol premium mechanism (ETH DVOL VRP regime, promoted), tested on an independent market whose implied-vol index has 18 years of daily history. That is a much larger sample than the ETH survivor's 36 trades, so it is a genuinely informative out-of-sample test of the mechanism rather than another crypto variant. The failed DVOL-family runs differed: they were BTC perps with momentum/reversal overlays (overfit/fee_edge) or straddle purchases. This design keeps the survivor's simple rank-plus-hysteresis structure and adds the symmetric short leg, reported separately.

Implementation

Trades spot gold long at a high trailing-window GVZ-minus-realized-vol percentile and short at a low percentile. Uses sample standard deviation of daily log returns, annualized by sqrt(252) in vol points, and a current-inclusive midpoint percentile rank. Longs exit at rank <= 0.5 - exit_band; shorts exit at rank >= 0.5 + exit_band. Both exit after 60 held daily sessions or unavailable/stale GVZ. Daily close decisions fill at the next session open. Entries target 100% of settled equity, rounded down to 0.01 ounces, without leverage or stops; engine margin guards, spreads and financing apply.

Implements the unchanged hypothesis using the collected US_GVZCLS feed through supp_as_of; publication stamping supplies the prior US-session GVZ without an additional lag. Observation timestamps are read from the base cached series solely to enforce the fixed five-calendar-day freshness limit. No substitute price or implied-vol feed is used. Bounded incremental return moments and bounded VRP history keep per-session work limited to the rank window. Position opening timestamp and held-session count are scalar state for restart persistence; indicator buffers are rebuilt by historical warmup. The base closes a position before allowing a subsequent opposite entry, so sides never overlap. The standard per-position ledger retains long/short direction for separate analyst PnL attribution. All research parameter names and fixed values are preserved; no silent parameter clamps or expanded tuning permissions are introduced.

Verification Results

The missing GVZ supplementary feed has been collected from official FRED GVZCLS into data/supplementary/macro/US_GVZCLS.parquet: 4622 observations from 2008-06-03 through 2026-10-13. The existing load_referenced_macro path supplies US_GVZCLS at observation date plus one day. Implement the unchanged hypothesis using this point-in-time feed. Gold bar history remains subject to the ordinary data audit; do not substitute prices or fabricate missing observations.

Backtest and paper results are hypothetical. Trading involves risk of loss.