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 |
|
Matthias
|
6d1c82a5fa
|
Remove last refreence to get_candle_history
|
2018-08-19 19:50:14 +02:00 |
|
Matthias
|
2b37c1ff0e
|
Merge branch 'develop' into ujson-loader
|
2018-08-12 13:11:40 +02:00 |
|
Matthias
|
7d72e364aa
|
Remove broken ujson loading - replace with variable-based fix
|
2018-08-12 13:08:10 +02:00 |
|
Matthias
|
a852d2ff32
|
default since_ms to 30 days if no timerange is given
|
2018-08-10 11:15:02 +02:00 |
|
Matthias
|
a107c4c7b4
|
Download using asyncio
|
2018-08-10 11:08:28 +02:00 |
|
Matthias
|
74d6816a1a
|
Fix some comments
|
2018-08-10 11:00:07 +02:00 |
|
Janne Sinivirta
|
3a5b435dfa
|
Merge pull request #1089 from freqtrade/feat/backtest_multi_strat
Allow multi strategy backtest without data reload
|
2018-08-02 12:35:47 +03:00 |
|
creslin
|
a741f1144a
|
missing __init__.py
|
2018-08-02 08:58:04 +00:00 |
|
Matthias
|
40ee86b357
|
Adapt after rebase
|
2018-07-31 21:08:03 +02:00 |
|
Matthias
|
76fbb89a03
|
use print for backtest results to avoid odd newline-handling
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
c648e2acfc
|
Adjust documentation to strategy table
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
028589abd2
|
Add strategy summary table
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
5125076f5d
|
Fix typo
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
a57a2f4a75
|
Store backtest-result in different vars
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
bd3563df67
|
Add test for new functionality
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
644f729aea
|
Refactor strategy loading to __init__
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
5f2e92ec5c
|
Refactor backtesting
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
65aaa3dffd
|
Extract backtest strategy setting
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
56046b3cb3
|
Add strategylist option to backtesting
|
2018-07-31 21:04:03 +02:00 |
|
Matthias
|
787d6042de
|
Switch from pair(str) to metadata(dict)
|
2018-07-29 20:56:23 +02:00 |
|
Matthias
|
5fbce13830
|
update hyperopt to use new methods
|
2018-07-29 20:55:40 +02:00 |
|
Matthias
|
98665dcef4
|
revert inadvertent wihtespace changes
|
2018-07-29 20:55:37 +02:00 |
|
Matthias
|
df8700ead0
|
Adapt after merge from develop
|
2018-07-29 20:55:37 +02:00 |
|
Gert Wohlgemuth
|
0dcaa82c3b
|
fixed test?
|
2018-07-29 20:55:06 +02:00 |
|
Gert Wohlgemuth
|
3dd7d209e9
|
more test fixes
|
2018-07-29 20:55:06 +02:00 |
|
Gert Wohlgemuth
|
abc55a6e6b
|
fixing? hyperopt
|
2018-07-29 20:55:06 +02:00 |
|
xmatthias
|
2e6e5029ba
|
fix mypy and tests
|
2018-07-29 20:55:06 +02:00 |
|
Matthias
|
7f27beff4b
|
Revert "backtesting: try to load data with ujson if it exists"
|
2018-07-29 13:23:11 +02:00 |
|
Samuel Husso
|
cb2fff8909
|
mypy doesn't handle common idiomacy so disable the line (see the open issue more details)
|
2018-07-28 22:06:26 +03:00 |
|
Samuel Husso
|
cdd8cc551c
|
backtesting: try to load data with ujson if it exists
|
2018-07-28 21:56:11 +03:00 |
|
Janne Sinivirta
|
4b38c8b11d
|
use pandas own min and max for column sorting
|
2018-07-25 17:04:25 +03:00 |
|
Janne Sinivirta
|
0b3190552e
|
Merge pull request #1018 from freqtrade/feat/sell_reason
Record sell reason
|
2018-07-24 09:09:45 +03:00 |
|
Matthias
|
4fb9823cfb
|
fix rebase problem
|
2018-07-19 19:50:06 +02:00 |
|
Matthias
|
760c79c5e9
|
Use .center() to output trades header line
|
2018-07-19 19:39:08 +02:00 |
|
Matthias
|
a452864b41
|
Use namedtuple for sell_return
|
2018-07-19 19:39:08 +02:00 |
|
Matthias
|
506aa0e3d3
|
Add print_sales table and test
|
2018-07-19 19:34:14 +02:00 |
|
Matthias
|
2a61629014
|
Export sell_reason from backtest
|
2018-07-19 19:29:31 +02:00 |
|
Matthias
|
cbffd3650b
|
add sell_reason to backtesting
|
2018-07-19 19:29:31 +02:00 |
|
Janne Sinivirta
|
0cc1b66ae7
|
Merge pull request #1037 from freqtrade/fix/backtest-comment
replace --realistic with 2 separate flags
|
2018-07-19 17:33:19 +03:00 |
|
Janne Sinivirta
|
6070d819b8
|
Merge pull request #1040 from freqtrade/xmatthias_backtest_duration
Fix backtest duration calculation
|
2018-07-19 17:32:11 +03:00 |
|
Matthias
|
8f254031c6
|
Add short form for parameters, change default for hyperopt
|
2018-07-19 13:19:36 +02:00 |
|
Matthias
|
aa69177436
|
Properly check emptyness and adjust floatfmt
|
2018-07-19 13:14:21 +02:00 |
|
Matthias
|
79b1030435
|
output duration in a more readable way
|
2018-07-18 20:08:55 +02:00 |
|
Matthias
|
f9f6a3bd04
|
cast to int to keep exports constant
|
2018-07-18 09:29:51 +02:00 |
|
Matthias
|
8e4d2abd4e
|
Fix typo
|
2018-07-18 09:10:17 +02:00 |
|
Matthias
|
08237abe20
|
Fix wrong backtest duration
identified in #1038
|
2018-07-18 09:06:12 +02:00 |
|
Matthias
|
c82276ecbe
|
add --disable-max-market-positions
|
2018-07-17 21:05:03 +02:00 |
|
Matthias
|
e17618407b
|
Rename --realistic-simulation to --enable-position-stacking
|
2018-07-17 20:26:59 +02:00 |
|
Janne Sinivirta
|
aeb4102bcb
|
refactor Analyze class methods to base Strategy class
|
2018-07-16 08:23:39 +03:00 |
|
Janne Sinivirta
|
85e6c9585a
|
remove pass-through methods from Analyze
|
2018-07-16 08:23:39 +03:00 |
|
Janne Sinivirta
|
a74147c472
|
move strategy initialization outside Analyze
|
2018-07-16 08:23:39 +03:00 |
|
Matthias
|
06c9494a46
|
add missing s to Backtest cum results
|
2018-07-11 14:50:04 +02:00 |
|
Janne Sinivirta
|
aa2366346a
|
Merge pull request #1001 from xmatthias/feat/backtest_cum_profit
Add cumulative profit to backtest result table
|
2018-07-11 07:21:28 +03:00 |
|
Matthias
|
8b06000f0f
|
Use open-rates for backtesting
|
2018-07-08 20:03:11 +02:00 |
|
Matthias
|
efaa8f16e7
|
Improve formattiong of table
|
2018-07-08 20:01:33 +02:00 |
|
Matthias
|
1a24afef77
|
add cumsum to backtest-results
|
2018-07-08 19:55:04 +02:00 |
|
Samuel Husso
|
7dca3c6d03
|
freqtradebot,main,hyperopt: fstrings in use
|
2018-07-05 10:11:29 -05:00 |
|
Samuel Husso
|
03c112a601
|
config, optimize: fstrings in use
|
2018-07-05 10:11:29 -05:00 |
|
Samuel Husso
|
d8d0579c5a
|
Merge pull request #930 from freqtrade/skopt
Replace Hyperopt with scikit-optimize
|
2018-07-04 13:51:14 -05:00 |
|
Janne Sinivirta
|
bf4d0a9b70
|
sort imports
|
2018-07-04 10:31:35 +03:00 |
|
Janne Sinivirta
|
96bb2efe69
|
use joblib.dump and load for trials
|
2018-07-03 23:08:29 +03:00 |
|
Janne Sinivirta
|
c4a8435e00
|
change pickle file name to better suit it's current purpose
|
2018-07-03 22:17:43 +03:00 |
|
Janne Sinivirta
|
3a7056ea1b
|
run at least one epoch
|
2018-07-03 21:55:22 +03:00 |
|
Janne Sinivirta
|
2cde540645
|
remove dead code
|
2018-07-03 21:50:45 +03:00 |
|
Janne Sinivirta
|
ef59f9ad24
|
sort imports in hyperopt.py
|
2018-07-03 21:50:24 +03:00 |
|
Janne Sinivirta
|
ee4754cfb9
|
avoid re-serialization of whole dataframe
|
2018-07-03 14:49:58 +03:00 |
|