Skip to main content

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