BacktestDigest
Server-computed digest of a completed backtest. Null until the backtest has completed with a result.
type BacktestDigest {
stakeCurrency: String!
startingBalance: Float
tradeCount: Int!
wins: Int!
losses: Int!
draws: Int!
lowSample: Boolean!
totalReturnFraction: Float!
totalReturnAbs: Float!
maxDrawdownFraction: Float
maxDrawdownAbs: Float
winRateFraction: Float
sharpe: Float
sortino: Float
marketChangeFraction: Float
backtestStart: Time
backtestEnd: Time
worstTrade: BacktestDigestTrade
comparison: BacktestDigestComparison
}
Fields
BacktestDigest.stakeCurrency ● String! non-null scalar
BacktestDigest.startingBalance ● Float scalar
BacktestDigest.tradeCount ● Int! non-null scalar
BacktestDigest.wins ● Int! non-null scalar
BacktestDigest.losses ● Int! non-null scalar
BacktestDigest.draws ● Int! non-null scalar
BacktestDigest.lowSample ● Boolean! non-null scalar
True when tradeCount is below the 50-trade confidence floor.
BacktestDigest.totalReturnFraction ● Float! non-null scalar
Freqtrade profit_total: FRACTION of starting balance, signed (negative = loss).
BacktestDigest.totalReturnAbs ● Float! non-null scalar
Freqtrade profit_total_abs: stake currency, signed.
BacktestDigest.maxDrawdownFraction ● Float scalar
Freqtrade max_drawdown_account: POSITIVE FRACTION — the relative drawdown at the point of largest absolute drawdown, on closed-trade equity. Null on a zero-trade run.
BacktestDigest.maxDrawdownAbs ● Float scalar
Freqtrade max_drawdown_abs: POSITIVE, stake currency. Null on a zero-trade run.
BacktestDigest.winRateFraction ● Float scalar
Freqtrade winrate: FRACTION 0..1 = wins / total trades (draws are not wins). Null on a zero-trade run.
BacktestDigest.sharpe ● Float scalar
Freqtrade's Sharpe: mean daily return over the std of per-trade returns, annualised by sqrt(365), risk-free 0. Null on a zero-trade run, when non-finite, or on Freqtrade's -100 zero-denominator sentinel.
BacktestDigest.sortino ● Float scalar
Freqtrade's Sortino: as sharpe, over the std of losing trades' returns. Null under the same rules (Freqtrade emits the -100 sentinel with 0 or 1 losing trades).
BacktestDigest.marketChangeFraction ● Float scalar
Buy-and-hold change of the pairs over the window, FRACTION, signed.
BacktestDigest.backtestStart ● Time scalar
BacktestDigest.backtestEnd ● Time scalar
BacktestDigest.worstTrade ● BacktestDigestTrade object
BacktestDigest.comparison ● BacktestDigestComparison object
Returned By
backtestDigest query
Member Of
Backtest object ● StrategyVersionSide object