Skip to main content

StrategyVerdict

A recorded verdict: a version's out-of-sample backtest judged against the most recent comparable backtest of its previous version, deflated by every trial in the strategy lineage's ledger. Never edited; a re-evaluation appends a new one.

type StrategyVerdict {
id: ID!
outcome: VerdictOutcome!
trials: Int!
deflatedSharpe: Float
oosTrades: Int!
reasons: [String!]!
claim: String!
caveat: String
mayCallBetter: Boolean!
mayApply: Boolean!
mayPublish: Boolean!
candidateStrategyId: ID!
baselineStrategyId: ID!
candidateBacktestId: ID!
baselineBacktestId: ID!
createdAt: Time!
}

Fields​

StrategyVerdict.id ● ID! non-null scalar​

StrategyVerdict.outcome ● VerdictOutcome! non-null enum​

StrategyVerdict.trials ● Int! non-null scalar​

The lineage's trial count (backtests, every hyperopt epoch, variants) the verdict was deflated by.

StrategyVerdict.deflatedSharpe ● Float scalar​

Probability the true Sharpe is positive after correcting for the trial count (0..1). Null when not computed.

StrategyVerdict.oosTrades ● Int! non-null scalar​

Closed trades in the version's out-of-sample run.

StrategyVerdict.reasons ● [String!]! non-null scalar​

Server-authored explanations, most important first.

StrategyVerdict.claim ● String! non-null scalar​

The one sentence to show about this verdict. Surfaces must use it verbatim; only a PASS claim says 'better'.

StrategyVerdict.caveat ● String scalar​

For WARN: the caveat the apply and dry-run actions must show. Null otherwise.

StrategyVerdict.mayCallBetter ● Boolean! non-null scalar​

True only for PASS.

StrategyVerdict.mayApply ● Boolean! non-null scalar​

True for PASS and WARN (WARN with its caveat shown).

StrategyVerdict.mayPublish ● Boolean! non-null scalar​

True only for PASS.

StrategyVerdict.candidateStrategyId ● ID! non-null scalar​

StrategyVerdict.baselineStrategyId ● ID! non-null scalar​

StrategyVerdict.candidateBacktestId ● ID! non-null scalar​

StrategyVerdict.baselineBacktestId ● ID! non-null scalar​

StrategyVerdict.createdAt ● Time! non-null scalar​

Returned By​

evaluateStrategyVersion mutation

Member Of​

AssistantMissionVariant object ● HyperoptReplayCheck object ● Strategy object