Commit Graph

9229 Commits

Author SHA1 Message Date
Matthias 1ddd5f1901 Update docstring throughout the bot. 2022-06-09 19:41:08 +02:00
Matthias 88f8cbe172 Update tests to reflect new naming 2022-06-09 19:38:18 +02:00
Matthias a547001601 Reduce Telegram "unit" stats 2022-06-09 07:06:32 +02:00
Matthias d4dd026310 Consolidate monthly stats to common method 2022-06-09 07:06:32 +02:00
Matthias 3cb15a2a54 Combine weekly and daily profit methods 2022-06-09 07:06:32 +02:00
Matthias c550cd8b0d Simplify query in freqtradebot 2022-06-09 07:04:46 +02:00
Matthias 7eacb847b0 Fix backtesting bug when order is not replaced 2022-06-08 20:21:45 +02:00
robcaulk d9b79d94e4 increase candle update flexibility to allow long sequential trainings that may last more than one candle 2022-06-07 20:57:10 +02:00
robcaulk 66800c7a45 ensure newest candles are always appended 2022-06-07 20:24:23 +02:00
robcaulk f8f25e36ef update example config/strat 2022-06-07 19:54:45 +02:00
robcaulk 15d049cffe detect if upper tf candles are new or not, append if so. Correct the epoch for candle update check 2022-06-07 19:49:20 +02:00
Matthias 9534d6cca1 Cancel orders which can no longer be found after several days 2022-06-07 07:03:40 +02:00
robcaulk cab8f517b4 add lock to datadrawer 2022-06-07 01:07:30 +02:00
robcaulk 4b26b6aaec add lock to any historic data access 2022-06-07 00:54:18 +02:00
Robert Caulk 3c2e314ee5
Fix bugs 2022-06-06 16:26:07 -06:00
Robert Caulk e6c5e737a2
Fix other bugs 2022-06-06 16:24:32 -06:00
Robert Caulk bf19055e53
Update function spelling 2022-06-06 15:56:12 -06:00
Robert Caulk 2451ed8c88
Quick bug fix 2022-06-06 15:11:54 -06:00
Matthias 0b806af487 Add orders column to btresult 2022-06-06 10:59:10 +02:00
Matthias 79107fd062 Add minimal order object serialization 2022-06-05 22:12:27 +02:00
Matthias 8369d5bedd Include open orders in json responses 2022-06-05 22:12:27 +02:00
Matthias c0ff554d5b Cleanup old, left open dry-run orders 2022-06-05 22:12:27 +02:00
Matthias f709222943 Properly close out orders in backtesting 2022-06-05 22:12:27 +02:00
Matthias c499bb051f Allow empty unfilledtimeout for webserver mode 2022-06-05 19:41:17 +02:00
Matthias a790bad1e4 Add entry_tag to leverage callback
closes #6929
2022-06-05 10:24:54 +02:00
robcaulk d6b8801f41 fix follower bug 2022-06-05 04:40:58 +02:00
robcaulk e8c0dcf9f3 add debug message to timerange 2022-06-03 17:14:07 +02:00
robcaulk f2762e3b4b fix bug in return_values() 2022-06-03 16:58:51 +02:00
robcaulk 16b4a5b71f rehaul of backend data management - increasing performance by holding history in memory, reducing load on the ratelimit by only pinging exchange once per candle. Improve code readability. 2022-06-03 15:19:46 +02:00
robcaulk 15a971346d catch infinity values when filtering 2022-06-02 17:13:20 +02:00
Robert Caulk 7d41542f93
process_only_new_candles in examplestrat should be True, thanks @Bloodhunter4rc 2022-06-02 07:24:08 -06:00
robcaulk fea39254d9 fix custom_exit (thanks @paranoidandy) 2022-06-02 14:58:45 +02:00
robcaulk b37c31cc21 fix ta-lib issue with simultaneous method access 2022-06-02 14:37:40 +02:00
robcaulk 4ac6ef2972 make defining period intervals more user friendly and flexible 2022-06-02 13:45:29 +02:00
robcaulk ace951bf7e another queue bug fix for fresh starts 2022-06-02 13:28:06 +02:00
Anuj Shah eb4adeab4d fix flake8 issues 2022-06-02 11:19:29 +05:30
Anuj Shah 45c47bda60 refactor into discord rpc module 2022-06-01 21:14:48 +05:30
Anuj Shah afd8e85835 feat: add support for discord notification 2022-06-01 15:54:32 +05:30
robcaulk 833d25bda0 Save data after queue reorg 2022-06-01 08:05:38 +02:00
robcaulk 0b0dd8dd80 Force high priority pair to be trained before anything else. 2022-06-01 07:55:05 +02:00
Surfer Admin 7fe8b7661d Display the signal candle analyzed in telegram. 2022-05-31 15:46:43 -04:00
Matthias 34a44b9dd2 Fix backtesting bug when canceling orders
closes #6911
2022-05-31 20:32:41 +02:00
Matthias 66edbcd3d5 Fix slight backtesting bug in edge-case scenarios 2022-05-31 20:08:34 +02:00
robcaulk 7523ed825e automatically detect maximum required data based on user fed indicators (to avoid NaNs in dataset for rolling indicators), add new config parameter for backtesting to let users increase their startup_candles to accommodate high timeframe indicators, add docs to explain all. Add new feature for automatic indicator duplication according to user defined intervals (exhibited in example strat and configs now). 2022-05-31 18:42:27 +02:00
Matthias 3549176370 Update missleading docstring
closes #6913
2022-05-31 17:52:45 +02:00
Matthias 88845f6d88 Fix cancel order deleting trade
if one order was successfully filled, the trade cannot be deleted.

