Commit Graph

454 Commits

Author SHA1 Message Date
Matthias fd3afdc230 plot-profit should use absolute values 2021-04-25 10:10:09 +02:00
Matthias e855530483 hdf5 handler should include the end-date 2021-04-24 20:26:37 +02:00
Matthias 406c1267a2 Remove superfluss space 2021-04-22 20:01:08 +02:00
Rokas Kupstys 09efa7b06b Add --new-pairs-days parameter for download-data command.
This parameter allows us to customize a number of days we would like to download for new pairs only. This allows us to achieve efficient data update, downloading all data for new pairs and only missing data for existing pairs. To do that use `freqtrade download-data --new-pairs-days=3650` (not specifying `--days` or `--timerange` causes freqtrade to download only missing data for existing pairs).
2021-04-22 10:07:13 +03:00
Matthias 9b23be4021 Return a copy from `current_whitelist`
this avoids manipulating of the pair whitelist from within a strategy
2021-04-13 06:49:53 +02:00
Matthias 50fcb3f330 Reduce verbosity of missing data if less than 1% of data is missing 2021-03-30 07:26:39 +02:00
Matthias 89bbfd2324 Remove candle_count from dataframe before backtesting
closes #3754
2021-03-29 20:26:54 +02:00
Matthias 53a57f2c81 Change some types
Fix types of new model object
2021-02-27 09:33:00 +01:00
Matthias aed23d55c2 Add starting balance to profit cumsum calculation 2021-02-27 09:33:00 +01:00
Matthias 0d2f877e77 Use absolute drawdown calc 2021-02-27 09:32:59 +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 2c80388b40 Fix valueerror in case of empty array files 2021-02-01 06:28:49 +01:00
Matthias 5724371a4f Fix types for numpy 1.20.0 upgrade 2021-01-31 11:21:23 +01:00
Matthias ea0ffbae73 use profit_ratio in calculate_cum_profit 2021-01-29 19:06:57 +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 0d4cf32086 Slightly adapt to pandas incompatibility 2020-12-28 09:50:48 +01:00
Matthias ceb50a7807 use exception handler when downloading data
closes #3992
2020-11-25 07:57:27 +01:00
Matthias e8e3ca0c3c Catch ValueError from trade_conversion
closes #3967
2020-11-21 10:57:19 +01:00
Matthias 83861fabde Fix #3967, move TradeList type to constants 2020-11-21 10:52:15 +01:00
Matthias 52c9a2c37f Convert np to None when loading hdf5 trades to allow duplicate detection 2020-11-19 07:31:54 +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 Spiller 78874fa865 informative_pairs does not honor dataformat 2020-10-31 10:53:51 +00:00
Matthias adffd402ea Replace some pointless occurances of arrow 2020-10-20 20:11:38 +02:00
Matthias 8cdc795a44 Rename persistence.init to init_db 2020-10-16 08:15:18 +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 6e70ae6e95 Improve code quality 2020-09-27 19:40:55 +02:00
Matthias 3cb1a9a5a9 Support loading results from a specific hyperopt history file 2020-09-27 17:03:30 +02:00
Matthias c42a924df8 Load latest file 2020-09-27 16:50:42 +02:00
Matthias 77d0189695 Remove not needed argument in update_trade_state 2020-09-19 09:37:11 +02:00
Matthias 38c52c7eee
Merge pull request #3626 from freqtrade/feat/hdf5
Introduce HDF5 Datahandler
2020-08-31 16:10:24 +02:00
Matthias 284d39930f Allow using pairlists through dataprovider in backtesting 2020-08-30 10:07:28 +02:00
Matthias 309ea1246a Update config to use single quotes 2020-08-26 20:52:09 +02:00
Matthias 4eb17b4daf Remove unneeded function 2020-08-18 15:20:37 +02:00
Matthias 87e4a82041 Merge branch 'develop' into bt_add_maxdrawdown 2020-08-09 08:34:36 +02:00
Matthias bad89307dd Fix mypy error 2020-07-25 17:19:41 +02:00
Matthias 119bf2a8ea Document hdf5 dataformat 2020-07-25 17:06:58 +02:00
Matthias 0a28818b46 Add some tests for hdf5 2020-07-24 19:37:37 +02:00
Matthias 861e7099cc Rename hdf5handler to hdf5DataHandler 2020-07-24 19:23:37 +02:00
Matthias 3171ad33b7 Add blosc compression 2020-07-24 17:44:29 +02:00
Matthias 0f08addfbe Don't store empty arrays 2020-07-24 17:37:07 +02:00
Matthias 31df42e737 Implement get_available_data 2020-07-24 17:31:43 +02:00
Matthias d4540c846a Add trades_load method 2020-07-23 19:33:23 +02:00
Matthias 55591e287c First version of hdf5handler - no proper support for trades yet 2020-07-23 19:33:23 +02:00
Matthias b035d9e267 Update return type comment 2020-07-12 10:23:09 +02:00
Matthias d4fc52d2d5 Add tests for ohlcv_get_available_data 2020-07-12 09:56:46 +02:00
Matthias 422825ea1b Add ohlcv_get_available_data to find available data 2020-07-12 09:50:53 +02:00
Matthias d56f9655e2 Update notebook with new statistics example 2020-07-03 07:20:43 +02:00
Matthias d999fa2a7e Test autogetting result filename 2020-07-03 06:58:27 +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 afefe92523 Add multi-strategy loading logic 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 04eaf2c39c Add test for get_last_backtest_Result 2020-07-03 06:58:27 +02:00
Matthias 7727292861 Rename duration to trade_duration 2020-07-03 06:58:27 +02:00
Matthias af9a9592b7 Remove unnecessary statement 2020-07-03 06:58:27 +02:00
Matthias dacb40a976 Add get_latest_backtest_filename 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 5fce7f3b22 Add market Change
closes #2524 and #3518
2020-07-03 06:58:27 +02:00
Matthias c2a6f70b4c Merge branch 'develop' into keep_dataframe_noapi 2020-06-30 07:46:52 +02:00
Matthias bf61bc9d83 Introduce ExchangeError 2020-06-28 16:01:40 +02:00
Matthias 676006b99c --dl-trades should also support increasing download span
(by downloading the whole dataset again to avoid missing data in the
middle).
2020-06-24 17:40:23 +02:00
Matthias ab9382434f Add test for get_analyzed_dataframe 2020-06-18 06:50:06 +02:00
Matthias 8166b37253 Explicitly check if dp is available 2020-06-18 06:50:06 +02:00
Matthias 9794914838 store dataframe updated as tuple 2020-06-18 06:50:05 +02:00
Matthias fd97ad9b76 Cache analyzed dataframe 2020-06-18 06:50:05 +02:00
Matthias a3506f4d8e Merge branch 'develop' into timeframe 2020-06-15 06:35:55 +02:00
Matthias 3f9ab0846d Rename profitperc to profit_percent 2020-06-07 15:39:59 +02:00
hroff-1902 f4c2bb1346 Fix crash in #3404 2020-06-02 19:37:08 +03:00
Matthias f9bb1a7f22 Update more occurances of ticker_interval 2020-06-02 10:02:55 +02:00
Matthias cadc50ce9b Replace more occurances of ticker_interval with timeframe 2020-06-01 20:49:40 +02:00
Matthias 16cd1f06b2 Rename get_order_book to fetch_l2_order_book (aligning to ccxt) 2020-05-26 20:27:35 +02:00
Matthias 046202fdda Fix typing circular dependency 2020-05-22 20:56:34 +02:00
Matthias 1a984ac677 Explicitly raise ValueError if trades are empty 2020-05-21 07:12:53 +02:00
hroff-1902 115586a50f Introduce freqtrade.typing 2020-05-18 21:59:50 +03:00
hroff-1902 627c5059f0 Move create_pair_list to pairlistmanager 2020-05-18 13:54:21 +03:00
hroff-1902 5f2a871637 Add missing module 2020-05-16 17:15:58 +03:00
hroff-1902 e7c11ed2cf Fix fetching timeframe (failed in backtesting) 2020-05-16 12:27:56 +03:00
hroff-1902 f8b01f5a43 Make flake happy 2020-05-16 12:27:56 +03:00
hroff-1902 035a12ce61 Move _create_pair_whitelist to dataprovider 2020-05-16 12:27:56 +03:00
hroff-1902 bf25746965 Introduce datatype for informative pairs 2020-05-16 12:27:56 +03:00
hroff-1902 aae096c6ae Handle fetching ticker for non-existing pair safe way 2020-05-14 13:36:48 +03:00
hroff-1902 3079e18239 Merge branch 'develop' into dataprovider-add-ticker 2020-05-14 13:22:52 +03:00
hroff-1902 b4d2433fc1
Merge pull request #3267 from GrilledChickenThighs/develop
Method for accessing current pairlist inside strategy.
2020-05-13 21:29:39 +03:00
Matthias d86855f2f3
Merge pull request #3129 from freqtrade/trades_to_list
convert dl-trades datadownload to list
2020-05-13 09:41:26 +02:00
Paul D. Mendes 9fbe135790 attached pairlist manager onto dataprovider init for unified access to dynamic whitelist 2020-05-11 20:17:03 +04:00
Paul D. Mendes bc9efc31ad Added Method for accessing current pair list on initialization for dynamic informative pairs
moved import into function to avoid circular import with hyperopt
2020-05-11 19:45:15 +04:00
hroff-1902 63b55658ac Add ticker to dataprovider 2020-05-01 05:11:30 +03:00
Matthias 7aba9bc62a
Update freqtrade/data/converter.py
Co-Authored-By: hroff-1902 <47309513+hroff-1902@users.noreply.github.com>
2020-04-17 06:22:25 +02:00
hroff-1902 f2b1802666
Merge pull request #3137 from freqtrade/fix_maxdrawdown
[minor] Fix maxdrawdown
2020-04-14 16:03:25 +03:00
Matthias ddf37ef059 Add test to demonstrate that the dataframe is not changed 2020-04-14 08:02:42 +02:00
Matthias 4ee0cbb575 Reset index to correctly gather index 2020-04-12 10:40:02 +02:00
orehunt 20abb379aa trim trades to the available ohlcv data before plotting profits 2020-04-06 15:54:17 +02:00
Matthias 41d5c40f10 Correctly test drawdown plot 2020-04-05 14:44:44 +02:00
Matthias e204170eb6 Fix max_drawdown bug finding low before high! 2020-04-05 14:29:40 +02:00
Matthias 9d7ad23d42 Fix test leakage 2020-04-02 08:20:50 +02:00
Matthias eab6c9c5f2 Fix message 2020-04-01 20:50:00 +02:00
Matthias 0d51383b57 Format logmessages correctly 2020-04-01 20:31:21 +02:00
Matthias ba03d96961 Test 5s offset on since 2020-04-01 20:04:36 +02:00
Matthias ff9caf790b remove trade duplicates in datahandler 2020-04-01 19:45:46 +02:00
Matthias 0506caf986 Implement trades_remove_dulicates 2020-04-01 19:45:38 +02:00
Matthias bac0eaab03 fix convert to ohlcv 2020-04-01 19:45:35 +02:00
Matthias d76bb1ccf4 Use List of Lists instead of list of Dicts for trades data 2020-04-01 19:45:21 +02:00
Matthias 1659ddcc5d Add conversion function from fetch_trades to list 2020-04-01 19:45:21 +02:00
Matthias 3e1bef888a Fix flake8 error 2020-03-18 19:40:13 +01:00
Fredrik81 0920d6fce4
Update freqtrade/data/btanalysis.py
Co-Authored-By: Matthias <xmatthias@outlook.com>
2020-03-18 11:01:09 +01:00
Fredrik81 8c33e07dc6 Update based on comments 2020-03-15 21:20:32 +01:00
hroff-1902 57ff3ff450
Merge branch 'develop' into plot-trades 2020-03-15 13:31:00 +03:00
Matthias 0f1640bed4 convert exportfilename to Path when config parsing 2020-03-15 09:39:45 +01:00
Fredrik81 27faf12fde Fix if no file exists 2020-03-14 22:15:03 +01:00
hroff-1902 59fadabb5b Fix merging 2020-03-13 20:26:14 +03:00
hroff-1902 51f52c8609
Merge branch 'develop' into no-ticker-2 2020-03-13 16:43:52 +03:00
Matthias 6f67b8d9b9 iCheck after clean_dataframe, too 2020-03-12 19:50:46 +01:00
Matthias 129a88d5da Extract emptyness check to it's own method 2020-03-11 19:53:28 +01:00
orehunt 3eaae4661d check again for emptiness after trimming dataframe 2020-03-09 17:51:21 +01:00
hroff-1902 3208faf7ed Do not use ticker where it's not a ticker 2020-03-08 20:47:02 +03:00
Matthias 9d8970a76b Add test and formatting to drawdown 2020-03-03 20:23:44 +01:00
Matthias 33a63562cb make drawdown function less restrictive 2020-03-03 07:23:38 +01:00
Matthias e050511ddc Add test for max_drawdown calculation 2020-03-03 07:20:41 +01:00
Matthias 3479f7d986 Add max_drawdown function 2020-03-03 07:15:03 +01:00
hroff-1902 e2e6b940a3 copy=False does not make the changes inline anyway, so not needed 2020-02-22 19:54:19 +03:00
hroff-1902 c651e0ac82 Fix #2948 2020-02-22 19:46:40 +03:00
Matthias 3186add87b Use explicit column list for float parsing 2020-02-22 14:46:54 +01:00
Matthias 7ecc56fa44 Load ohlcv data as float 2020-02-22 13:10:41 +01:00
Matthias d65a06947d Merge branch 'develop' into data_handler 2020-02-09 15:16:43 +01:00
hroff-1902 f3d500085c Add some type hints 2020-02-02 07:00:40 +03:00
Matthias 41945138ac Converting pairs from filename to pair corrected 2020-01-05 13:35:36 +01:00
Matthias 4eaaec9d1a Implement pair_to_filename to datahandler
includes tests - taken from #2744 and modified to adapt to new structure
2020-01-05 10:36:08 +01:00
Matthias f82c4346b6 data conversion, not data conversation
* we're not talking to the data yet ...
2020-01-05 09:55:02 +01:00
Matthias 2409261cb7 Merge branch 'develop' into data_handler 2020-01-04 11:36:27 +01:00
Matthias 2c8e8d8ef6 Align columns for btanalysis loading 2020-01-02 09:51:47 +01:00
Matthias 699c0d6bc3 Merge branch 'develop' into data_handler 2019-12-30 19:40:43 +01:00
Matthias 1ffda29fd2 Adjust improts to new exception location 2019-12-30 15:02:17 +01:00
Matthias 814cc20c6b Remove potential circular import 2019-12-28 19:58:41 +01:00
Matthias f4a532ef6d Pass format to load_data 2019-12-28 14:57:39 +01:00
Matthias ae1b28aab7 Remove get_datahandlerclass from package exposes 2019-12-28 14:32:11 +01:00
Matthias 66d18575a7 Implement abstract interface 2019-12-28 11:10:31 +01:00
Matthias 9e4fc00a0f Add test for convert_ohlcv 2019-12-28 11:03:06 +01:00
Matthias 28787a001c Move convert functions to convert module 2019-12-28 11:02:34 +01:00
Matthias 6860491189 Rename datahandler module to history module
Also move previous history.py into this module - so everything is
bundled
2019-12-28 11:01:42 +01:00
Matthias 9c5b94adf5 Pass data_format to methods 2019-12-28 11:01:42 +01:00
Matthias d65c1eea7a Add some tests for datahandler 2019-12-28 11:01:42 +01:00
Matthias 8a030e7fc0 Use exists instead of is_file 2019-12-28 11:01:42 +01:00
Matthias a3144cb2f0 remove trim_tickerlist 2019-12-28 11:01:42 +01:00
Matthias d1b52809ac Cleanup history 2019-12-28 11:01:41 +01:00
Matthias d06777b8ce Remove old "load_cached_data" method 2019-12-28 11:01:41 +01:00
Matthias 7a6476c9ba Update tests 2019-12-28 11:01:41 +01:00
Matthias df085a6f15 Fix small bug and test 2019-12-28 11:01:41 +01:00