mirror of
https://github.com/freqtrade/frequi.git
synced 2024-09-21 01:51:09 +00:00
List historic backtest results
This commit is contained in:
parent
8426475ea5
commit
2cc7c88975
|
@ -195,6 +195,11 @@ export default {
|
|||
},
|
||||
updateBacktestResult(state, backtestResult: BacktestResult) {
|
||||
state.backtestResult = backtestResult;
|
||||
// TODO: Properly identify duplicates to avoid pushing the same multiple times
|
||||
Object.entries(backtestResult.strategy).forEach(([key, strat]) => {
|
||||
const xxx = `${key}_${strat.total_trades}_${strat.profit_total.toFixed(3)}`;
|
||||
state.backtestHistory[xxx] = strat;
|
||||
});
|
||||
},
|
||||
},
|
||||
actions: {
|
||||
|
|
|
@ -44,6 +44,7 @@ export interface FtbotStateType {
|
|||
currentLocks?: LockResponse;
|
||||
backtestRunning: boolean;
|
||||
backtestResult?: BacktestResult;
|
||||
backtestHistory: Record<string, BacktestResult>;
|
||||
}
|
||||
const state: FtbotStateType = {
|
||||
version: '',
|
||||
|
@ -75,6 +76,7 @@ const state: FtbotStateType = {
|
|||
// backtesting
|
||||
backtestRunning: false,
|
||||
backtestResult: undefined,
|
||||
backtestHistory: {},
|
||||
};
|
||||
|
||||
export default state;
|
||||
|
|
|
@ -144,6 +144,16 @@
|
|||
</div>
|
||||
</div>
|
||||
<div v-if="hasBacktestResult && btFormMode == 'results'" class="text-center w-100 mt-2">
|
||||
<div class="d-flex">
|
||||
<b-list-group-item
|
||||
v-for="[key, strat] in Object.entries(backtestHistory)"
|
||||
:key="key"
|
||||
button
|
||||
class="d-flex justify-content-between align-items-center py-1"
|
||||
>
|
||||
{{ key }} {{ strat.total_trades }} {{ formatPercent(strat.profit_total) }}
|
||||
</b-list-group-item>
|
||||
</div>
|
||||
<BacktestResultView :strategy="strategy" :backtest-result="selectedBacktestResult" />
|
||||
</div>
|
||||
<div
|
||||
|
@ -204,6 +214,7 @@ import {
|
|||
} from '@/types';
|
||||
|
||||
import { getCustomPlotConfig, getPlotConfigName } from '@/shared/storage';
|
||||
import { formatPercent } from '@/shared/formatters';
|
||||
|
||||
const ftbot = namespace('ftbot');
|
||||
@Component({
|
||||
|
@ -261,6 +272,8 @@ export default class Backtesting extends Vue {
|
|||
|
||||
@ftbot.State backtestResult!: BacktestResult;
|
||||
|
||||
@ftbot.State backtestHistory!: StrategyBacktestResult[];
|
||||
|
||||
@ftbot.State history;
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
||||
|
@ -273,6 +286,8 @@ export default class Backtesting extends Vue {
|
|||
|
||||
@ftbot.Action removeBacktest!: () => void;
|
||||
|
||||
formatPercent = formatPercent;
|
||||
|
||||
get canRunBacktest() {
|
||||
// TODO: Analyze if parameters and strategy has been selected.
|
||||
return true;
|
||||
|
|
Loading…
Reference in New Issue
Block a user