closes #6907
2022-05-31 17:49:51 +02:00
robcaulk 9b3b08a2bb let follower purge old model files 2022-05-31 15:37:38 +02:00
robcaulk bac4ced382 Ensure follower predictions are persistent and uniquely stored 2022-05-31 14:35:04 +02:00
robcaulk 70adf55643 Automatically detect and change follower data_path to accommodate remote systems 2022-05-31 12:35:09 +02:00
robcaulk 0306f5ca13 Add autopurge feature so that FreqAI cleans up after itself when it no longer needs old models on disk 2022-05-31 11:58:21 +02:00
Matthias cce8d1aa4d Update get_market_leverage_tiers to be async 2022-05-31 08:48:34 +00:00
Matthias be6e0813db Remove --strategy from analysis test 2022-05-31 06:53:03 +02:00
robcaulk 45f4f0f603 ensure follower sends back null arrays in case leader hasnt created a model file yet 2022-05-31 01:48:48 +02:00
robcaulk 29d2f59f12 fix PCA bug 2022-05-31 00:40:45 +02:00
robcaulk 606f18e5c1 Add follow_mode feature so that secondary bots can be launched with the same identifier and load models trained by the leader 2022-05-30 21:35:48 +02:00
Matthias c285ad0e2b Remove --strategy parameters, update docs 2022-05-30 20:26:24 +02:00
robcaulk 5b4c649d43 detect variable sized dataframes coming from strat, adjust our stored/returned data accordingly 2022-05-30 13:55:46 +02:00
robcaulk e229902381 fix bug in previous commit 2022-05-30 12:48:22 +02:00
robcaulk a20651efd8 Increase performance by only predicting on most recent candle instead of full strat provided dataframe. Collect predictions and store them so that we can feed true predictions back to strategy (so that frequi isnt updating historic predictions based on newly trained models). 2022-05-30 11:37:05 +02:00
Matthias 8e2c7e1298 extract detect_parameters to separate function 2022-05-30 07:26:26 +02:00
Matthias eaa656f859 Hyperoptable parameters can be instance attributes 2022-05-30 07:07:47 +02:00
Matthias 386d3e0353 Rename stop/roi loading method 2022-05-30 06:52:44 +02:00
Matthias ad8ff10a05 Minor doc changes 2022-05-30 06:32:46 +02:00
robcaulk 2f1a2c1cd7 allow users to store data in custom formats, update spot config to reflect better target horizon to training period ratio 2022-05-30 02:12:31 +02:00
robcaulk d59eac3321 revert a79032b 2022-05-29 21:33:38 +02:00
robcaulk a79032bf75 fixing bug in training queue 2022-05-29 20:19:32 +02:00
Matthias 056047f635 Fix --help 2022-05-29 20:07:02 +02:00
robcaulk 3f72263278 allow pairs deeper in the queue to get trained if the higher priority pairs dont need training 2022-05-29 20:02:43 +02:00
robcaulk cc6cae47ec allow pairs deeper in the queue to get trained if the higher priority pairs dont need training 2022-05-29 19:49:43 +02:00
robcaulk 4eb4753e20 allow subdaily retraining for backtesting 2022-05-29 17:44:35 +02:00
froggleston 9a068c0b14 Add test for each analysis group, remove default table output if not indicator-list 2022-05-29 16:25:31 +01:00
Matthias e6affcc23e Move parameter file loading to hyper-mixin 2022-05-29 16:39:52 +02:00
Matthias 1ee08d22d2 Delay parameter init
closes #6894
2022-05-29 16:39:52 +02:00
robcaulk 0aa7162055 ensure the prediction is reset in the pair_dict after any trade exit, not just custom_exit 2022-05-29 16:36:46 +02:00
robcaulk fe36b08fce fix key error in example strat 2022-05-29 16:26:34 +02:00
robcaulk ce365eb9e3 improve example strat so that it has dynamic buy and sell logic according to original prediction 2022-05-29 14:45:46 +02:00
froggleston df1c36e5aa Change command name, use load_backtest_stats for strategy resolving 2022-05-29 11:54:27 +01:00
froggleston c59209a01a Merge branch 'buy_reasons' of github.com:froggleston/freqtrade into buy_reasons 2022-05-29 11:20:32 +01:00
froggleston e7c5818d16 First pass changes for cleaning up 2022-05-29 11:20:11 +01:00
Matthias a875a7dc40 Use unified stopPrice for binance 2022-05-29 11:01:01 +02:00
Matthias f64f2b1ad8 Fix /stats Formatting issue in multi-message settings 2022-05-29 10:34:22 +02:00
robcaulk 4eb29c8810 Dont reset pair priority if it doesnt successfully train 2022-05-28 18:34:26 +02:00
robcaulk 83dd453723 catch errors occuring on background thread, and make sure to keep the ball rolling. Improve pair retraining queue. 2022-05-28 18:26:19 +02:00
robcaulk e54614fa2f remove remnants of single threaded version, ensure pair queue priority is checked before retraining 2022-05-28 14:55:07 +02:00
robcaulk 2a4d1e2d64 fix bug in setting new timerange for retraining 2022-05-28 12:23:26 +02:00
robcaulk 7870a86e9a fix live retraining bug 2022-05-28 11:38:57 +02:00
robcaulk 0bf915054d handle key check correctly 2022-05-28 11:22:32 +02:00
robcaulk c5a16e91fb throw user error if user tries to load models but feeds the wrong features (while using PCA) 2022-05-28 11:11:41 +02:00
robcaulk b8f9c3557b dirty dirty, dont look here (hacking a flag to avoid reloading leverage_tiers in dry/live) 2022-05-27 13:56:34 +02:00
robcaulk 891fb87712 give load_cached_data_for_updating the right flags to avoid redownloading data in dry/live 2022-05-27 13:38:22 +02:00
robcaulk 65fdebab75 let load_pairs_histories load futures candles in live 2022-05-27 13:01:33 +02:00
robcaulk c080571b7a help futures go dry/live with auto download feature 2022-05-27 12:23:32 +02:00
Matthias 24cf044646 Fix bybit spot mode 2022-05-27 08:18:04 +00:00
robcaulk 8a501831d6 fix the error logic on previous commit 2022-05-27 01:15:55 +02:00
robcaulk 23c30dbc10 add error for user trying to backtest with backtest_period<1 2022-05-27 00:43:52 +02:00
robcaulk 6193205012 fix bug for target_mean/std array merging in backtesting 2022-05-26 21:07:50 +02:00
Matthias 43b7955fc2 Fully rely on pathlib 2022-05-26 19:37:55 +02:00
Matthias 682daa4e94 Reset logging mixin to avoid random test failure 2022-05-26 18:05:40 +02:00
Stefano Ariestasia e1c6cf5f91 fix typo 2022-05-26 10:12:50 +09:00
Matthias 537d10c627 Improve some typing 2022-05-25 20:43:43 +02:00
Matthias 3e66275c98 Refactor bot_start to separate function
to be reused further ...
2022-05-25 20:01:21 +02:00
robcaulk ff531c416f reduce `complexity` inside start_download_data() in an effort to appease flake8 2022-05-25 15:31:50 +02:00
robcaulk d79983c791 try to pass flake8 2022-05-25 14:55:19 +02:00
robcaulk 7593339c14 small cleanup 2022-05-25 14:42:46 +02:00
robcaulk b79d4e8876 Allow user to go live and start from pretrained models (after a completed backtest) by simply reusing the `identifier` config parameter while dry/live. 2022-05-25 14:40:32 +02:00
robcaulk 7486d9d9e2 proper validation of freqai config parameters 2022-05-25 12:37:25 +02:00
Matthias b2968df5dc Fix some type problems 2022-05-25 10:13:37 +00:00
robcaulk 7ff3258607 remove assertions, log error if user has not assigned freqai in config, fix stratify bug 2022-05-25 11:43:45 +02:00
robcaulk 35bed842cb cleanup, add clarity to comments and docstrings 2022-05-25 11:31:03 +02:00
froggleston 2873ca6d38 Add cleanup, adjust _print_table for indicators, add rsi to test output 2022-05-25 09:57:12 +01:00
froggleston 3adda84b96 Update docs, add test 2022-05-24 20:27:15 +01:00
Matthias d6773bc32c
Merge pull request #6886 from freqtrade/fix/typing
Fix/typing
2022-05-24 19:41:59 +02:00
Matthias a8ee77cd5e Simplify backtesting typechecking 2022-05-24 19:13:35 +02:00
robcaulk 58b5abbaa6 improve multithreaded training queue system 2022-05-24 15:28:38 +02:00
robcaulk 31ae2b3060 alleviate FutureWarning in sklearn about ensuring svm model features are passed with identical order 2022-05-24 14:46:16 +02:00
froggleston 8c03ebb78f Fix group 0 table, add pathlib.Path use 2022-05-24 12:48:13 +01:00
robcaulk 255d35976e add priority metadata to pairs to avoid a sync of train time + train period 2022-05-24 12:58:53 +02:00
froggleston 80c6190c05 Fix analyze_commands setup 2022-05-24 11:47:26 +01:00
froggleston ae1ede58da Fix import order 2022-05-24 11:47:26 +01:00
froggleston a1a09a802b Add analyze_commands 2022-05-24 11:47:25 +01:00
froggleston 9488e8992d First commit for integrating buy_reasons into FT 2022-05-24 11:47:25 +01:00
robcaulk 059c285425 paying closer attention to managing live retraining on separate thread without affecting prediction of other coins on master thread 2022-05-24 12:01:01 +02:00
Matthias 7f3853bbcd
Merge pull request #6883 from freqtrade/makeProcessCandlesTrue
Change default value of process_only_new_candles to True since False …
2022-05-24 07:03:14 +02:00
Matthias 904f094b80 Don't reassign method, but implement it properly 2022-05-24 06:59:54 +02:00
Matthias 23e089061b
Merge pull request #6870 from freqtrade/should_exit_list
Should exit list
2022-05-24 06:57:50 +02:00
Matthias 0a713faca8 Fix some type errors 2022-05-24 06:54:16 +02:00
Matthias f1a72e448a Align interfaces and strategy templates 2022-05-24 06:54:16 +02:00
Matthias 3f68c3b68e Update some types 2022-05-24 06:54:16 +02:00
Matthias 7f4161ff78 Add typehints to strategy wrapper 2022-05-24 06:54:16 +02:00
Matthias 07ec3b27fe Add typing information to retrier decorator 2022-05-24 06:54:16 +02:00
robcaulk b0d2d13eb1 improve data persistence/mapping for live/dry. This accommodates quick reloads after crash and handles multi-pair cleanly 2022-05-23 21:05:05 +02:00
Matthias 42ae8ba6fb Refactor hyperopt parameters to separate file 2022-05-23 20:18:09 +02:00
robcaulk e1c068ca66 add config asserts, use .get method with default values for optional functionality, move data_cleaning_* to freqai_interface (away from user custom pred model) since it is controlled by config params. 2022-05-23 12:07:09 +02:00
robcaulk 5c4014ee62 Change default value of process_only_new_candles to True since False is an uncommon usecase for expert strategy devs 2022-05-23 10:24:58 +02:00
robcaulk dede128648 set process_only_new_candles to true in example strat 2022-05-23 10:15:59 +02:00
robcaulk ee3cdd0ffe more cleanup 2022-05-23 09:55:58 +02:00
Matthias eb5fe9e3ae
Merge pull request #6857 from froggleston/develop
Add support for fudging unavailable funding rates, allowing backtesti…
2022-05-23 06:31:51 +02:00
robcaulk 3587bd82e1 cleanup superceded code 2022-05-23 00:10:36 +02:00
robcaulk af0cc21af9 Enable hourly/minute retraining in live/dry. Suppress catboost folder output. Update config + constants + docs to reflect updates. 2022-05-23 00:06:26 +02:00
Matthias e3beaae8be update hyperopt typing 2022-05-22 19:32:32 +02:00
Matthias 0b5544ef9e Stoploss fill should fill as "filled" notification
Closes #6873
2022-05-22 19:18:12 +02:00
robcaulk 42d95af829 Aggregated commit. Adding support vector machine for outlier detection, improve user interface to dry/live, better standardization, fix various other bugs 2022-05-22 17:51:49 +02:00
Matthias 938a66511a Update Documentation for new confirm_trade_exit behavior 2022-05-22 11:28:11 +02:00
Matthias 3692fcd3d5 Improve exit signal sequence 2022-05-22 11:01:18 +02:00
Matthias ce3bfd59f5 Add explicit should_sell test 2022-05-22 10:31:29 +02:00
Matthias bdb904e714 Should_exit should return all sell signals 2022-05-22 10:17:49 +02:00
Matthias 1315d02437 Fix startup sending "longed" messages for open stoplosses 2022-05-22 09:01:46 +02:00
Matthias 26d394ca74 Add liquidation Price to api response 2022-05-22 08:54:27 +02:00
Matthias 1ff1e3b43d
Merge pull request #6869 from freqtrade/update_levtiers
Update leveraged tiers
2022-05-22 08:35:02 +02:00
Matthias f006978caf Be more explicit in default value 2022-05-21 17:35:49 +02:00
Matthias 97abcf4b32 Add documentation for leverage_tiers update 2022-05-21 16:10:00 +02:00
Matthias 963cc17c18 Update leveraged tiers 2022-05-21 16:05:00 +02:00
Matthias 0d388b561b Add test for "combine_funding_and_mark", fix bug 2022-05-21 09:03:30 +02:00
Matthias 2df42a3035 Move "funding fillup" logic to exchange class 2022-05-21 08:50:39 +02:00
Matthias 6bd5535d6c Use exchange method to combine funding and mark candles 2022-05-21 08:31:34 +02:00
froggleston c499a92f57 Remove surplus mark columns, and make fillna on funding rate only 2022-05-20 11:48:53 +01:00
Matthias 0138114fc2
Merge pull request #6866 from freqtrade/dry_order_db
Dry orders from db
2022-05-20 12:10:09 +02:00
Matthias c3e3188c6a Rename variable 2022-05-20 11:30:25 +02:00
robcaulk c5ecf94177 move live retraining to separate thread. 2022-05-19 21:15:58 +02:00
Matthias 46ea135b6b Update dry-run considerations 2022-05-19 20:10:11 +02:00
Matthias 219363fffb Check for both ask and bid in SpreadFilter
closes #6865
2022-05-19 19:53:23 +02:00
Matthias 56a73575a1 Add explicit test for order_to_ccxt 2022-05-19 19:29:39 +02:00
robcaulk 1fae6c9ef7 keep model accessible in memory to avoid loading objects from disk during live/dry 2022-05-19 19:27:38 +02:00
robcaulk 67eb94c69d download-data will now check if freqai is active in config, and if so will also download data for corr_pairlist 2022-05-19 17:55:00 +02:00
robcaulk 89eacf2f47 Retrain model if FreqAI found a pretrained model but user strategy is not passing the expected features (user has changed the features in the strategy but has passed a the same config[freqai][identifier]). Logger warning output to user. 2022-05-19 17:15:50 +02:00
Matthias a3d9384bc0 Remove clean-dry-run code 2022-05-19 06:56:34 +02:00
Matthias 0a95ef6ab2 Don't reset open orders in dry-run on restart 2022-05-19 06:42:38 +02:00
froggleston 363098d32d Fix reversed makr/funding_rate columns 2022-05-18 12:56:43 +01:00
froggleston 736f9f4972 Fix docs and add outer join support for merging funding rates across full timerange 2022-05-18 12:47:37 +01:00
மனோஜ்குமார் பழனிச்சாமி 2b61aa282a Removed None in dict.get()
https://stackoverflow.com/a/12631641

