
Multiple Testing & the Deflated Sharpe Ratio
Best-of-160 BTC rule: IS Sharpe 1.14 is only 1.24× the pure-noise expectation : DSR = 0.70 (fail).
Best-of-160 in-sample Sharpe1.14
RESEARCH · WAREHOUSE · OPEN9 STRATEGIES · FOUR FACTORS · 12 SOURCES
CHRISTIAN.T.MACIONUTC+89 STRATEGIES12 DATA SOURCESOWNER-VERIFIED
A market-data view of the research book. No narrative. the table is the narrative. Every number on this page traces back to a public dataset and a reproducible notebook.
Statistics that survive discipline are statistics that didn't need to lie.
Asset class × regime coverage
Four asset classes × four regime states. Each cell lists the strategy (or two) that has a defensible claim on that intersection. drawn from the 9 quant projects on this page. Empty cells are intentional: a honest book has regimes it doesn't claim.
All 9 strategies
One card per quant project. Headline metric, one-line summary, and a canonical link to the long-form note on/projects/{slug}.

Best-of-160 BTC rule: IS Sharpe 1.14 is only 1.24× the pure-noise expectation : DSR = 0.70 (fail).
Best-of-160 in-sample Sharpe1.14

IS Sharpe 0.91 → OOS −0.03 : an honest decay; bootstrap CI straddles zero.
In-sample Sharpe0.91

Vol-targeting lifts Sharpe 0.27 → 0.39 and halves max DD (−62% → −30%).
Sharpe (raw)0.27

Implied > realized 85% of 36 yrs; predicts returns, Newey-West t = +6.5.
Years VRP > 085%of 36 yrs

ADF −2.11 (not cointegrated), half-life 208 d : the fade loses, as the test predicts.
ADF test statistic−2.11fail to reject unit root at 5%

Funding +11.9% annualized premium; fade IS 1.11 → OOS −0.05 (decayed post-2023).
Annualized funding+11.9%BTC perp, ~30-day centered mean

Vol-managed exposure: Sharpe 0.64 → 0.67, max DD −58% → −42%.
Sharpe (base)0.64

High-turnover signal wins gross (0.20 > 0.13) but loses net of cost : break-even 20 bps.
Sharpe (gross)0.20

