{"openapi":"3.1.0","info":{"title":"BTC Strategy Data API","description":"Read-only **backtested / modelled historical** performance data for a set of BTC trading strategies, for **professional / institutional** use under a global license.\n\nPast performance is not indicative of future results — factual historical data, **not investment advice, not a recommendation, not a forecast.**\n\n**Envelope:** every success is `{ data, meta, links }`; every error is `{ error: {code, message, details}, meta }`. `meta` carries the factual register, `dataset_version`, `generated_utc`, and `timing_ms`.\n\n**Risk rescale:** `risk_pct` linearly rescales returns (`ret' = ret × risk/base_risk`); curve recompounded and CAGR/max-drawdown recomputed. Sharpe, Sortino and correlation are scale-invariant. `risk_pct` is clamped to `max_modelled_risk_pct`.\n\n**Versioning:** Endpoints are versioned under /v1. Additive, backward-compatible changes ship within v1. Breaking changes ship under /v2; the prior version is supported for at least 90 days with `Deprecation` and `Sunset` response headers. Field removals/renames and any envelope change are considered breaking.\n\n**Access:** ALL historical data is **free — no key required**. Catalogue, correlation, per-strategy `stats`/`returns`/`curve`, full `export`, and book-level `summary` are open so you can verify every track record against your own model. Aliases only — strategy mechanism stays sealed. The **live signals** are the product (separate keyed API). **Rate limits:** none today. See the docs to subscribe for live signals.","contact":{"name":"BTC Alpha","url":"https://btcalpha.com.au/"},"license":{"name":"Global data license (professional/institutional use)"},"version":"0.1.0"},"servers":[{"url":"https://btc-strategy-data-api.fly.dev","description":"production"},{"url":"http://127.0.0.1:8100","description":"local"}],"paths":{"/healthz":{"get":{"tags":["infra"],"summary":"Liveness + dataset summary","description":"Liveness check for monitoring — is the service up, and how many strategies are loaded.","operationId":"healthz","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HealthEnvelope"},"example":{"data":{"status":"ok","strategy_count":14},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast."},"links":{}}}}}}}},"/readyz":{"get":{"tags":["infra"],"summary":"Readiness (dataset integrity)","description":"Readiness gate for deploys/integration — confirms the dataset loaded and passes its integrity checks before you depend on it.","operationId":"readyz","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReadyEnvelope"},"example":{"data":{"ready":true,"checks":{"manifest_loaded":true,"count_matches":true,"per_strategy_loaded":true,"correlation_dims":true}},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast."},"links":{}}}}},"503":{"description":"Service Unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/version":{"get":{"tags":["infra"],"summary":"API + dataset version","description":"Pin the dataset_version you analysed for reproducibility — plus the API version, stability and the modelled-risk cap.","operationId":"version","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VersionEnvelope"},"example":{"data":{"api_version":"0.1.0","stability":"stable","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","window":{"from":"2018-08-14","to":"2026-06-24"},"max_modelled_risk_pct":0.1},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast."},"links":{"self":"/version","docs":"/docs"}}}}}}}},"/v1/strategies":{"get":{"tags":["strategies"],"summary":"List strategies","description":"Scan the catalogue for candidate return streams to add to your book — names, base risk %, verification state and headline backtested stats at a glance. Free — no key required.","operationId":"listStrategies","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StrategyListEnvelope"},"example":{"data":[{"id":"helios","name":"Helios","blurb":"The flagship — the highest backtested return in the lineup, and one of its most independent.","tv_status":"provisional","instrument":"BTC-PERPETUAL","base_risk_pct":0.025,"leverage_typical":1.59,"leverage_max":11.4,"verification_state":"dual_verified","headline":{"cagr_pct":50.5338,"max_drawdown_pct":-33.3162,"sharpe_daily_annualized":1.1807,"profit_factor":2.598,"trade_count":240}}],"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast.","count":14},"links":{"self":"/v1/strategies","summary":"/v1/summary","dataset":"/v1/dataset"}}}}}}}},"/v1/summary":{"get":{"tags":["aggregate"],"summary":"Book-level summary","description":"Gauge the diversification of the whole set in one call — mean pairwise correlation and effective bets (how many independent bets the 14 behave like). Preview returns the snapshot; the equal-weight book performance (what holding them together would have done) is full-tier.","operationId":"getSummary","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SummaryEnvelope"},"example":{"data":{"strategy_count":14,"coverage":{"from":"2018-08-14","to":"2026-06-24"},"mean_pairwise_correlation":0.298,"equal_weight_book":{"n_days":2871,"net_return_pct":1840.2,"cagr_pct":44.1,"max_drawdown_pct":-28.7,"sharpe_daily_annualized":1.62},"diversification":{"mean_correlation":0.298,"most_correlated":{"pair":["atlas","hyperion"],"correlation":0.927},"least_correlated":{"pair":["helios","kronos"],"correlation":-0.094},"effective_bets":4.7}},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast."},"links":{"self":"/v1/summary","correlation":"/v1/correlation"}}}}}}}},"/v1/dataset":{"get":{"tags":["dataset"],"summary":"Dataset metadata + provenance","description":"The provenance you cite when you put these numbers in front of your IC — window, engine, cost model and dataset version behind every figure.","operationId":"getDataset","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatasetEnvelope"},"example":{"data":{"version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","window":{"from":"2018-08-14","to":"2026-06-24"},"strategy_count":14,"engine":"Deribit-native BTC-PERPETUAL bar-by-bar DRY_RUN backtest (keyless)","data_source":"public Deribit chart history","methodology_url":"https://docs.btcalpha.com.au/docs/methodology/overview","strategies":[{"id":"helios","name":"Helios","verification_state":"dual_verified"}]},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast."},"links":{"self":"/v1/dataset","strategies":"/v1/strategies"}}}}}}}},"/v1/correlation":{"get":{"tags":["aggregate"],"summary":"Cross-strategy correlation matrix","description":"See how independent the strategies are from each other before you blend — the raw material for diversification. Pearson correlation of aligned periodic returns; risk-invariant. Optional `ids` subset. Free — no key required.","operationId":"getCorrelation","parameters":[{"name":"period","in":"query","required":false,"schema":{"type":"string","description":"daily | weekly","default":"daily","title":"Period"},"description":"daily | weekly"},{"name":"ids","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"optional subset of strategy ids","title":"Ids"},"description":"optional subset of strategy ids"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CorrelationEnvelope"},"example":{"data":{"ids":["helios","atlas"],"matrix":[[1.0,0.41],[0.41,1.0]]},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast.","period":"daily","note":"Pearson on aligned periodic returns; risk-invariant."},"links":{"self":"/v1/correlation","export":"/v1/export"}}}}},"404":{"content":{"application/json":{"example":{"error":{"code":"not_found","message":"unknown strategy 'nope'"},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast."}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Unprocessable Entity"}}}},"/v1/export":{"get":{"tags":["aggregate"],"summary":"Aligned returns matrix + correlation (json|csv)","description":"Pull every strategy's aligned return series as one matrix — drop it straight into your own optimiser or correlation analysis against your book. Plus the correlation matrix; `risk_pct` modelled-rescales returns per strategy (correlation unchanged). CSV is a raw table (not enveloped). **Free — no key required.**","operationId":"getExport","parameters":[{"name":"period","in":"query","required":false,"schema":{"type":"string","description":"daily | weekly","default":"daily","title":"Period"},"description":"daily | weekly"},{"name":"risk_pct","in":"query","required":false,"schema":{"anyOf":[{"type":"number","exclusiveMinimum":0},{"type":"null"}],"title":"Risk Pct"}},{"name":"format","in":"query","required":false,"schema":{"type":"string","description":"json | csv","default":"json","title":"Format"},"description":"json | csv"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportEnvelope"},"example":{"data":{"ids":["helios","atlas"],"rows":[{"t":"2018-08-16","rets":{"helios":0.0593}}],"correlation":{"ids":["helios","atlas"],"matrix":[[1.0,0.41],[0.41,1.0]]}},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast.","period":"daily","modelled":false},"links":{"self":"/v1/export"}}}}},"404":{"content":{"application/json":{"example":{"error":{"code":"not_found","message":"unknown strategy 'nope'"},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast."}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Unprocessable Entity"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Forbidden"}}}},"/v1/strategies/{sid}":{"get":{"tags":["strategies"],"summary":"Strategy metadata + provenance","description":"Due diligence on one strategy before you allocate — provenance and parameters behind its numbers: base risk, instrument, window, cost model, and **implied leverage** (`leverage_typical` ~1× and `leverage_max` up to ~15×). Signals imply LEVERAGED positions, not 1:1 deployment — size to your own book.","operationId":"getStrategy","parameters":[{"name":"sid","in":"path","required":true,"schema":{"type":"string","title":"Sid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MetadataEnvelope"},"example":{"data":{"id":"helios","name":"Helios","blurb":"The flagship — the highest backtested return in the lineup, and one of its most independent.","tv_status":"provisional","instrument":"BTC-PERPETUAL","base_risk_pct":0.025,"leverage_typical":1.59,"leverage_max":11.4,"verification_state":"dual_verified","window":{"from":"2018-08-15","to":"2026-06-24"},"engine":"Deribit-native BTC-PERPETUAL DRY_RUN backtest (keyless)","data_source":"public Deribit chart history","denomination":"BTC (inverse, BTC-settled)","inception":"2018-08-15","methodology_url":"https://docs.btcalpha.com.au/docs/methodology/overview","backtest_assumptions":{"commission_bps_per_side":5,"slippage_ticks":2}},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast."},"links":{"self":"/v1/strategies/helios","stats":"/v1/strategies/helios/stats","returns":"/v1/strategies/helios/returns","curve":"/v1/strategies/helios/curve"}}}}},"404":{"content":{"application/json":{"example":{"error":{"code":"not_found","message":"unknown strategy 'nope'"},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast."}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Unprocessable Entity"}}}},"/v1/strategies/{sid}/stats":{"get":{"tags":["strategies"],"summary":"Backtested stats + full fund-DD metrics (optionally risk-rescaled)","description":"Size a sleeve in your book — the headline risk/return of one strategy at any risk level, plus the **`fund_dd`** block: full due-diligence **outcome statistics** (trade-level, risk-adjusted, drawdown detail, monthly/annual distribution, exposure) computed purely from backtested trade results + the equity curve — **no entry/exit logic**. With `risk_pct`, net return / CAGR / max-drawdown are modelled-rescaled (Sharpe/Sortino unchanged); the `fund_dd` block is reported at base risk. Free — no key required.","operationId":"getStrategyStats","parameters":[{"name":"sid","in":"path","required":true,"schema":{"type":"string","title":"Sid"}},{"name":"risk_pct","in":"query","required":false,"schema":{"anyOf":[{"type":"number","exclusiveMinimum":0},{"type":"null"}],"description":"modelled per-trade risk %, e.g. 0.05","title":"Risk Pct"},"description":"modelled per-trade risk %, e.g. 0.05"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatsEnvelope"},"example":{"data":{"ccy":"BTC","net_return_pct":21872.044,"cagr_pct":98.6267,"max_drawdown_pct":-55.9044,"sharpe_daily_annualized":1.1807,"sortino_daily_annualized":1.0544,"sharpe_weekly_annualized":1.0912,"time_underwater":{"longest_days":1261,"total_days":2802},"trade_count":240,"win_rate_pct":37.92,"profit_factor":2.598},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast.","modelled":true,"base_risk_pct":0.025,"requested_risk_pct":0.05,"effective_risk_pct":0.05,"risk_pct_clamped":false,"time_underwater_footnote":"counts periods strictly below the prior all-time-peak equity."},"links":{"self":"/v1/strategies/helios/stats","strategy":"/v1/strategies/helios"}}}}},"404":{"content":{"application/json":{"example":{"error":{"code":"not_found","message":"unknown strategy 'nope'"},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast."}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Unprocessable Entity"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Forbidden"}}}},"/v1/strategies/{sid}/returns":{"get":{"tags":["strategies"],"summary":"Periodic returns series","description":"The input to the *evaluate-against-your-book* recipe — the full daily/weekly return series to correlate against your own returns. `risk_pct` linearly rescales (ret×k); `from`/`to` are ISO dates. Free — no key required.","operationId":"getStrategyReturns","parameters":[{"name":"sid","in":"path","required":true,"schema":{"type":"string","title":"Sid"}},{"name":"period","in":"query","required":false,"schema":{"type":"string","description":"daily | weekly","default":"daily","title":"Period"},"description":"daily | weekly"},{"name":"risk_pct","in":"query","required":false,"schema":{"anyOf":[{"type":"number","exclusiveMinimum":0},{"type":"null"}],"title":"Risk Pct"}},{"name":"from","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"ISO date YYYY-MM-DD","title":"From"},"description":"ISO date YYYY-MM-DD"},{"name":"to","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"ISO date YYYY-MM-DD","title":"To"},"description":"ISO date YYYY-MM-DD"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReturnsEnvelope"},"example":{"data":[{"t":"2018-08-15","ret":0.0},{"t":"2018-08-16","ret":0.0593427051}],"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast.","period":"daily","risk_pct":0.025},"links":{"self":"/v1/strategies/helios/returns"}}}}},"404":{"content":{"application/json":{"example":{"error":{"code":"not_found","message":"unknown strategy 'nope'"},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast."}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Unprocessable Entity"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Forbidden"}}}},"/v1/strategies/{sid}/curve":{"get":{"tags":["strategies"],"summary":"Equity curve","description":"Eyeball regime behaviour and drawdowns before allocating — the compounded equity path. With `risk_pct`, the modelled curve recompounded from rescaled daily returns (base = 1.0). Free — no key required.","operationId":"getStrategyCurve","parameters":[{"name":"sid","in":"path","required":true,"schema":{"type":"string","title":"Sid"}},{"name":"risk_pct","in":"query","required":false,"schema":{"anyOf":[{"type":"number","exclusiveMinimum":0},{"type":"null"}],"title":"Risk Pct"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurveEnvelope"},"example":{"data":[{"t":"2018-08-15","equity":0.5},{"t":"2018-08-16","equity":0.5296}],"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast.","risk_pct":0.025},"links":{"self":"/v1/strategies/helios/curve"}}}}},"404":{"content":{"application/json":{"example":{"error":{"code":"not_found","message":"unknown strategy 'nope'"},"meta":{"basis":"backtested","register":"factual_historical","audience":"professional_institutional","license":"global","dataset_version":"2026-06-24T07:40:35Z","generated_utc":"2026-06-24T07:40:35Z","timing_ms":1.8,"disclaimer":"Backtested/modelled historical results computed from public market data. Past performance is not indicative of future results. Factual historical data for professional/institutional use only — not advice, not a recommendation, not a forecast."}},"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Unprocessable Entity"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Forbidden"}}}}},"components":{"schemas":{"CorrelationEnvelope":{"properties":{"meta":{"$ref":"#/components/schemas/Meta"},"links":{"additionalProperties":true,"type":"object","title":"Links","default":{}},"data":{"additionalProperties":true,"type":"object","title":"Data"}},"additionalProperties":true,"type":"object","required":["meta","data"],"title":"CorrelationEnvelope"},"CurveEnvelope":{"properties":{"meta":{"$ref":"#/components/schemas/Meta"},"links":{"additionalProperties":true,"type":"object","title":"Links","default":{}},"data":{"items":{"$ref":"#/components/schemas/CurvePoint"},"type":"array","title":"Data"}},"additionalProperties":true,"type":"object","required":["meta","data"],"title":"CurveEnvelope"},"CurvePoint":{"properties":{"t":{"type":"string","title":"T"},"equity":{"type":"number","title":"Equity"}},"type":"object","required":["t","equity"],"title":"CurvePoint"},"DatasetEnvelope":{"properties":{"meta":{"$ref":"#/components/schemas/Meta"},"links":{"additionalProperties":true,"type":"object","title":"Links","default":{}},"data":{"additionalProperties":true,"type":"object","title":"Data"}},"additionalProperties":true,"type":"object","required":["meta","data"],"title":"DatasetEnvelope"},"ErrorDetail":{"properties":{"code":{"type":"string","title":"Code","examples":["not_found"]},"message":{"type":"string","title":"Message","examples":["unknown strategy 'nope'"]},"details":{"anyOf":[{},{"type":"null"}],"title":"Details"}},"type":"object","required":["code","message"],"title":"ErrorDetail"},"ErrorResponse":{"properties":{"error":{"$ref":"#/components/schemas/ErrorDetail"},"meta":{"$ref":"#/components/schemas/Meta"}},"additionalProperties":true,"type":"object","required":["error","meta"],"title":"ErrorResponse"},"ExportEnvelope":{"properties":{"meta":{"$ref":"#/components/schemas/Meta"},"links":{"additionalProperties":true,"type":"object","title":"Links","default":{}},"data":{"additionalProperties":true,"type":"object","title":"Data"}},"additionalProperties":true,"type":"object","required":["meta","data"],"title":"ExportEnvelope"},"Headline":{"properties":{"cagr_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Cagr Pct"},"max_drawdown_pct":{"type":"number","title":"Max Drawdown Pct"},"sharpe_daily_annualized":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Sharpe Daily Annualized"},"profit_factor":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Profit Factor"},"trade_count":{"type":"integer","title":"Trade Count"}},"type":"object","required":["max_drawdown_pct","trade_count"],"title":"Headline"},"HealthEnvelope":{"properties":{"meta":{"$ref":"#/components/schemas/Meta"},"links":{"additionalProperties":true,"type":"object","title":"Links","default":{}},"data":{"additionalProperties":true,"type":"object","title":"Data"}},"additionalProperties":true,"type":"object","required":["meta","data"],"title":"HealthEnvelope"},"Meta":{"properties":{"basis":{"type":"string","title":"Basis","default":"backtested"},"register":{"type":"string","title":"Register","default":"factual_historical"},"audience":{"type":"string","title":"Audience","default":"professional_institutional"},"license":{"type":"string","title":"License","default":"global"},"dataset_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dataset Version"},"generated_utc":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Generated Utc"},"timing_ms":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Timing Ms"},"disclaimer":{"type":"string","title":"Disclaimer"}},"additionalProperties":true,"type":"object","required":["disclaimer"],"title":"Meta"},"MetadataEnvelope":{"properties":{"meta":{"$ref":"#/components/schemas/Meta"},"links":{"additionalProperties":true,"type":"object","title":"Links","default":{}},"data":{"additionalProperties":true,"type":"object","title":"Data"}},"additionalProperties":true,"type":"object","required":["meta","data"],"title":"MetadataEnvelope"},"ReadyEnvelope":{"properties":{"meta":{"$ref":"#/components/schemas/Meta"},"links":{"additionalProperties":true,"type":"object","title":"Links","default":{}},"data":{"additionalProperties":true,"type":"object","title":"Data"}},"additionalProperties":true,"type":"object","required":["meta","data"],"title":"ReadyEnvelope"},"ReturnPoint":{"properties":{"t":{"type":"string","title":"T"},"ret":{"type":"number","title":"Ret"}},"type":"object","required":["t","ret"],"title":"ReturnPoint"},"ReturnsEnvelope":{"properties":{"meta":{"$ref":"#/components/schemas/Meta"},"links":{"additionalProperties":true,"type":"object","title":"Links","default":{}},"data":{"items":{"$ref":"#/components/schemas/ReturnPoint"},"type":"array","title":"Data"}},"additionalProperties":true,"type":"object","required":["meta","data"],"title":"ReturnsEnvelope"},"StatsBlock":{"properties":{"ccy":{"type":"string","title":"Ccy"},"net_return_pct":{"type":"number","title":"Net Return Pct"},"cagr_pct":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Cagr Pct"},"max_drawdown_pct":{"type":"number","title":"Max Drawdown Pct"},"sharpe_daily_annualized":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Sharpe Daily Annualized"},"sortino_daily_annualized":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Sortino Daily Annualized"},"sharpe_weekly_annualized":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Sharpe Weekly Annualized"},"time_underwater":{"additionalProperties":true,"type":"object","title":"Time Underwater"},"trade_count":{"type":"integer","title":"Trade Count"},"win_rate_pct":{"type":"number","title":"Win Rate Pct"},"profit_factor":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Profit Factor"}},"additionalProperties":true,"type":"object","required":["ccy","net_return_pct","max_drawdown_pct","time_underwater","trade_count","win_rate_pct"],"title":"StatsBlock"},"StatsEnvelope":{"properties":{"meta":{"$ref":"#/components/schemas/Meta"},"links":{"additionalProperties":true,"type":"object","title":"Links","default":{}},"data":{"$ref":"#/components/schemas/StatsBlock"}},"additionalProperties":true,"type":"object","required":["meta","data"],"title":"StatsEnvelope"},"StrategyItem":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"blurb":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Blurb"},"tv_status":{"type":"string","title":"Tv Status","default":"provisional"},"instrument":{"type":"string","title":"Instrument"},"base_risk_pct":{"type":"number","title":"Base Risk Pct"},"leverage_typical":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Leverage Typical"},"leverage_max":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Leverage Max"},"verification_state":{"type":"string","title":"Verification State"},"headline":{"$ref":"#/components/schemas/Headline"}},"type":"object","required":["id","name","instrument","base_risk_pct","verification_state","headline"],"title":"StrategyItem"},"StrategyListEnvelope":{"properties":{"meta":{"$ref":"#/components/schemas/Meta"},"links":{"additionalProperties":true,"type":"object","title":"Links","default":{}},"data":{"items":{"$ref":"#/components/schemas/StrategyItem"},"type":"array","title":"Data"}},"additionalProperties":true,"type":"object","required":["meta","data"],"title":"StrategyListEnvelope"},"SummaryEnvelope":{"properties":{"meta":{"$ref":"#/components/schemas/Meta"},"links":{"additionalProperties":true,"type":"object","title":"Links","default":{}},"data":{"additionalProperties":true,"type":"object","title":"Data"}},"additionalProperties":true,"type":"object","required":["meta","data"],"title":"SummaryEnvelope"},"VersionEnvelope":{"properties":{"meta":{"$ref":"#/components/schemas/Meta"},"links":{"additionalProperties":true,"type":"object","title":"Links","default":{}},"data":{"additionalProperties":true,"type":"object","title":"Data"}},"additionalProperties":true,"type":"object","required":["meta","data"],"title":"VersionEnvelope"}}},"tags":[{"name":"strategies","description":"Per-strategy backtested metadata, stats, returns and curve."},{"name":"aggregate","description":"Book-level summary + cross-strategy correlation."},{"name":"dataset","description":"Dataset-level metadata and provenance."},{"name":"infra","description":"Health, readiness and version (unversioned)."}]}