Joe Schr
|
55a315be14
|
fix: avg_stake_amount should not be NaN if df is empty
|
2021-03-02 13:38:55 +01:00 |
|
Matthias
|
2083cf6ddf
|
Fix mypy errors introduced by Arrow update
|
2021-03-01 08:57:57 +01:00 |
|
Matthias
|
9cb37409fd
|
Explicitly convert starting-balance to float
|
2021-02-28 09:56:29 +01:00 |
|
Matthias
|
b2e9295d7f
|
Small stylistic fixes
|
2021-02-27 19:57:42 +01:00 |
|
Matthias
|
324b9dbdff
|
Simplify wallet code
|
2021-02-27 10:33:25 +01:00 |
|
Matthias
|
98f3142b30
|
Improve handling of backtesting params
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
fc256749af
|
Add test for backtesting _enter_trade
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
53a57f2c81
|
Change some types
Fix types of new model object
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
03eb23a4ce
|
2 levels of Trade models, one with and one without sqlalchemy
Fixes a performance issue when backtesting with sqlalchemy, as that
uses descriptors for all properties.
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
394a6bbf2a
|
Fix some type errors
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
52acacbed5
|
Check min-trade-stake in backtesting
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
f04f07299c
|
Improve backtesting metrics
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
7913166453
|
Improve performance by updating wallets only when necessary
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
f367375e5b
|
ABS drawdown should show wallet high and low values
|
2021-02-27 09:33:00 +01:00 |
|
Matthias
|
0d2f877e77
|
Use absolute drawdown calc
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
74fc4bdab5
|
Shorten debug log
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
72f21fc5ec
|
Add trade-volume metric
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
35e6a9ab3a
|
Backtest-reports should calculate total gains based on starting capital
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
8d61a26382
|
Allow dynamic stake for backtesting and hyperopt
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
e4abe902fc
|
Enable compounding for backtesting
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
0faa6f84dc
|
Improve Wallet logging disabling for backtesting
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
081b9be45c
|
use get_all_locks to get locks for backtest result
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
712d503e6c
|
Use sell-reason value in backtesting, not the enum object
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
b5177eadab
|
Extract close method for exchange
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
4ce4eadc23
|
remove only ccxt objects when hyperopting
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
9361aa1c95
|
Add wallets to backtesting
|
2021-02-27 09:32:59 +01:00 |
|
Matthias
|
11b20d6932
|
Add config to hyperopt_loss_function documentation
|
2021-02-17 07:04:29 +01:00 |
|
Matthias
|
eff0d46ea1
|
Merge pull request #4375 from flomerz/pass_processed_data
pass data and config to loss function
|
2021-02-16 20:06:50 +01:00 |
|
Matthias
|
009a447d8a
|
Adjust documentation for new parameter in loss functions
|
2021-02-16 19:51:09 +01:00 |
|
Florian Merz
|
3e06cd8b3a
|
pass data and config to loss function
|
2021-02-16 10:11:33 +01:00 |
|
Florian Reitmeir
|
5c263c7ffd
|
add backtesting results abs profit min/abs profit max, to get a better view if a strategy has a enough money to succeed
|
2021-02-14 19:41:12 +01:00 |
|
Matthias
|
e7acee7904
|
Improve coin value output by rounding coin specific
|
2021-02-13 16:05:56 +01:00 |
|
Matthias
|
072abde9b7
|
Introduce round_coin_value to simplify coin rounding
|
2021-02-13 16:05:35 +01:00 |
|
Matthias
|
c659150d9f
|
Also print trade_duration in seconds to json
|
2021-01-25 19:42:34 +01:00 |
|
Matthias
|
62e43539c9
|
Limit max_open_trades to maximum available pairs
closes #4008
|
2021-01-24 19:59:54 +01:00 |
|
Matthias
|
789a980a30
|
Fix tests for new export format
|
2021-01-24 19:42:32 +01:00 |
|
Matthias
|
deb8432d33
|
Streamline trade to dataframe conversion
|
2021-01-24 08:58:41 +01:00 |
|
Matthias
|
8ee264bc59
|
Don't use profit_percent for backtesting results anymore
|
2021-01-24 08:58:41 +01:00 |
|
Matthias
|
48977493bb
|
Backtesting does not need to convert to BacktestResult object
|
2021-01-24 08:58:41 +01:00 |
|
Matthias
|
7c80eeea95
|
Add use_custom_stoploss to optimize_report
|
2021-01-19 22:51:12 +01:00 |
|
Matthias
|
0b65fe6afe
|
Capture backtest start / end time
|
2021-01-14 19:09:25 +01:00 |
|
Matthias
|
9147106259
|
call bot_loop_start() in backtesting to allow setup-code to run
|
2021-01-14 19:09:25 +01:00 |
|
Matthias
|
baa1142afa
|
Use preprocessed to get min/max date in hyperopt
|
2021-01-14 19:09:21 +01:00 |
|
Matthias
|
9d4cdcad10
|
Extract backtesting of one strategy
|
2021-01-14 19:04:42 +01:00 |
|
Matthias
|
f3de0dd3eb
|
Fix support for protections in hyperopt
closes #4208
|
2021-01-14 06:53:40 +01:00 |
|
Matthias
|
63a579dbab
|
Add sell_profit_offset parameter
Allows defining positive offsets before enabling the sell signal
|
2021-01-11 19:30:25 +01:00 |
|
Matthias
|
f11fd2fee1
|
Sort imports
|
2020-12-23 17:00:02 +01:00 |
|
Matthias
|
67193bca3d
|
Move pairlists to be a plugin submodule
|
2020-12-23 16:54:35 +01:00 |
|
Matthias
|
266031a6be
|
Disallow PerformanceFilter for backtesting
closes #4072
|
2020-12-16 19:24:47 +01:00 |
|
Matthias
|
f047297995
|
Improve wording, fix bug
|
2020-12-07 15:48:06 +01:00 |
|
Matthias
|
5849d07497
|
Export locks as part of backtesting
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
bb51da8297
|
Fix slow backtest due to protections
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
75a5161650
|
Support multis-strategy backtests with protections
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
a3f9cd2c26
|
Only load protections when necessary
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
e2d15f4082
|
Add parameter to enable protections for backtesting
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
32189d27c8
|
Disable output from plugins in backtesting
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
9f34aebdaa
|
Allow closing trades without message
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
b606936eb7
|
Make changes to backtesting to incorporate protections
|
2020-12-07 11:39:01 +01:00 |
|
Matthias
|
e40d97e05e
|
Small formatting improvements
|
2020-11-28 17:52:29 +01:00 |
|
Matthias
|
5d3f59df90
|
Add best / worst trade
|
2020-11-28 17:45:56 +01:00 |
|
Matthias
|
a00f852cf9
|
Add best / worst pair to summary statistics
|
2020-11-28 17:37:10 +01:00 |
|
Matthias
|
a47d8dbe56
|
Small refactor, avoiding duplicate calculation of profits
|
2020-11-28 11:35:29 +01:00 |
|
Matthias
|
730c9ce471
|
Add Max_open_trades to summary metrics
|
2020-11-24 06:57:26 +01:00 |
|
Matthias
|
887d78171c
|
Merge pull request #3857 from freqtrade/arrow_deprecation_timestamp
Convert timestamp to int_timestamp for all arrow occurances
|
2020-11-02 16:40:43 +01:00 |
|
Matthias
|
e73203acb8
|
FIx bug with dmmp
|
2020-11-01 10:51:07 +01:00 |
|
Matthias
|
7a092271c5
|
Merge branch 'develop' into arrow_deprecation_timestamp
|
2020-10-20 20:01:54 +02:00 |
|
Matthias
|
cf2ae788d7
|
Convert backtesting rows to Tuples for performance gains
|
2020-10-18 17:16:57 +02:00 |
|
Matthias
|
5d3a67d324
|
Don't debug-log during backtesting.
Even though log-messages are surpressed, calling "debug" will always
have to do something.
|
2020-10-18 16:38:16 +02:00 |
|
Matthias
|
b80a219d03
|
Improve typehints for backtesting
|
2020-10-18 16:35:23 +02:00 |
|
Matthias
|
380e6628e0
|
Merge branch 'develop' into feat/backtest_speedup_serialize
|
2020-10-18 16:19:04 +02:00 |
|
Matthias
|
2591a34db4
|
Don't use arrow objects for backtesting
|
2020-10-18 16:18:52 +02:00 |
|
Matthias
|
ecddaa663b
|
Convert timestamp to int_timestamp for all arrow occurances
|
2020-10-13 06:24:01 +02:00 |
|
Matthias
|
23bad8fd9f
|
Rename DefahltHyperoptLoss function to ShortTradeDurHyperOptLoss
|
2020-10-10 14:22:29 +02:00 |
|
Matthias
|
23278e52db
|
remove obsolete logging statements
|
2020-10-08 20:22:59 +02:00 |
|
Matthias
|
e8f2c09f08
|
Extract handling of left open trades to seperate method
|
2020-10-08 20:11:45 +02:00 |
|
Matthias
|
52502193c4
|
Backtesting should not double-loop for sell signals
|
2020-10-07 20:59:05 +02:00 |
|
Matthias
|
40b61bbfe3
|
Adjust trailing-stop to be python compliant
|
2020-10-05 07:44:12 +02:00 |
|
Matthias
|
cb74c9bcde
|
Fix hyperopt output
|
2020-10-03 13:27:06 +02:00 |
|
Matthias
|
6977ffdbf9
|
Merge branch 'develop' into isort_config
|
2020-09-28 20:21:55 +02:00 |
|
Matthias
|
253b7b763e
|
Apply isort to freqtrade codebase
|
2020-09-28 19:40:46 +02:00 |
|
Matthias
|
c42a924df8
|
Load latest file
|
2020-09-27 16:50:42 +02:00 |
|
Matthias
|
ff96cf154c
|
Keep hyperopt result history
|
2020-09-27 16:33:26 +02:00 |
|
Matthias
|
b736691e0e
|
Remove hyperopt --continue
|
2020-09-27 16:18:28 +02:00 |
|
Matthias
|
bb27b236ce
|
Remove unused arguments
|
2020-09-26 14:55:12 +02:00 |
|
Matthias
|
ff3e2641ae
|
generate_backtest_stats must take config options from the strategy
config
as a strategy can override certain options.
|
2020-09-25 20:47:37 +02:00 |
|
Matthias
|
378f03a5b1
|
Add relevant parameters to stored backtest result
|
2020-09-25 06:37:40 +02:00 |
|
Matthias
|
6674285b12
|
Merge pull request #3756 from allenday/patch-1
prettify hyperopt console output
|
2020-09-19 17:43:05 +02:00 |
|
Matthias
|
f0d7f18cf9
|
Pad wins / draws / losses for hyperopt with spaces instead of 0's
|
2020-09-19 17:32:22 +02:00 |
|
Matthias
|
ec01f20bf8
|
Add ratio to sell reason stats
|
2020-09-16 20:27:28 +02:00 |
|
Allen Day
|
f63a378967
|
Update hyperopt.py
zero pad wins/draws/losses (W/D/L) column to preserve alignment in console pretty print
|
2020-09-07 23:26:55 +08:00 |
|
Matthias
|
284d39930f
|
Allow using pairlists through dataprovider in backtesting
|
2020-08-30 10:07:28 +02:00 |
|
Matthias
|
d8a6410fd1
|
Fix small bug when using max-open-trades -1 in backtesting
|
2020-08-23 09:00:57 +02:00 |
|
Matthias
|
3d93236709
|
Remove unused import
|
2020-08-21 14:55:47 +02:00 |
|
Matthias
|
301f74fd1b
|
Merge pull request #3418 from freqtrade/hyperopt_colorama_init
Test colorama init again (after the fixes done to progressbar)
|
2020-08-21 14:54:35 +02:00 |
|
Matthias
|
4f1179d85c
|
Test for empty case
|
2020-08-20 20:11:58 +02:00 |
|
Matthias
|
f5a9001dc0
|
Handle backtest results without any trades
|
2020-08-20 19:51:36 +02:00 |
|
Matthias
|
3d515ed5bf
|
Merge pull request #3558 from freqtrade/bt_add_maxdrawdown
Revise backtesting export format, add some metrics
|
2020-08-19 06:39:47 +02:00 |
|
Matthias
|
9982ad2f36
|
Add profit to backtest summary output
|
2020-08-18 16:59:24 +02:00 |
|
Matthias
|
668d167adc
|
Add docstring to store_backtest_stats
|
2020-08-18 16:15:24 +02:00 |
|
Matthias
|
4eb17b4daf
|
Remove unneeded function
|
2020-08-18 15:20:37 +02:00 |
|
Matthias
|
a6dac9acf3
|
Merge pull request #3667 from freqtrade/hyperopt_enable_dataprovider
Hyperopt enable dataprovider
|
2020-08-17 07:00:48 +02:00 |
|
Matthias
|
1f153f51ee
|
Merge pull request #3660 from freqtrade/hyperopt_default_tests
Move DefaultHyperopt to tests
|
2020-08-17 06:49:55 +02:00 |
|
Matthias
|
b98107375e
|
Improve formatting of result string to be a bit conciser
|
2020-08-14 07:31:14 +02:00 |
|
Matthias
|
d76ee43246
|
Show wins / draws / losses in hyperopt table
|
2020-08-14 07:14:10 +02:00 |
|
Matthias
|
05bd099f51
|
Merge branch 'develop' into pr/yazeed/3008
|
2020-08-14 06:58:09 +02:00 |
|
Matthias
|
87e4a82041
|
Merge branch 'develop' into bt_add_maxdrawdown
|
2020-08-09 08:34:36 +02:00 |
|
Matthias
|
fca41a44bb
|
Also logg timeframe
|
2020-08-08 20:20:58 +02:00 |
|
Matthias
|
2afe1d5b11
|
Add link to full sample
|
2020-08-08 17:30:31 +02:00 |
|
Matthias
|
dd430455e4
|
Enable dataprovier for hyperopt
|
2020-08-08 17:04:32 +02:00 |
|
Matthias
|
8b6d10daf1
|
Move DefaultHyperopt to test folder (aligned to strategy)
|
2020-08-06 08:50:41 +02:00 |
|
Matthias
|
aab5596fa6
|
Convert trade open / close to timestamp
(to allow uniform analysis of backtest and real trade data - while
giving control of date-formatting to the endsystem.
|
2020-07-27 07:20:40 +02:00 |
|
Matthias
|
977a6d4e9c
|
Add profit_total to results line
|
2020-07-26 16:10:48 +02:00 |
|
Matthias
|
454046f745
|
Add stake_currency and max_opeN_trades to backtest result
|
2020-07-26 15:55:54 +02:00 |
|
Matthias
|
8d0f338bf2
|
Timestamps should be in ms
|
2020-07-26 15:23:21 +02:00 |
|
Matthias
|
9ed5fed887
|
Fix output format to be of an identical type
|
2020-07-26 15:17:54 +02:00 |
|
Matthias
|
902e8fa62f
|
Fix wrong spelling in one subcomponent
|
2020-07-26 14:39:00 +02:00 |
|
Matthias
|
c1191400a4
|
Allow 0 fee value by correctly checking for None
|
2020-07-15 19:20:20 +02:00 |
|
Matthias
|
bdf611352e
|
Update summary-metrics output
|
2020-07-14 19:34:01 +02:00 |
|
Matthias
|
1fc4451d2f
|
Avoid \ linebreak
|
2020-07-03 20:32:04 +02:00 |
|
Matthias
|
0d15a87af8
|
Remove old store_backtest method
|
2020-07-03 20:21:32 +02:00 |
|
Matthias
|
987188e41f
|
Add avgduration for winners and losers
|
2020-07-03 19:58:02 +02:00 |
|
Matthias
|
8e0ff4bd86
|
Add Win / draw / losing days
|
2020-07-03 19:45:45 +02:00 |
|
Matthias
|
42868ad24a
|
Add best / worst day to statistics
|
2020-07-03 19:30:29 +02:00 |
|
Matthias
|
7c5587aeaa
|
exportfilename can be a file or directory
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
2ed808da1f
|
Extract .last_result.json to constant
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
59e0ca0aaa
|
Add pairlist to backtest-result
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
c13ec4a1d4
|
implement fallback loading for load_backtest_data
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
7727292861
|
Rename duration to trade_duration
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
f368aabcc7
|
Add amount to backtest-result
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
6e94734678
|
Add fee to backtestresult
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
03ab61959b
|
Add test for generate_backtest_stats
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
075eb0a161
|
Fix sequence of saving
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
0fa56be9d2
|
remove openIndex and closeIndex from backtest-report
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
04cbc2cde5
|
Shorten variable
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
b068e7c564
|
Rename open_time and close_time to *date
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
415853583b
|
Save backtest-stats
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
81c8e8677d
|
use 0 as profit mean, not nan
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
480c5117f1
|
Handle empty return strings
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
5fce7f3b22
|
Add market Change
closes #2524 and #3518
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
cf044d166e
|
Tests should use new Datetime format too
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
fbddfaeacf
|
Introduce DatetimePrintFormat
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
cbcf3dbb43
|
Add more metrics to summarytable
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
6922fbc3aa
|
Add max_drawdown error handler
|
2020-07-03 06:58:27 +02:00 |
|
Matthias
|
455b26ea48
|
Add max drawdown to backtesting
|
2020-07-03 06:58:27 +02:00 |
|
hroff-1902
|
02c0488d45
|
Merge pull request #3453 from freqtrade/fix/3363
Backtesting should load pairlists after the strategy
|
2020-06-29 21:53:33 +03:00 |
|
Matthias
|
0b2982caed
|
Merge branch 'develop' into hyperopt_colorama_init
|
2020-06-16 10:16:41 +02:00 |
|
Matthias
|
761407f74d
|
Merge pull request #3430 from freqtrade/timeframe
ticker_interval -> timeframe
|
2020-06-15 13:47:26 +02:00 |
|
Matthias
|
a3506f4d8e
|
Merge branch 'develop' into timeframe
|
2020-06-15 06:35:55 +02:00 |
|
Matthias
|
d337fb6c6a
|
Update some comments
|
2020-06-15 06:35:31 +02:00 |
|
hroff-1902
|
ea77edce05
|
Make flake happy
|
2020-06-13 18:54:54 +03:00 |
|