Extra Changes: freqtrade\freqtradebot.py:70
freqtrade\plugins\pairlistmanager.py:31
2022-05-18 03:41:10 +05:30
froggleston 37e4ede65c Fix flake issues 2022-05-17 22:32:17 +01:00
froggleston bb758da940 Add support for fudging unavailable funding rates, allowing backtesting of timeranges where futures candles are available, but rates are not 2022-05-17 22:05:33 +01:00
Matthias c81b960791 Fix some typos 2022-05-17 19:58:36 +02:00
robcaulk db66b82f6f accept open-ended timeranges from user 2022-05-17 19:50:06 +02:00
robcaulk d1d451c27e auto populate features based on a prepended % in the strategy (remove feature assignment from config). Update doc/constants/example strategy to reflect change 2022-05-17 18:15:03 +02:00
robcaulk 8664e8f9a3 create a prediction_models folder where basic prediction models can live (similar to optimize/hyperopt-loss. Update resolver/docs/and gitignore to accommodate change 2022-05-17 17:13:38 +02:00
eSeR1805 34684ec86a
Merge branch 'freqtrade:develop' into feat_bt_cancel_entry_reporting 2022-05-17 14:09:57 +03:00
eSeR1805 0585b378b3
BT: Report canceled/replaced orders also. 2022-05-17 14:07:42 +03:00
eSeR1805 6e8f24f6a7
BT: track canceled/replaced orders also. 2022-05-17 14:07:02 +03:00
Matthias 8d46e16c46
Merge pull request #6848 from freqtrade/datahandler_case
Datahandler case insensitive
2022-05-17 09:34:11 +02:00
Matthias 1cd8ebc8c8
Merge pull request #6847 from freqtrade/use_Precise
Use precise
2022-05-17 09:33:39 +02:00
Matthias 6fd003c655
Merge pull request #6851 from eSeR1805/feat_bt_cancel_entry_reporting
BT: Reporting canceled trade entries
2022-05-17 07:05:26 +02:00
மனோஜ்குமார் பழனிச்சாமி 7cd0f8a7b1
Merge branch 'develop' into patch-10 2022-05-17 08:07:13 +05:30
eSeR1805 f2e2e57237
Report trade entries canceled by user. 2022-05-17 01:41:31 +03:00
eSeR1805 fb7c0792c0
Track trade entries canceled by user. 2022-05-17 01:41:01 +03:00
Matthias 76637d3939 Simplify timeframe-transition 2022-05-16 20:10:52 +02:00
Matthias 2e65a1793d Add fallback to load 1M files as well as 1Mo files 2022-05-16 19:48:27 +02:00
Matthias a1048fb619 Store monthly candles as "Mo" 2022-05-16 19:39:43 +02:00
Matthias 9607d04279 Improve ccxt imports 2022-05-16 19:22:07 +02:00
Matthias c8e0fc926d Update to do Builtin Precise math 2022-05-16 19:21:38 +02:00
Matthias a793cf8f05 Use ccxt's "precise" to do precise math 2022-05-16 19:21:38 +02:00
Matthias 528509f809 Extract get_price_side from get_rate 2022-05-16 19:20:13 +02:00
Stefano Ariestasia 2cb8eecf18 add space 2022-05-16 07:43:36 +09:00
Stefano Ariestasia e21f6a7787 missing newline 2022-05-16 07:28:40 +09:00
Matthias 3d36d35e30
Merge pull request #6825 from freqtrade/okx_history
Okx history
2022-05-15 19:27:45 +02:00
robcaulk 80dcd88abf allow user to run config from anywhere on their system 2022-05-15 17:42:15 +02:00
robcaulk a8022c104a give beta testers more information in the doc 2022-05-15 17:42:15 +02:00
robcaulk a7029e35b5 ensure informative pairs includes any combination of whitelist - corr_pairlist 2022-05-15 17:42:15 +02:00
robcaulk 9b3e5faebe create more flexible whitelist, avoid duplicating whitelist features into corr_pairlist, update docs 2022-05-15 17:42:15 +02:00
robcaulk 22bd5556ed add self-retraining functionality for live/dry 2022-05-15 17:42:15 +02:00
robcaulk 178c2014b0 appease mypy 2022-05-15 17:42:15 +02:00
robcaulk a4f5811a5b fix flake8 issue in arguments.py 2022-05-15 17:42:15 +02:00
robcaulk aae233bd6c try passing the check tests 2022-05-15 17:42:15 +02:00
robcaulk f653ace24b another attempt at fixing datalength bug 2022-05-15 17:42:15 +02:00
robcaulk b08c0888bb add USERPATH_FREQAIMODELS, remove return values from @abstract methods 2022-05-15 17:42:15 +02:00
robcaulk b03c7b514d optional style for interfacing freqai with backtesting 2022-05-15 17:42:15 +02:00
robcaulk e9a7b68bc1 revert constants.py and add changes 2022-05-15 17:42:15 +02:00
Matthias a0b25938f4 Fix exit_reason assignment in backtesting 2022-05-15 17:41:59 +02:00
Matthias a8f064a8cb Fix exit_reason assignment in live mode 2022-05-15 17:41:59 +02:00
robcaulk 3020218096 fix bug on backtest timerange 2022-05-15 17:41:34 +02:00
robcaulk 00ff0c9b91 ensure user defined timerange truncates final backtest so that we arent mismatching data lengths upon return to strategy. Rename DataHandler class to FreqaiDataKitchen 2022-05-15 17:41:34 +02:00
robcaulk def71a0afe auto build full_timerange and self manage training_timerange 2022-05-15 17:41:34 +02:00
robcaulk 764f9449b4 fix logger, debug some flake8 appeasements 2022-05-15 17:41:34 +02:00
robcaulk 29c2d1d189 use logger in favor of print 2022-05-15 17:38:58 +02:00
robcaulk 99f7e44c30 flake8 passing, use pathlib in lieu of os.path to accommodate windows/mac OS 2022-05-15 17:38:58 +02:00
robcaulk 2600ba4e74 remove unused remnants 2022-05-15 17:38:58 +02:00
robcaulk 630d201546 remove trained_stake 2022-05-15 17:38:58 +02:00
robcaulk b40f8f88ac cleaning and bug fixing 2022-05-15 17:38:58 +02:00
robcaulk fc837c4daa add freqao backend machinery, user interface, documentation 2022-05-15 17:38:58 +02:00
Matthias 706994340f Fix bad docstring 2022-05-15 17:06:40 +02:00
Matthias ebab02fce3
Merge pull request #6827 from eSeR1805/fix_readjust_entry_bt_sl
Fix: Refresh SL on entry order replacement
2022-05-15 16:41:18 +02:00
Matthias 18fd3bb333 Update stoploss handling for entry-order adjustment 2022-05-15 15:45:39 +02:00
Matthias 9143e9ecb1 Add some safety measures for new startup_candles verification 2022-05-15 15:12:29 +02:00
Matthias d60d0f64d2 Revert ohlcv_candle_limit logic for okx 2022-05-14 19:35:06 +02:00
Matthias 116b58e97c add "date_minus_candles" method 2022-05-14 19:30:42 +02:00
Matthias 3b14439240 Slightly improve performance of order adjusts
Avoind  2nd call to `get_rate()`.

closes #6821
2022-05-14 16:16:32 +02:00
eSeR1805 c27e0a0a1b
Allow SL refresh only if no filled entry orders. 2022-05-14 16:56:56 +03:00
eSeR1805 1c20fb7638
Refresh open_rate and stoploss on order replacement. 2022-05-14 16:37:04 +03:00
Matthias 5767d652bf Add explicit test and document behavior 2022-05-14 14:18:51 +02:00
Matthias 2a1368d508 Offsetfilter: add number_assets parameter
closes #6824
2022-05-14 14:16:13 +02:00
Matthias bb1b283d95 Update some ohlcv_candle_limit calls 2022-05-14 13:44:10 +02:00
Matthias 111b04c9e6 Okx - conditional candle-length 2022-05-14 09:51:44 +02:00
Matthias 64668b11da add ohlcv_has_history - disabling kraken downloads 2022-05-14 09:10:38 +02:00
மனோஜ்குமார் பழனிச்சாமி 64670726a6
flake8 fix 2022-05-13 21:52:26 +05:30
மனோஜ்குமார் பழனிச்சாமி 71a80cab3a
fixed variable naming style 2022-05-13 21:19:40 +05:30
மனோஜ்குமார் பழனிச்சாமி 8a3c2c6cad
Corrected docstring
Discussed in Discord
2022-05-13 19:32:52 +05:30
Matthias c299601ece Add warning about OKX futures backtesting data 2022-05-13 07:03:18 +02:00
Matthias 5444f4ee6f
Merge pull request #6793 from mkavinkumar1/log
logged balance details
2022-05-12 19:11:28 +02:00
Matthias 891900c186
Merge pull request #6812 from freqtrade/db_migrate
Db migrate
2022-05-11 19:54:31 +02:00
Matthias 1fc041d0d6
Fix formatting issue 2022-05-11 19:39:56 +02:00
Matthias ae463fcdf2
Merge pull request #6792 from mkavinkumar1/rpc
consistent exchange name
2022-05-11 19:23:36 +02:00
Matthias f374c9da70 PR cleanup 2022-05-11 06:30:40 +02:00
Matthias 044afdf7af Add better test scenario 2022-05-10 20:27:24 +02:00
Matthias 31cce741ac Add sequence migration 2022-05-10 07:13:51 +02:00
Matthias 269630e755 Add preliminary documentation for database conversion 2022-05-10 07:13:42 +02:00
Matthias 0958c06b84 Implement database migration to other system 2022-05-09 20:58:40 +02:00
Matthias c3b0f6b64b Add feature shell for database conversion 2022-05-09 20:58:40 +02:00
Matthias 0f499469fc
Merge pull request #6796 from freqtrade/model_reorg
Model reorg
2022-05-09 20:15:45 +02:00
Matthias 30d6eeffd0 Fix migration bug 2022-05-08 17:49:13 +02:00
Matthias b58e811b14 Move trade/order Models to their own class 2022-05-08 17:45:20 +02:00
Matthias af1a5e0449 Extract base and Pairlock from models file 2022-05-08 17:38:06 +02:00
Matthias 3221726d85 Update migration to use boolean value
closes #6794
2022-05-08 17:29:42 +02:00
Matthias ab91758c7e
Merge pull request #6790 from eSeR1805/profit_reporting
Report profit only on filled entries.
2022-05-08 17:25:42 +02:00
Matthias 4a7515e66a Add test for 0.0 case 2022-05-08 16:04:06 +02:00
மனோஜ்குமார் பழனிச்சாமி f43ae0ea43 logged balance details 2022-05-08 13:53:07 +05:30
மனோஜ்குமார் பழனிச்சாமி d79b90a98f consistent exchange name 2022-05-08 12:46:58 +05:30
Matthias 45b328af2e explicitly call cleanup when cleaning backtest 2022-05-08 08:11:39 +02:00
eSeR1805 bfc7898654
Report profit only on filled entries. 2022-05-07 21:56:22 +03:00
Matthias c9498d0117
Merge pull request #6692 from eSeR1805/feat_readjust_entry
Feature: Readjust Entry Order
2022-05-07 20:11:20 +02:00
Matthias 277e07589e update/fix some comments and docs 2022-05-07 17:47:37 +02:00
Matthias f5f599c7f0 Add LowProfitPairs only_per_side option 2022-05-07 15:25:15 +02:00
Matthias dc0c1bf87d Only fetch accounts when authenticated. 2022-05-07 13:17:27 +02:00
Matthias 149704e748 Fix wrong type 2022-05-07 11:39:47 +02:00
Matthias 6fdcf3a10a Support both position modes on OKX 2022-05-07 10:58:41 +02:00
Matthias 2da284b921 Properly type side for create_order 2022-05-07 10:02:54 +02:00
Matthias 5b3eaa3003 Ensure advanced strategy template is runnable 2022-05-06 06:42:08 +02:00
Matthias d11c44940e Slightly reword docs
remove some Note-boxes - people tend to skip these.
2022-05-06 06:42:01 +02:00
Matthias 2d9be6dace move open_rate updating to close_bt_order 2022-05-05 19:50:16 +02:00
eSeR1805 29f1edbde7
Cleanup. Remove stray new line. 2022-05-05 12:24:32 +03:00
eSeR1805 495708df76
Merge branch 'develop' into feat_readjust_entry 2022-05-05 12:20:09 +03:00
eSeR1805 2bed0eab0c
BT: Update trade open_rate on first filled order. 2022-05-05 12:19:05 +03:00
eSeR1805 25c74e26d1
Models:Trade: Revert trade open_rate update. 2022-05-05 12:18:19 +03:00
Matthias 1a37c6ff42 Bump ccxt to 1.81.43
fixes bug in okx live liquidation pricing
2022-05-05 07:05:00 +02:00
eSeR1805 ae01afdd0f
Models:Trade: Fix open_rate updates. 2022-05-04 22:05:53 +03:00
eSeR1805 496bf84e3a
Merge branch 'develop' into feat_readjust_entry 2022-05-04 21:43:41 +03:00
eSeR1805 dbecc097df
Models:Trade: Update trade open_rate based on lastest order. 2022-05-04 21:34:45 +03:00
Sam Germain e8803477df exchange/exchange add param taker_or_maker to add_dry_order_fee 2022-05-03 23:56:40 -06:00
Mark Regan ce035a5947
Add bot_loop_start() call in plotting.py
plotting.py was missing a call to strategy.bot_loop_start() resulting in strategies using this callback to not work.

Made changes and confirmed plotting now works for strategies using bot_loop_start() callback.

LMK if anything else needed for PR.
2022-05-03 23:34:12 +01:00
Matthias 2705096ce6
Merge pull request #6777 from freqtrade/fix/contractsizefee
Fix fee handling for futures trades
2022-05-03 20:34:37 +02:00
Matthias 091cb4fb8d Reduce no stake amount verbosity
closes #6768
2022-05-03 19:42:17 +02:00
Matthias eb996a152a Fix fee handling for futures trades 2022-05-03 19:06:17 +02:00
Matthias 88c8fe5570
Merge pull request #6715 from nicolaspapp/feat/relative-drawdown
Add relative drawdown
2022-05-02 21:09:14 +02:00
Matthias 3f64c6307f Maintain compatibility with old backtest results 2022-05-02 20:01:44 +02:00
Matthias 1e2523af61 Fix some assumptions on the data
available_capital is not guaranteed to be available, while dry-run-wallet is.
2022-05-02 19:44:14 +02:00
eSeR1805 52d510c331
Merge branch 'develop' into feat_readjust_entry 2022-05-02 18:30:05 +03:00
eSeR1805 4c74601073
Freqtradebot: Cleanup stray debug messages. 2022-05-02 18:22:41 +03:00
eSeR1805 59397cdd19
Freqtradebot: Fix full cancel logging location. 2022-05-02 18:09:28 +03:00
Matthias 2a6efab8a2 Don't use deprecated abstractclassmethod decorator 2022-05-02 06:24:52 +00:00
eSeR1805 04c51d2d1a
Merge branch 'develop' into feat_readjust_entry 2022-05-01 21:42:15 +03:00
Nicolas Papp f9244aad92 Fix on max drawdown formula to match tests 2022-05-01 12:25:53 -03:00
eSeR1805 4e43194dfe
BT: Refactor open order management. 2022-05-01 18:06:20 +03:00
Matthias 582e30bca6
Merge pull request #6716 from freqtrade/pairlocks_direction
Pairlocks direction
2022-05-01 17:04:20 +02:00
Matthias 910addd02b
Merge pull request #6753 from freqtrade/download_prepend
Download prepend
2022-05-01 15:15:16 +02:00
Matthias 995c48b642 Merge branch 'develop' into pairlocks_direction 2022-05-01 14:59:04 +02:00
eSeR1805 9d205132d0
Revert unintended comment change. 2022-05-01 12:10:11 +03:00
eSeR1805 8c19953cdd
Quick exit when order should be maintained. 2022-05-01 12:08:19 +03:00
Matthias 53a2f55cf0 Merge branch 'develop' into pr/nicolaspapp/6715 2022-05-01 10:03:10 +02:00
Matthias d5fc923dcb Properly validate stoploss existence for optimize commands
closes #6740
2022-05-01 09:53:46 +02:00
Matthias 5c1ac3cf95 Fix caching bug with freqUI backtesting 2022-04-30 19:55:13 +02:00
Matthias 8b5d454b50 Fix subtle bug in trades download 2022-04-30 17:44:57 +02:00
Matthias e49b3ef051 Improve message formatting 2022-04-30 17:35:11 +02:00
Matthias f6a7e6b785 Add prepend option to download-data 2022-04-30 17:32:50 +02:00
Matthias 11d447cd5a Add support for download-data "until" 2022-04-30 15:42:41 +02:00
Matthias 4580127fa8 Small refactor 2022-04-30 14:51:57 +02:00
Matthias c6c569b772 chore: split BTAnalyais to metrics 2022-04-30 14:47:27 +02:00
Matthias 4262f84744 Merge branch 'develop' into pr/nicolaspapp/6715 2022-04-30 14:22:18 +02:00
Matthias 2acb68e6e2 Move hyperopt-loss functions to their own package 2022-04-30 13:59:23 +02:00
eSeR1805 3be2afdd88
Merge branch 'develop' into feat_readjust_entry 2022-04-30 13:39:23 +03:00
eSeR1805 ad0c5d9440
Refactor entry adjustment for backtesting. 2022-04-30 13:38:17 +03:00
eSeR1805 f9977c26e7
Full cancel only for non DCA trades. 2022-04-30 12:55:03 +03:00
Matthias 09b74cebce Move edge bot_loop_start to edge_cli
(otherwise it's called twice when running trade mode with edge on).
2022-04-30 08:55:07 +02:00
Sam Germain 8756e7d9a1 flake8 linting 2022-04-29 23:35:08 -06:00
Sam Germain 4a6f1e90c3 Merge branch 'develop' into bot-start 2022-04-29 22:23:42 -06:00
Matthias 43049e0465 Evict cache if parameter file changed
closes #6735
2022-04-29 19:44:17 +02:00
Matthias fbd142844f Refactor bt-caching stuff to it's own module 2022-04-29 19:37:13 +02:00
eSeR1805 09089b160e
Merge branch 'develop' into feat_readjust_entry 2022-04-29 13:02:38 +03:00
Matthias 48ff788e82 Clarify that stoploss is required
closes #6740
2022-04-29 09:53:05 +00:00
Matthias 21df1b0db3 Use ORJSON for http responses 2022-04-29 07:17:31 +02:00
eSeR1805 17650d7e60
Maintain existing order. Update functionality and documentation 2022-04-29 00:10:17 +03:00
eSeR1805 eb23170c43
Merge branch 'develop' into feat_readjust_entry 2022-04-28 23:06:52 +03:00
Matthias d1a61f9c61 Don't start futures backtest if leverage-tiers don't contain pair 2022-04-28 20:05:19 +02:00
Matthias cb5c3316d1 Simplify log output 2022-04-28 19:43:52 +02:00
Matthias e0d86307cb
Merge pull request #6732 from freqtrade/remove_duplicate_liqprice_call
Don't call interest_rate and isolated_liq twice
2022-04-28 07:38:32 +02:00
Matthias 2ef1181e16 Simplify trade __repr__ 2022-04-28 07:33:30 +02:00
Matthias 1e83589641 Fix hyperopt 2022-04-28 06:59:03 +02:00
Matthias ca49821df0 Fix race condition for loop 2022-04-28 06:29:14 +02:00
Matthias 46855221aa Fix rounding issue with contract-sized pairs for dry-run orders 2022-04-27 19:58:19 +02:00
Matthias 2c0a7c5d74 Don't call interest_rate and isolated_liq twice 2022-04-27 17:13:58 +02:00
Matthias 30c9dc6975 Fix exit-signa being assigned when tag is set but no signal is present. 2022-04-27 13:53:11 +02:00
Matthias ad7fbfab1b Slightly improved styling 2022-04-27 13:27:33 +02:00
Matthias 108f11b1d7 Fix docs typos 2022-04-27 06:42:56 +02:00
Rokas Kupstys 6d99222320 Add 'exit_tag' parameter to 'custom_exit_price' callback. 2022-04-26 10:01:51 +03:00
Sam Germain e76c6e8ad3 added bot_start call to edge_positioning.__init__ 2022-04-25 17:48:57 -06:00
Sam Germain e09b4498fa added bot_start call to plot/plotting 2022-04-25 17:48:57 -06:00
Sam Germain 4fd904e0a9 added bot_start to backtesting 2022-04-25 17:48:57 -06:00
Sam Germain d92761b2b1 Revert "strategy callback on_whitelist_update"
This reverts commit 39798dc1192161c3060830dd4684571aa86b7821.
2022-04-25 17:48:43 -06:00
Sam Germain bf7da35e31 strategy callback on_whitelist_update 2022-04-25 17:48:07 -06:00
Sam Germain 0b90e1d309 Added bot_start callback to strategy interface 2022-04-25 17:47:12 -06:00
Matthias 44000ae0b3 Fix CAGR missing for old results 2022-04-25 17:37:25 +02:00
Matthias 246a336f56
Merge pull request #6726 from froggleston/bt_concat
Move df append to pd concat
2022-04-25 16:03:27 +02:00
Matthias e38c4883dc
Merge pull request #6725 from freqtrade/cagr
Add CAGR calculation to backtesting
2022-04-25 16:02:39 +02:00
Matthias 9a5a57d848
Merge pull request #6724 from freqtrade/pre-commit-additional_updates
Check pre-commit verison updates
2022-04-25 14:57:45 +02:00
froggleston 431c539cbd Fix isort import order 2022-04-25 10:42:24 +01:00
Matthias 4444259078 Fix hyperopt-loss interface to enforce kwargs 2022-04-25 11:33:18 +02:00
froggleston 580da21dda Move df append to pd concat 2022-04-25 10:31:19 +01:00
Matthias 500fdc2759 run mypy also against tests 2022-04-25 11:12:35 +02:00
Matthias 4143ebbeae Add CAGR calculation to backtesting 2022-04-25 10:51:11 +02:00
Matthias 7b02114ad2 Restrict trading pairs with too low precision
closes #6606
2022-04-25 09:49:51 +02:00
Matthias 86b3aac9ba Fix FTX not fetching the very latest data 2022-04-25 08:38:02 +02:00
Matthias 9bc6bbe472 Improve test for max_drawdown calculations 2022-04-25 07:23:16 +02:00
Matthias 562e36c3ec Remove Interface V1 support 2022-04-25 07:01:27 +02:00
Nicolas Papp e8aec967dd Update on note 2022-04-24 17:42:52 -03:00
Nicolas Papp 086cc6be93 Correction on tests 2022-04-24 17:37:09 -03:00
Matthias 4de0fdbfca Minor edits found during review 2022-04-24 14:43:30 +02:00
Matthias 6623192108 improve doc wording 2022-04-24 14:39:13 +02:00
Matthias 737bdfe844 Use "side" parameter when calling Pairlocks 2022-04-24 14:33:24 +02:00
Matthias b0a8bf3025 Show lock side 2022-04-24 14:33:24 +02:00
Matthias 4942d73693 update pairlock tests 2022-04-24 14:33:24 +02:00
Matthias 845f960a4e realign pairlock naming to side 2022-04-24 14:33:24 +02:00
Matthias fc201bb4ff implement pairlock side further 2022-04-24 14:33:24 +02:00
Matthias 7c79d937e0 Properly type "side" parameter 2022-04-24 14:33:24 +02:00
Matthias b7cada1edd Convert ProtectionReturn to dataclass 2022-04-24 14:33:24 +02:00
Matthias 9e199165b4 Update protection-interface to support per-side locks 2022-04-24 14:33:24 +02:00
Matthias 6ff3b178b0 Add direction column to pairlocks 2022-04-24 14:33:24 +02:00
Matthias 25c6c5e326 Update backtest sell terminology to exit 2022-04-24 14:30:50 +02:00
Matthias 3c17409bd7 Update buy to entry in backtesting 2022-04-24 14:28:15 +02:00
Nicolas Papp 0f943c482b PEP8 code compliance 2022-04-23 13:15:14 -03:00
Matthias 8cac0a47cc Fix joblib being in wrong requirements 2022-04-23 17:08:34 +02:00
Matthias d4e12371c2
Merge pull request #6558 from samgermain/recursive-strategy-folder
Recursively search subdirectories in config['user_data_dir']/strategies for a strategy
2022-04-23 14:23:53 +02:00
Matthias b1ca47e3d6
Merge pull request #6707 from koradiyakaushal/develop
Ref: timeseries friendly merge_ordered in merge_informative_pair func…
2022-04-23 14:22:23 +02:00
Matthias f2912f8815 Improve mypy runs 2022-04-23 11:31:12 +02:00
Matthias 84f5a4d5bc Fix indentation 2022-04-23 10:51:24 +02:00
Matthias 89f16ad3a5
Merge pull request #6543 from froggleston/v3_fixes
Add support for storing buy candle indicator rows in backtesting results
2022-04-23 09:45:11 +02:00
Matthias 5a90d5ece6 Fix docstring quotes 2022-04-23 09:44:04 +02:00
Matthias 7328553c0b
Merge pull request #6563 from italodamato/opt-ask-force-new-points
Optimize only new points
2022-04-23 09:43:33 +02:00
Matthias 580a2c6545 Don't repeat backtest-storing 2022-04-23 09:23:53 +02:00
Matthias f1f4846053 Merge branch 'develop' into pr/samgermain/6558 2022-04-23 09:16:28 +02:00
Matthias ba92e09b7b list-strategies should find recursively as well 2022-04-23 09:11:50 +02:00
Matthias c6927a1501 Fix argument spelling 2022-04-23 09:10:40 +02:00
Matthias dff9d52b30 Remove hints on no longer used option, add very primitive test 2022-04-23 08:51:52 +02:00
froggleston 2fc4e5e117 Fix weird removal of comma 2022-04-22 18:54:02 +01:00
froggleston 767592a1d6 Add signals enum to 'export' cli option 2022-04-22 18:46:12 +01:00
Patel Kaushal ba305e93ed
Ref: timeseries friendly merge_ordered in merge_informative_pair function 2022-04-21 18:35:41 +05:30
froggleston f92997d378 Move signal candle generation into separate function 2022-04-20 14:05:33 +01:00
froggleston b3cb722646 Use joblib instead of pickle, add signal candle read/write test, move docs to new Advanced Backtesting doc 2022-04-20 13:38:52 +01:00
froggleston aa5984930d Fix filename generation 2022-04-19 13:00:09 +01:00
froggleston 165f59325f Merge branch 'v3_fixes' of github.com:froggleston/freqtrade into v3_fixes 2022-04-19 12:48:29 +01:00
froggleston 84f486295d Add tests for new storing of backtest signal candles 2022-04-19 12:48:21 +01:00
Robert Davey 4b0f168e52
Merge branch 'freqtrade:develop' into v3_fixes 2022-04-19 12:10:30 +01:00
eSeR1805 76558f284f
Fix user cancellation functionality. 2022-04-19 13:33:37 +03:00
eSeR1805 cea4f663d5
Merge branch 'develop' into feat_readjust_entry 2022-04-18 21:22:19 +03:00
eSeR1805 d24ee9032a
Update usage in backtest. No functional update. 2022-04-18 21:21:38 +03:00
eSeR1805 d9f838a65f
Update template usage to reflect changes. 2022-04-18 21:20:50 +03:00
eSeR1805 3166739ec9
Update strategy callback params and description. 2022-04-18 21:17:39 +03:00
eSeR1805 95e009b9cb
Update adjustment functionality and add cancelation option 2022-04-18 21:16:45 +03:00
eSeR1805 2cac1b7dcc
Add new (user cancellation) reason. 2022-04-18 21:14:35 +03:00
eSeR1805 17da4ca099
Use order_date_utc 2022-04-17 12:11:30 +03:00
Sam Germain 591a2fb7fc switch notionalFloor -> minNotional and notionalCap -> maxNotional 2022-04-16 21:47:44 -06:00
froggleston 34fb8dacd7 Fix isort complaints 2022-04-16 17:03:24 +01:00
froggleston b738c4e695 Fix flake8 complaints 2022-04-16 16:49:20 +01:00