Skip to main content

PublicBacktest

The lean, anonymous, allowlisted projection of a FROZEN backtest. This is the ENTIRE public surface of a shared backtest — money is always relative (percent or an equity curve de-based to index 100); there is no absolute stake/balance, no raw result/logs/config, no ids, no owner PII, and no linked entities.

type PublicBacktest {
projectionLevel: ShareProjectionLevel!
strategyName: String!
exchangeName: String
timeframe: String
totalReturnPct: Float
winRatePct: Float
totalTrades: Int!
maxDrawdownPct: Float
sharpe: Float
sortino: Float
calmar: Float
cagrPct: Float
profitFactor: Float
pairCount: Int!
startDate: Time
endDate: Time
backtestDays: Int
equityCurve: [Float!]!
overfitRisk: Int
robustnessBand: OverfitBand
digest: PublicBacktestDigest
}

Fields​

PublicBacktest.projectionLevel ● ShareProjectionLevel! non-null enum​

The publisher's chosen projection level (card = teaser, full = all safe fields).

PublicBacktest.strategyName ● String! non-null scalar​

PublicBacktest.exchangeName ● String scalar​

Exchange NAME only (e.g. 'binance') — never keys or account data.

PublicBacktest.timeframe ● String scalar​

PublicBacktest.totalReturnPct ● Float scalar​

Total return as a percent (de-based; never an absolute amount).

PublicBacktest.winRatePct ● Float scalar​

PublicBacktest.totalTrades ● Int! non-null scalar​

PublicBacktest.maxDrawdownPct ● Float scalar​

PublicBacktest.sharpe ● Float scalar​

PublicBacktest.sortino ● Float scalar​

PublicBacktest.calmar ● Float scalar​

PublicBacktest.cagrPct ● Float scalar​

PublicBacktest.profitFactor ● Float scalar​

PublicBacktest.pairCount ● Int! non-null scalar​

PublicBacktest.startDate ● Time scalar​

PublicBacktest.endDate ● Time scalar​

PublicBacktest.backtestDays ● Int scalar​

PublicBacktest.equityCurve ● [Float!]! non-null scalar​

Account equity over the run, de-based so the first point is index 100 (shape only).

PublicBacktest.overfitRisk ● Int scalar​

Advisory 0-100 overfit-risk score (in-sample vs out-of-sample degradation, or erratic results across consistency-check windows). Higher = less trustworthy. Null unless this shared backtest is part of a completed split pair / consistency-check set. Allowlist-safe: a score is not money — the equity-relative invariant is unaffected.

PublicBacktest.robustnessBand ● OverfitBand enum​

Coarse robustness band derived from overfitRisk (LOW/MODERATE/HIGH). Null unless part of a completed split/consistency-check set.

PublicBacktest.digest ● PublicBacktestDigest object​

The relative-only backtest digest (same figures as Backtest.digest, minus absolute money and the version comparison). Null when the run has no summary.

Returned By​

publicBacktest query