Update summary-metrics output

This commit is contained in:
Matthias 2020-07-14 19:34:01 +02:00
parent 2417898d00
commit bdf611352e
2 changed files with 23 additions and 21 deletions

View File

@ -157,22 +157,25 @@ A backtesting result will look like that:
| ADA/BTC | 1 | 0.89 | 0.89 | 0.00004434 | 0.44 | 6:00:00 | 1 | 0 | 0 | | ADA/BTC | 1 | 0.89 | 0.89 | 0.00004434 | 0.44 | 6:00:00 | 1 | 0 | 0 |
| LTC/BTC | 1 | 0.68 | 0.68 | 0.00003421 | 0.34 | 2:00:00 | 1 | 0 | 0 | | LTC/BTC | 1 | 0.68 | 0.68 | 0.00003421 | 0.34 | 2:00:00 | 1 | 0 | 0 |
| TOTAL | 2 | 0.78 | 1.57 | 0.00007855 | 0.78 | 4:00:00 | 2 | 0 | 0 | | TOTAL | 2 | 0.78 | 1.57 | 0.00007855 | 0.78 | 4:00:00 | 2 | 0 | 0 |
============ SUMMARY METRICS ============= =============== SUMMARY METRICS ===============
| Metric | Value | | Metric | Value |
|------------------+---------------------| |-----------------------+---------------------|
| Total trades | 429 | | Backtesting from | 2019-01-01 00:00:00 |
| First trade | 2019-01-01 18:30:00 | | Backtesting to | 2019-05-01 00:00:00 |
| First trade Pair | EOS/USDT | | Total trades | 429 |
| Backtesting from | 2019-01-01 00:00:00 | | First trade | 2019-01-01 18:30:00 |
| Backtesting to | 2019-05-01 00:00:00 | | First trade Pair | EOS/USDT |
| Trades per day | 3.575 | | Trades per day | 3.575 |
| | | | Best day | 25.27% |
| Max Drawdown | 50.63% | | Worst day | -30.67% |
| Drawdown Start | 2019-02-15 14:10:00 | | Avg. Duration Winners | 4:23:00 |
| Drawdown End | 2019-04-11 18:15:00 | | Avg. Duration Loser | 6:55:00 |
| Market change | -5.88% | | | |
========================================== | Max Drawdown | 50.63% |
| Drawdown Start | 2019-02-15 14:10:00 |
| Drawdown End | 2019-04-11 18:15:00 |
| Market change | -5.88% |
===============================================
``` ```
### Backtesting report table ### Backtesting report table
@ -227,12 +230,11 @@ It contains some useful key metrics about performance of your strategy on backte
=============== SUMMARY METRICS =============== =============== SUMMARY METRICS ===============
| Metric | Value | | Metric | Value |
|-----------------------+---------------------| |-----------------------+---------------------|
| Backtesting from | 2019-01-01 00:00:00 |
| Backtesting to | 2019-05-01 00:00:00 |
| Total trades | 429 | | Total trades | 429 |
| First trade | 2019-01-01 18:30:00 | | First trade | 2019-01-01 18:30:00 |
| First trade Pair | EOS/USDT | | First trade Pair | EOS/USDT |
| Backtesting from | 2019-01-01 00:00:00 |
| Backtesting to | 2019-05-01 00:00:00 |
| Trades per day | 3.575 | | Trades per day | 3.575 |
| Best day | 25.27% | | Best day | 25.27% |
| Worst day | -30.67% | | Worst day | -30.67% |

View File

@ -367,11 +367,11 @@ def text_table_add_metrics(strat_results: Dict) -> str:
if len(strat_results['trades']) > 0: if len(strat_results['trades']) > 0:
min_trade = min(strat_results['trades'], key=lambda x: x['open_date']) min_trade = min(strat_results['trades'], key=lambda x: x['open_date'])
metrics = [ metrics = [
('Backtesting from', strat_results['backtest_start'].strftime(DATETIME_PRINT_FORMAT)),
('Backtesting to', strat_results['backtest_end'].strftime(DATETIME_PRINT_FORMAT)),
('Total trades', strat_results['total_trades']), ('Total trades', strat_results['total_trades']),
('First trade', min_trade['open_date'].strftime(DATETIME_PRINT_FORMAT)), ('First trade', min_trade['open_date'].strftime(DATETIME_PRINT_FORMAT)),
('First trade Pair', min_trade['pair']), ('First trade Pair', min_trade['pair']),
('Backtesting from', strat_results['backtest_start'].strftime(DATETIME_PRINT_FORMAT)),
('Backtesting to', strat_results['backtest_end'].strftime(DATETIME_PRINT_FORMAT)),
('Trades per day', strat_results['trades_per_day']), ('Trades per day', strat_results['trades_per_day']),
('Best day', f"{round(strat_results['backtest_best_day'] * 100, 2)}%"), ('Best day', f"{round(strat_results['backtest_best_day'] * 100, 2)}%"),
('Worst day', f"{round(strat_results['backtest_worst_day'] * 100, 2)}%"), ('Worst day', f"{round(strat_results['backtest_worst_day'] * 100, 2)}%"),