Document summary-statistics
This commit is contained in:
parent
d56f9655e2
commit
804c42933d
@ -157,17 +157,28 @@ 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 =============
|
||||||
|
| Metric | Value |
|
||||||
|
|------------------+---------------------|
|
||||||
|
| Total trades | 429 |
|
||||||
|
| First trade | 2019-01-01 18:30:00 |
|
||||||
|
| 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 |
|
||||||
|
| | |
|
||||||
|
| 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
|
||||||
|
|
||||||
The 1st table contains all trades the bot made, including "left open trades".
|
The 1st table contains all trades the bot made, including "left open trades".
|
||||||
|
|
||||||
The 2nd table contains a recap of sell reasons.
|
|
||||||
This table can tell you which area needs some additional work (i.e. all `sell_signal` trades are losses, so we should disable the sell-signal or work on improving that).
|
|
||||||
|
|
||||||
The 3rd table contains all trades the bot had to `forcesell` at the end of the backtest period to present a full picture.
|
|
||||||
This is necessary to simulate realistic behaviour, since the backtest period has to end at some point, while realistically, you could leave the bot running forever.
|
|
||||||
These trades are also included in the first table, but are extracted separately for clarity.
|
|
||||||
|
|
||||||
The last line will give you the overall performance of your strategy,
|
The last line will give you the overall performance of your strategy,
|
||||||
here:
|
here:
|
||||||
|
|
||||||
@ -196,6 +207,50 @@ On the other hand, if you set a too high `minimal_roi` like `"0": 0.55`
|
|||||||
(55%), there is almost no chance that the bot will ever reach this profit.
|
(55%), there is almost no chance that the bot will ever reach this profit.
|
||||||
Hence, keep in mind that your performance is an integral mix of all different elements of the strategy, your configuration, and the crypto-currency pairs you have set up.
|
Hence, keep in mind that your performance is an integral mix of all different elements of the strategy, your configuration, and the crypto-currency pairs you have set up.
|
||||||
|
|
||||||
|
### Sell reasons table
|
||||||
|
|
||||||
|
The 2nd table contains a recap of sell reasons.
|
||||||
|
This table can tell you which area needs some additional work (i.e. all `sell_signal` trades are losses, so we should disable the sell-signal or work on improving that).
|
||||||
|
|
||||||
|
### Left open trades table
|
||||||
|
|
||||||
|
The 3rd table contains all trades the bot had to `forcesell` at the end of the backtest period to present a full picture.
|
||||||
|
This is necessary to simulate realistic behaviour, since the backtest period has to end at some point, while realistically, you could leave the bot running forever.
|
||||||
|
These trades are also included in the first table, but are extracted separately for clarity.
|
||||||
|
|
||||||
|
### Summary metrics
|
||||||
|
|
||||||
|
The last element of the backtest report is the summary metrics table.
|
||||||
|
It contains some useful key metrics about your strategy.
|
||||||
|
|
||||||
|
```
|
||||||
|
============ SUMMARY METRICS =============
|
||||||
|
| Metric | Value |
|
||||||
|
|------------------+---------------------|
|
||||||
|
| Total trades | 429 |
|
||||||
|
| First trade | 2019-01-01 18:30:00 |
|
||||||
|
| 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 |
|
||||||
|
| | |
|
||||||
|
| Max Drawdown | 50.63% |
|
||||||
|
| Drawdown Start | 2019-02-15 14:10:00 |
|
||||||
|
| Drawdown End | 2019-04-11 18:15:00 |
|
||||||
|
| Market change | -5.88% |
|
||||||
|
==========================================
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
- `Total trades`: Identical to the total trades of the backtest output table.
|
||||||
|
- `First trade`: First trade entered.
|
||||||
|
- `First trade pair`: Which pair was part of the first trade
|
||||||
|
- `Backtesting from` / `Backtesting to`: Backtesting range (usually defined as `--timerange from-to`)
|
||||||
|
- `Trades per day`: Total trades / Backtest duration (this will give you information about how many trades to expect from the strategy)
|
||||||
|
- `Max Drawdown`: Maximum drawown experienced. a value of 50% means that from highest to subsequent lowest point, a 50% drop was experiened).
|
||||||
|
- `Drawdown Start` / `Drawdown End`: From when to when was this large drawdown (can also be visualized via `plot-dataframe` subcommand)
|
||||||
|
- `Market change`: Change of the market during the backtest period. Calculated as average of all pairs changes from the first to the last candle using the "close" column.
|
||||||
|
|
||||||
### Assumptions made by backtesting
|
### Assumptions made by backtesting
|
||||||
|
|
||||||
Since backtesting lacks some detailed information about what happens within a candle, it needs to take a few assumptions:
|
Since backtesting lacks some detailed information about what happens within a candle, it needs to take a few assumptions:
|
||||||
|
Loading…
Reference in New Issue
Block a user