Matthias
7af445adf3
Merge pull request #2137 from hroff-1902/hyperopt-adaptive-roi-space
...
Hyperopt: adaptive roi_space
2019-09-06 06:26:52 +02:00
hroff-1902
9a6a89c238
allow simplified hyperopt interface
2019-09-03 19:54:28 +03:00
hroff-1902
d9c2b7d460
fix fetching ticker_interval from strategy
2019-08-26 22:31:24 +03:00
hroff-1902
bfc68ec792
minor cleanup in Backtesting
2019-08-25 23:36:42 +03:00
Matthias
513e84880e
Don't escape ticks where it's not needed
2019-08-25 20:38:51 +02:00
hroff-1902
067208bc9d
make backtesting an attribute of Hyperopt
2019-08-24 00:10:35 +03:00
Matthias
91b0394433
Merge pull request #2156 from freqtrade/remove_live
...
Remove deprecated option live - deprecate -r
2019-08-22 15:33:39 +02:00
Matthias
aaeeb9c0c6
Merge branch 'develop' into align_userdata
2019-08-21 19:41:10 +02:00
hroff-1902
fcb0ff1b60
do not round values in the debug message
2019-08-20 23:42:44 +03:00
hroff-1902
17b3f01b28
Merge branch 'develop' into hyperopt-adaptive-roi-space
2019-08-20 23:00:23 +03:00
hroff-1902
cadf573170
round printed stoploss value as well
2019-08-20 22:24:59 +03:00
hroff-1902
a12876da92
fine printing for floats in the roi tables (round to 5 digits after the decimal point)
2019-08-20 22:17:21 +03:00
Matthias
9e24992835
Remove calls to load_data using live=
2019-08-20 07:00:43 +02:00
Matthias
9e8ca8d4bf
Merge pull request #2138 from freqtrade/history_docstrings
...
Refactorings to history
2019-08-20 06:35:54 +02:00
Matthias
0a478bc0dc
Merge branch 'develop' into align_userdata
2019-08-18 15:00:12 +02:00
Matthias
09286d4918
file_dump_json accepts Path - so we should feed it that
2019-08-16 13:04:48 +02:00
hroff-1902
e525275d10
make flake and mypy happy
2019-08-15 23:13:46 +03:00
hroff-1902
4fa92ec0fa
hyperopt: --print-json option added
2019-08-15 21:39:04 +03:00
hroff-1902
5b9711c002
adaptive roi_space
2019-08-14 13:25:49 +03:00
Matthias
51c3a31bb5
Correct imports and calls to parse_timerange
2019-08-14 10:07:32 +02:00
Matthias
c0784b7c33
Merge pull request #2089 from hroff-1902/hyperopt-print-colorized
...
Hyperopt print colorized results
2019-08-13 19:36:06 +02:00
hroff-1902
8f92912852
final colorization schema
...
colorization schema-2: red, green, bright/dim
colorization schema-3: red, green, bright only green bests
colorization schema-4: no red, green for profit, bright for bests
2019-08-12 21:08:52 +03:00
hroff-1902
e5dcd520ba
cosmetics in sample_hyperopt and default_hyperopt
2019-08-12 02:19:50 +03:00
Matthias
2c5a499a8b
Merge branch 'develop' into align_userdata
2019-08-10 20:15:07 +02:00
Matthias
74e583a612
Merge pull request #2094 from hroff-1902/hyperopt-roi-stoploss
...
Simplify custom hyperopts -- no need to copy ugly methods in every custom implementation
2019-08-10 15:49:52 +02:00
hroff-1902
ae39f6fba5
use of termcolor eliminated
2019-08-09 14:51:03 +03:00
Cedric Schmeits
8ad5afd3a1
As -sharp_ratio is returned the value should be nagative.
...
This leads in a high positive result of the loss function, as it is a minimal optimizer
2019-08-08 22:10:51 +02:00
hroff-1902
0d4a2c6c3a
advanced sample hyperopt added; changes to helpstrings
2019-08-08 22:51:37 +03:00
Matthias
3d3b0938e5
Merge pull request #2101 from freqtrade/backtest_ticker_interval_unset
...
Backtest ticker interval unset
2019-08-07 14:20:36 +02:00
Matthias
7e91a0f4a8
Fail gracefully if ticker-interval is not set
2019-08-06 06:45:44 +02:00
Matthias
bc2e920ae2
Adjust code to verify "current" candle for buy/sells
2019-08-05 20:07:29 +02:00
hroff-1902
c6444a10a8
move roi_space, stoploss_space, generate_roi_table to IHyperOpt
2019-08-05 18:07:25 +03:00
Matthias
383b24ab84
Merge branch 'develop' into align_userdata
2019-08-05 06:55:51 +02:00
hroff-1902
9cbab35de0
colorization by means of termcolor and colorama
2019-08-04 22:54:19 +03:00
hroff-1902
f200f52a16
hyperopt print colorized results
2019-08-03 19:09:42 +03:00
hroff-1902
13620df717
'with values:' line removed
2019-08-03 11:05:05 +03:00
hroff-1902
3b65c986ee
wordings fixed
2019-08-03 10:20:20 +03:00
hroff-1902
aa8f44f68c
improvements to hyperopt output
2019-08-02 22:22:58 +03:00
Matthias
39e8e507d9
Merge branch 'develop' into align_userdata
2019-08-02 20:08:26 +02:00
hroff-1902
065ebd39ef
cleanup in hyperopt
2019-08-01 23:57:26 +03:00
Matthias
bcccdda7c0
Merge branch 'develop' into align_userdata
2019-08-01 19:33:45 +02:00
Matthias
8cef567abc
create and use hyperopt-results folder
2019-07-31 07:10:17 +02:00
hroff-1902
8f1f416a52
hyperopt cleanup and output improvements
2019-07-30 11:47:28 +03:00
Matthias
2c7a248307
Use user_data_dir in hyperopt
2019-07-28 14:57:05 +02:00
Matthias
0a253d66d0
Remove os.path from hyperopt
2019-07-28 14:57:05 +02:00
hroff-1902
e9b77298a7
max() removed
2019-07-25 08:17:41 +03:00
hroff-1902
0c2c094db6
minor: add OnlyProfitHyperOptLoss
2019-07-23 18:51:24 +03:00
Matthias
639a4d5cf7
Allow importing interface from hyperopt.py
2019-07-17 07:15:43 +02:00
Matthias
0e500de1a0
Add sample loss and improve docstring
2019-07-17 06:32:24 +02:00
Matthias
8ccfc0f316
Remove unused variables
2019-07-17 06:24:40 +02:00
Matthias
ec49b22af3
Add sharpe ratio hyperopt loss
2019-07-16 06:45:13 +02:00
Matthias
d23179e25c
Update hyperopt-loss to use resolver
2019-07-16 06:27:43 +02:00
Matthias
7d62bb8c53
Revert --clean argument to --continue
2019-07-16 05:51:26 +02:00
Matthias
07a1c48e8c
Fix wrong intendation for custom-hyperopt check
2019-07-15 23:14:07 +02:00
Matthias
7be25313a5
Add some mypy ignores
2019-07-15 22:59:28 +02:00
Matthias
55e8092cbf
Add sharpe ratio as loss function
2019-07-15 22:52:33 +02:00
Matthias
e5170582de
Adapt tests to new loss-function method
2019-07-15 22:45:14 +02:00
Matthias
710443d200
Add documentation for custom hyperopt
2019-07-15 21:38:49 +02:00
Matthias
2a20423be6
Allow loading custom hyperopt loss functions
2019-07-15 21:35:42 +02:00
Matthias
2fedae6060
Move unnecessary things out of generate_optimizer
2019-07-15 20:31:55 +02:00
Matthias
b1b4048f97
Add test for hyperopt
2019-07-15 20:28:02 +02:00
Matthias
107f00ff8f
Add hyperopt option to clean temporary pickle files
2019-07-15 20:17:15 +02:00
Matthias
5144e98a82
Merge pull request #2015 from hroff-1902/refactor/config2
...
Make configuration a module
2019-07-15 19:41:57 +02:00
Matthias
cbe25178d7
Merge pull request #2009 from hroff-1902/fix-2008
...
fix #2008
2019-07-15 10:55:33 +02:00
hroff-1902
65f77306d3
using logger.debug, info was too noisy
2019-07-14 21:00:48 +03:00
hroff-1902
efbc7cccb1
enable --dmmp for hyperopt
2019-07-14 20:56:17 +03:00
hroff-1902
1bdffcc73b
make configuration a sep. module, including arguments
2019-07-12 00:49:23 +03:00
hroff-1902
e993e010f4
Fix #2013
2019-07-11 23:02:57 +03:00
hroff-1902
c474e2ac86
fix #2008
2019-07-10 01:53:40 +03:00
Matthias
700bc087d3
Merge pull request #1952 from hroff-1902/fix/1948
...
Fix #1948
2019-06-27 19:36:06 +02:00
hroff-1902
e5a8030dd7
comment added
2019-06-27 16:42:10 +03:00
Matthias
a07653a6cc
Merge branch 'develop' into fix/validate_dataframe
2019-06-24 06:21:08 +02:00
hroff-1902
7fbdf36c64
avoid code duplication while selecting min_roi entries
2019-06-23 19:23:51 +03:00
Matthias
4cbcb5f36f
Move .title to ExchangeResolver (it does not make sense to do this over
...
and over again)
2019-06-22 16:52:14 +02:00
Matthias
7a0d86660e
Mypy type errors
2019-06-21 07:10:30 +02:00
hroff-1902
813c008af2
setup_configuration() cleanup
2019-06-16 21:37:43 +03:00
Matthias
89ff614e1d
Add pair as parameter, and warn when fillup was necessary
2019-06-15 13:46:19 +02:00
Matthias
55079831a1
Don't explicitly validate backtest data (it's done while loading now).
2019-06-15 13:45:50 +02:00
Misagh
ad9dc349e4
edge cli should override stake_amount
2019-06-15 12:20:32 +02:00
Matthias
1afe6c1437
Don't run validation per strategy, it's only eneded once
2019-06-14 19:37:54 +02:00
Matthias
4dc3a0ca1d
Small cleanup to reduce dict lookups during backtesting/hyperopt
2019-06-10 16:20:19 +02:00
hroff-1902
90b0f1daa8
minor optimize cleanup
2019-06-10 02:08:54 +03:00
Matthias
c2f6897d8b
Move download of live data to load_data
...
Avoids code duplication in backtesting and plot_dataframe
2019-05-29 20:20:20 +02:00
Matthias
55bdd26439
Edgecli -> Edge for Runmode and start_edge()
2019-05-28 19:25:01 +02:00
Matthias
104f1212e6
Move edge_cli_start to optimize
2019-05-25 20:06:15 +02:00
Matthias
236c392d28
Don't load hyperopts / optimize dependency tree if that module is not
...
used
2019-05-25 20:00:31 +02:00
Matthias
b38c43141c
Adjust imports to new location
2019-05-25 16:53:35 +02:00
Matthias
9225cdea8a
Move validate_backtest_data and get_timeframe to histoyr
2019-05-25 16:51:52 +02:00
hroff-1902
c3e93e7593
fix reduce() TypeError in hyperopts
2019-05-24 23:08:56 +03:00
hroff-1902
406e266bb4
typo in comment fixed
2019-05-22 14:34:35 +03:00
hroff-1902
2c9a519c5e
edge: handle properly the 'No trades' case
2019-05-22 14:21:36 +03:00
hroff-1902
8b95e12468
log message adjusted in backtesting and hyperopt
2019-05-15 12:05:35 +03:00
hroff-1902
5677c4882e
minor: add ticker data validation; log backtesting interval
2019-05-13 23:56:59 +03:00
hroff-1902
00b4501c59
avg profit and total profit corrected (to be %, not ratio); comments cleaned up a bit; typo in the log msg fixed
2019-05-12 21:14:00 +03:00
hroff-1902
0f43e0bb7d
minor hyperopt output improvements
2019-05-10 10:54:44 +03:00
hroff-1902
e7b81e4d46
hyperopt --min-trades parameter
2019-05-01 15:27:58 +03:00
hroff-1902
ea44bbff9f
prevent hyperopt from running simultaneously
2019-04-25 11:11:04 +03:00
Matthias
bf56e25404
Merge pull request #1746 from hroff-1902/json-defaults
...
Support for defaults in json schema
2019-04-24 12:20:39 +02:00
Matthias
d16ccd7e37
Merge branch 'develop' into json-defaults
2019-04-24 09:51:04 +02:00
hroff-1902
6a0f527e0e
merge --job-workers and commit printing debug log messages with the opt state
2019-04-24 10:35:04 +03:00
hroff-1902
2898067318
Merge branch 'develop' into hyperopt-jobs
2019-04-24 10:31:03 +03:00
hroff-1902
fc4ef2b430
Merge branch 'develop' into hyperopt-opt-params
2019-04-23 21:58:27 +03:00
hroff-1902
e3b0474901
Merge branch 'develop' into hyperopt-jobs
2019-04-23 21:34:38 +03:00
hroff-1902
cc9f899cd6
removed explicit dependency on multiprocessing module
2019-04-23 21:25:36 +03:00
hroff-1902
a022b1a6c1
--random-state for optimzer to get reproducible results added
2019-04-23 21:18:52 +03:00
Matthias
4971b9fc39
Merge pull request #1793 from hroff-1902/hyperopt-debug-state
...
hyperopt: print optimizer state in debug log messages
2019-04-23 20:11:04 +02:00
hroff-1902
3e3fce5f38
print optimizer state in debug log messages
2019-04-23 09:49:24 +03:00
hroff-1902
7c8e26c717
-j/--job-workers option added for controlling the number of joblib parallel worker processes used in hyperopt
...
docs refreshed
2019-04-23 00:52:07 +03:00
hroff-1902
ad85ac3dde
make --refresh-pairs-cached common option for optimization; added support for it into hyperopt
2019-04-22 21:24:45 +03:00
hroff-1902
6b87d94bb0
--print-all command line option added for hyperopt
2019-04-22 01:10:01 +03:00
hroff-1902
9fbe573cca
limit usage of ccxt to freqtrade/exchange only
2019-04-09 12:27:35 +03:00
hroff-1902
4559a38172
PoC: use defaults in json schema for some exchange options
2019-04-08 04:42:28 +03:00
hroff-1902
8cb1024ff6
Merge branch 'develop' into ccxt-parse_timeframe
2019-04-05 23:16:27 +03:00
Misagh
9dc2a30793
Merge pull request #1683 from gianlup/fix_bt_partial_data
...
Fix backtest problem with partial data
2019-04-05 07:28:57 +02:00
Matthias
7010c835d2
Improve commentign
2019-04-04 20:23:10 +02:00
hroff-1902
2aa1b43f01
get rid of TICKER_INTERVAL_MINUTES dict, use ccxt's parse_timeframe() instead
2019-04-04 20:56:40 +03:00
Matthias
32cbb714f9
Improve commenting on backtsting and backtest_multi_tst
2019-04-04 19:44:03 +02:00
Matthias
0307ba7883
Remove one branch - python does lazy evaluation
2019-04-03 20:04:04 +02:00
Matthias
e085fd9e95
Disable dataprovider from hyperopt.
...
Dataprovider uses weak links to initialize, which cannot be pickled, and
therefore cannot be used during hyperopt.
2019-03-25 19:49:58 +01:00
Matthias
0ae81d4115
Provide dataprovider access during backtesting
2019-03-25 19:26:51 +01:00
Matthias
00e6749d8b
Refactor backtest() to be a bit more concise
2019-03-23 15:00:07 +01:00
Gianluca Puglia
6b89e86a97
Removed Timestamp cast
2019-03-20 19:44:59 +01:00
Gianluca Puglia
0eff324ce0
Use dedicated index for every pair
2019-03-20 18:38:10 +01:00
Matthias
e67ffd2d87
Fix issue that backtest is broken when stoploss_on_exchange is on
2019-03-06 19:55:34 +01:00
Matthias
02d13645b0
Merge branch 'develop' into feat/dataprovider
2019-01-26 19:29:41 +01:00
Matthias
3afe54790e
Merge pull request #1510 from gianlup/add_totprofit_to_bt
...
Added total profit column to backtest result
2019-01-25 06:38:39 +01:00
Matthias
d136cac181
Merge branch 'develop' into feat/dataprovider
2019-01-23 21:01:19 +01:00
Gianluca Puglia
896c9d34fd
Added total profit column do backtest result
2019-01-22 22:41:53 +01:00
Matthias
13e2f71d30
Add flake8 plugins and implement small improvements
2019-01-22 20:01:12 +01:00
Matthias
0aa0b1d4fe
Store tickers by pair / ticker_interval
2019-01-22 07:07:15 +01:00
Matthias
a206777fe5
Rename refresh_tickers to refresh_latest_ohlcv
2019-01-22 07:05:09 +01:00
Matthias
1340b71633
Add RunMode setting to determine bot state
2019-01-22 07:04:19 +01:00
Matthias
a2c01916e1
Add type-ignores to floatfmt
...
tabulate supports this:
30554300d7/tabulate.py (tabulate.py-1291)
:1294
2019-01-17 20:28:21 +01:00
Matthias
cd2bccd441
Have backtest use the same logic to get the ROI entry
2019-01-12 13:45:43 +01:00
Matthias
40b1d8f067
Fix CI problems
2019-01-06 14:57:14 +01:00
Matthias
dd2af86a41
pprint results
2019-01-06 14:47:38 +01:00
Matthias
167088827a
include default buy/sell trends for the hyperopt strategy
2019-01-06 14:13:15 +01:00
Matthias
a0df7b9d7c
Use sell/buy trends from hyperopt file if available
2019-01-06 14:12:55 +01:00
Matthias
2147bd8847
Fix problem when no experimental dict is available
2019-01-06 13:29:14 +01:00
Matthias
798ae460d8
Add check if trigger is in parameters
2019-01-06 13:29:14 +01:00
Matthias
68ba1e1f37
Add sell signal hyperopt
2019-01-06 13:29:14 +01:00
Misagh
26a77e193e
Merge pull request #1454 from freqtrade/feat/interpolate_missing
...
interpolate missing candles
2019-01-04 22:33:53 +01:00
Matthias
2bc76771bf
Align backtest to interface.py
...
interface.py roi calculation skips on <= duration
the correct selection is therefore trade_duration > x.
2019-01-01 16:50:10 +01:00
Matthias
fae875f588
Implement missing_data_fillup to tests and operations
2018-12-31 19:15:49 +01:00
Matthias
8b9cc45f41
move test for data completeness
...
should be done before analyzing strategy
2018-12-31 15:09:50 +01:00
Matthias
429f846ad1
Switch load_data to kwargs
2018-12-15 20:31:05 +01:00
Matthias
6c02cc5993
Adjust test to pathlib
2018-12-15 14:14:38 +01:00
Matthias
21aba1620c
Replace calls to load_data
2018-12-15 14:10:33 +01:00
Matthias
407139b0e0
remove unused imports
2018-12-14 06:32:49 +01:00
Matthias
432cc00283
Adjust imports to data.history
2018-12-14 06:32:49 +01:00
Matthias
1a3fcd4771
extract data-handling methods from optimize
2018-12-14 06:32:49 +01:00
Matthias
04c330f10b
Merge pull request #1404 from freqtrade/feat/pass_df
...
keep DF instead of list
2018-12-13 20:14:32 +01:00
Matthias
7e3955b04c
Fix edge-cli comments (refer to edge, not backtest
2018-12-12 20:04:14 +01:00
Matthias
7a533de1a8
Use list ticker history for backtesting
2018-12-12 19:17:09 +01:00
Matthias
3ac2106a16
Merge pull request #1290 from freqtrade/fix/backtest_toomanyopen
...
fix backtesting not respecting max_open_trades
2018-11-30 19:17:09 +01:00
Matthias
cc7b820978
Move hyperoptresolver to resolvers package
2018-11-24 20:14:08 +01:00
Matthias
21a093bcdb
extract resolvers to IResolvers and it's own package
2018-11-24 20:00:02 +01:00
Matthias
805f509498
Merge branch 'develop' into fix/backtest_toomanyopen
2018-11-24 10:39:16 +01:00
Matthias
64028647a0
Merge pull request #571 from stephendade/userhyper
...
Separated out custom hyperopts
2018-11-21 19:14:30 +01:00
Matthias
a3b6004115
IHyperopt: all methods static, somef ixes for mypy
2018-11-20 19:41:07 +01:00
Matthias
7757c53b06
Small fixes
2018-11-20 17:43:49 +01:00
Matthias
5dd013c3b1
Rename hyperopt interface and resolver
2018-11-20 17:40:45 +01:00
misagh
f666d1596b
renaming edge to edge_cli for command line version
2018-11-15 10:31:56 +01:00
Matthias
4f800bfbc8
Fix pickling-error
2018-11-14 20:25:43 +01:00
misagh
ca22a116ad
timerange added to args
2018-11-14 17:14:37 +01:00
misagh
5d73b303fe
unnecessary libraries removed + arg help enriched
2018-11-14 16:49:16 +01:00
misagh
dd47d7adb4
cli blank line added to readability
2018-11-14 16:37:26 +01:00
misagh
b0e4aa8eff
stop loss range added to args
2018-11-14 16:31:23 +01:00
misagh
36030176bb
nb_trades and avg_trade_duration added to cli
2018-11-14 13:38:23 +01:00
misagh
5de3f1d9dd
showing result in tabular
2018-11-14 13:25:44 +01:00
misagh
95cbbf1cb5
adding edge configuration to cli
2018-11-14 12:53:20 +01:00
misagh
cf974168e9
Edge cli drafted
2018-11-14 12:37:15 +01:00
Matthias
93429a58b2
remove TODO
2018-11-09 07:13:20 +01:00
Matthias
9cd2ed5a16
fix hyperopt get_timeframe mock
2018-11-09 07:13:20 +01:00
Matthias
66487f2a13
require start/end-date argument in backtest
2018-11-09 07:13:20 +01:00
Matthias
96efd12a31
add new options to hyperopt
2018-11-09 07:12:41 +01:00
Matthias
e94da7ca41
inverse backtest logic to loop over time - not pairs (more realistic)
2018-11-09 07:12:41 +01:00
Matthias
7b62e71f23
Fix some tests and rebase issues
2018-11-07 20:45:52 +01:00
Matthias
8044846d37
Fix some refactoring problems
2018-11-07 07:05:40 +01:00
Stephen Dade
477515c4b5
Now using resolver for custom hyperopts
2018-11-07 06:58:20 +01:00
Stephen Dade
e0f420983e
Updated logger in custom_hyperopt
2018-11-07 06:55:28 +01:00
Stephen Dade
469db0d434
Decoupled custom hyperopts from hyperopt.py
2018-11-07 06:26:16 +01:00
Matthias
95d271ca5d
Fix ROI close-rate calculation to work with fees - adjust tests
2018-11-01 13:14:59 +01:00
Matthias
8c93760a6d
simplify some code
2018-10-30 20:23:31 +01:00
Matthias
f96f0cdea7
Add additional comment
2018-10-30 20:02:31 +01:00
Matthias
98050ff594
use all min_roi entries
2018-10-29 19:27:23 +01:00
Matthias
233c442af9
Adjust backtest so sell uses stop-loss or roi value as closerate
2018-10-29 19:27:23 +01:00
Matthias
db9a85f4a2
Merge pull request #1282 from freqtrade/feat/add_missingdata_warning
...
Show warning if part of backtest data is missing
2018-10-27 11:16:10 -04:00
Matthias
3c6d10f03e
Print missing value count too
2018-10-18 20:05:57 +02:00
Matthias
bc356c4d65
Return true/false for validation function
2018-10-18 19:48:54 +02:00
Matthias
fb52d32296
Add validate_backtest_data function
2018-10-18 19:42:54 +02:00
Matthias
d7459bbbf3
refactor get_timeframe out of backtesting class
2018-10-17 19:59:33 +02:00
Matthias
8a3272e7c5
don't copy tickerdata_to_dataframe into backtesting
...
it's used only once, so this does not make sense and hides the origin of
the function
2018-10-17 19:47:19 +02:00
Matthias
631ba464f3
Show warning if part of backtest data is missing
2018-10-14 14:40:03 +02:00
Matthias
84622dc84b
Move test for strategy out of constructor
2018-09-29 14:23:53 +02:00
Matthias
1b290ffb5d
Update hyperopt to show errors if non-supported variables are used
2018-09-29 13:49:38 +02:00
Matthias
6e66763e5f
Only load strategy once during backtesting
2018-09-27 19:23:55 +02:00
Matthias
567211e9f9
don't print "NAN" lines in "left_open_trades"
2018-09-20 20:35:26 +02:00
Matthias
54ddd908e6
Merge branch 'develop' into ccxt-async
2018-08-29 19:43:09 +02:00
Matthias
a077955efa
update json.load to json_load - followup to #1142
2018-08-19 19:58:07 +02:00