A leak inflates Sharpe 0.59 → 5.07; the shift test exposes it as 88% phantom.
Clean Sharpe0.59
Strategy × Factor decomposition
Each strategy is scored against the four most-borrowed multiple-testing diagnostics: raw Sharpe, Probabilistic Sharpe Ratio (PSR), Deflated Sharpe Ratio (DSR), and Probability of Backtest Overfitting (PBO). Empty cells report n/an/a the metric was not computed in the source notebook, not omitted to hide a bad number.
| Strategy | Sharpe | PSR | DSR | PBO | Notes |
|---|---|---|---|---|---|
| 01Multiple Testing & the Deflated… | 1.14 | n/a | 0.70fails the multiple-testing adjustment | n/a | 2/4 |
| 02Cross-Sectional Momentum (18 coins) | 0.91 | n/a | n/a | n/a | 1/4 |
| 03Time-Series Momentum + Vol Targeting | 0.27 | n/a | n/a | n/a | 1/4 |
| 04The Variance Risk Premium (VIX… | n/a | n/a | n/a | n/a | 0/4 |
| 05Pairs Trading via Cointegration… | ≈ 0as the test predicted | n/a | n/a | n/a | 1/4 |
| 06Crypto Funding-Carry | 1.11 | n/a | n/a | n/a | 1/4 |
| 07Macro / Volatility-Regime Overlay | 0.64 | n/a | n/a | n/a | 1/4 |
| 08Backtest Engine + Cost Model | 0.20 | n/a | n/a | n/a | 1/4 |
| 09Look-Ahead Bias Audit (the shift… | 0.59 | n/a | n/a | n/a | 1/4 |
Data source registry
16 sources. 4 live feeds probe the upstream in real time; the rest are static research baselines. No proprietary feeds, no employer scrapes, no platform API keys. Each line carries its URL pattern and licence so a hiring manager can audit the data lineage with curl.
Registry last verified · live feeds re-probed every 60s.
| Source | URL | Cadence | Last sync | Status | Licence |
|---|---|---|---|---|---|
| Yahoo Finance (delayed quotes, free tier)4 equity + 1 ETF quotes via Cloudflare Worker proxy. | https://query1.finance.yahoo.com/v7/finance/quote?symbols=SPY,QQQ,DIA,BTC-USD | 60s | pending | Yahoo terms (delayed >=15 min, non-commercial) | |
| CoinGecko free tier (no API key)4 spot quotes via Cloudflare Worker proxy. | https://api.coingecko.com/api/v3/simple/price?ids=bitcoin,ethereum,solana,binancecoin | 60s | pending | Free tier, attribution required | |
| ECB SDMX (reference exchange rates)Daily reference rates; edge-cached for 1h. | https://data-api.ecb.europa.eu/service/data/EXR/D.USD+GBP+JPY.EUR+USD | 1h | pending | Public (European Central Bank, free re-use) | |
| GDELT 2.0 (global events)15-min event publish cadence; edge-cached for 15 min. | https://data.gdeltproject.org/gdeltv2/lastupdate.txt | 15min | pending | Public (GDELT Project, free re-use) | |
| FRED-equivalent (public macro time-series)US macro series, daily/quarterly frequency. | https://fred.stlouisfed.org/ to public CSV download per series | static | macro | Public domain (US Federal Reserve release) | |
| CBOE VIX Historical (free)Used by project 04 and 07. variance risk premium + regime classifier. | https://cdn.cboe.com/api/global/us_indices/daily_prices/VIX_History.csv | static | equity-deriv | Free for non-commercial redistribution | |
| Yahoo Finance (delayed quotes, free tier)Daily OHLCV equity / ETF data for cross-sectional and pairs work. | https://query1.finance.yahoo.com/v7/finance/download/{ticker} | static | equity-deriv | Yahoo terms (delayed ≥15 min, non-commercial) | |
| CFTC Commitment of Traders (COT)Positioning baseline for any carry/liquidity signal. | https://www.cftc.gov/dea/newdeacom.html. annual + weekly disaggregated reports | static | cftc | Public domain (US Government publication) | |
| CoinGecko free tier (no API key)Daily and intraday crypto price history across the 18-coin universe. | https://api.coingecko.com/api/v3/coins/{id}/market_chart | static | crypto-onchain | Free tier, attribution required | |
| Public-domain academic datasets (Bailey, López de Prado, Chan)Replicated baselines for DSR / multiple-testing papers. | https://www.quantresearch.org/ to published companion data | static | macro | Academic use, attribution required | |
| Treasury par-yield curve (US Treasury)Term-structure ground truth for any rates / curve work. | https://home.treasury.gov/resource-center/data-chart-center/interest-rates/daily-treasury-rates.csv | static | rates | Public domain (US Treasury publication) | |
| EIA petroleum spot prices (weekly)Commodity baseline for cross-asset regime overlays. | https://www.eia.gov/dnav/pet/pet_pri_spt_s1_d.htm | static | commodities | Public domain (US EIA) | |
| Binance public klines (delayed REST)Daily OHLCV on the BTC/ETH/SOL universe for project 02/03/05. | https://api.binance.com/api/v3/klines?symbol=BTCUSDT&interval=1d | static | crypto-onchain | Public REST endpoint, no key required | |
| Binance public funding-rate history (read)Source for project 06 funding-carry study. | https://fapi.binance.com/fapi/v1/fundingRate?symbol=BTCUSDT | static | funding | Public REST endpoint, no key required | |
| FRED-equivalent: World Bank open data (macro cross-country)Cross-country macro for sanity-checking single-country signals. | https://data.worldbank.org/indicator. open data API | static | macro | Open licence (CC-BY 4.0) | |
| FRED-equivalent: BIS real-effective-exchange-rateFX basket reference for any carry / FX-overlay discussion. | https://data.bis.org/topics/RPP | static | fx | Public (Bank for International Settlements, re-use permitted) |
Every dataset on this page is enumerated in the registry above. No employer-internal feeds. No scraped proprietary sources. No client data. A hiring manager at a regulated shop can audit the data lineage with curl and arrive at exactly the same numbers. The repository contains the notebooks that produced every figure shown here.
The 31-gate evaluation harness (G1 to G31) on /methodology explains how each strategy got its gate verdicts, and why most of the cells in the factor table are filled with an em-dash.
JUMP TO · ⌘K
LIVE COVERAGE · L1 / L2 / L3 · ⌘J
drag to rotate · hover pauses
data · Yahoo 6 + CoinGecko 4 + ECB FX + GDELT 15m · L1 = top-of-book · L2 = consolidated tape · L3 = full depth · 12 venues · 5 continents · UTC+8 home base