Commit Graph

5706 Commits

Author SHA1 Message Date
Christof cd1a8e2c42 better error msg 2020-12-22 12:39:27 +01:00
Christof be28b42bfa Exception for invalid keyboard config 2020-12-22 12:34:21 +01:00
Matthias 39579b6e5d
Merge pull request #4093 from freqtrade/ohlcv_limit
set ohlcv limit on ccxt calls
2020-12-21 19:34:50 +01:00
Christof 5423c21be0 keyboard type 2020-12-20 22:51:40 +01:00
Christof f39dde121a moved keyboard config validation to __inti__ 2020-12-20 22:36:56 +01:00
Christof 18a24d75ef cleanup 2020-12-20 21:31:01 +01:00
Christof c1b8ad7232 renaming, comments, cleanups 2020-12-20 21:31:01 +01:00
Christof 43091a26ce simple tests 2020-12-20 21:28:57 +01:00
Christof 5b2902fcbc cleanup 2020-12-20 21:28:57 +01:00
Christof 16baca5eeb fixed: too complex warning 2020-12-20 21:28:57 +01:00
Christof d901a86165 typo 2020-12-20 21:28:57 +01:00
Christof 75e4758936 changed config params, added fill area in subplots 2020-12-20 21:28:57 +01:00
Christof cc39cf97dd revert to former create_plotconfig behaviour 2020-12-20 21:28:57 +01:00
Christof 4531c924da PEP8 2020-12-20 21:28:57 +01:00
Christof fb3d82ccb9 cleanup 2020-12-20 21:28:57 +01:00
Christof fdd4b40c34 fixed subplots, empty create plot_config if its not given by strategie 2020-12-20 21:28:57 +01:00
Christof daa1727e2b Exeption for fill_area.traces 2020-12-20 21:28:57 +01:00
Christof 3fdfc06a1e label for fill_area added and documentation updated 2020-12-20 21:28:57 +01:00
Christof ecadfdd98e fixed:advanced config. added. feature: fill area between traces by advanced configuration. 2020-12-20 21:28:57 +01:00
Christof 6b44545d37 sort order imports 2020-12-20 21:06:45 +01:00
Christof 621105df9a renaming shortcut_btns to keyboard 2020-12-20 21:06:45 +01:00
Christof 5b3ffd5141 better log msg, comments 2020-12-20 21:06:45 +01:00
Christof e92bcb00f6 telegram: specify custom shortcut bottons (keyboard) in config.json 2020-12-20 21:06:45 +01:00
Matthias 8d3f096a97 AgeFilter does not require tickers 2020-12-20 20:08:54 +01:00
Matthias d7daa86434 Add bybit subclass 2020-12-20 19:59:46 +01:00
Matthias 7d2395ddb7 Add limit parameter to fetch_ohlcv 2020-12-20 19:33:04 +01:00
Matthias 9d5961e224 Rename method to custom_stoploss 2020-12-20 11:17:50 +01:00
Matthias 277342f167 Rename flag to "use_custom_stoposs" 2020-12-20 11:12:22 +01:00
Matthias 8574751a07 Add stoploss_value to strategy template 2020-12-20 10:49:22 +01:00
Matthias 6892c08e9b Improve docstring 2020-12-19 13:18:06 +01:00
Matthias b2c1098316 more docs for dynamic stoploss method 2020-12-19 12:03:18 +01:00
Matthias f7b54c2415 Allow and document time-based custom stoploss
closes #3206
2020-12-19 11:46:49 +01:00
Matthias a414b57d54 Experiment with custom stoploss interface 2020-12-18 06:56:56 +01:00
Matthias 8f6aefb591 Extract stoploss assignment 2020-12-18 06:56:56 +01:00
Matthias 768a24c375 Add stoplossvalue interface 2020-12-18 06:56:56 +01:00
Matthias 4e7f914e92 Improve test for AgeFilter, fix bug in Agefilter 2020-12-17 13:34:53 +01:00
Matthias 266031a6be Disallow PerformanceFilter for backtesting
closes #4072
2020-12-16 19:24:47 +01:00
Matthias d1fda28d2e Fix typehints 2020-12-15 20:59:58 +01:00
Matthias 3c85d5201f Use async to get candle data for pairlists 2020-12-15 20:38:26 +01:00
Matthias c8dde63227 Allow test-pairlist to run with verbosity 2020-12-15 09:23:40 +01:00
Matthias 69901c1314 Provide pair to _validate_pairs in pairlists 2020-12-15 09:23:40 +01:00
Matthias 39fec25ae0 add optional Cache arguments to refresh_pairs method 2020-12-15 09:23:27 +01:00
Matthias 9f5c4ead15 Remove support for 3.6 2020-12-14 19:18:54 +01:00
Matthias 7c6357cc45
Merge pull request #4041 from freqtrade/plugins/protections_backtest
Introduce Protection Plugins
2020-12-13 11:08:24 +01:00
Matthias 657b002a81 Explicitly check for False in fetch_ticker 2020-12-13 10:59:29 +01:00
Matthias 7eab33de08 Merge branch 'develop' into plugins/protections_backtest 2020-12-13 10:31:33 +01:00
Matthias 8a2fbf6592 Small cleanup of protection stuff 2020-12-13 10:16:09 +01:00
Matthias 181b88dc75 Don't accept too high fees, assuming they are erroneous
Forces fallback to "detection from trades"
2020-12-12 10:52:27 +01:00
Matthias c784e5780e
Merge pull request #4054 from freqtrade/models_open_price
Models open price
2020-12-11 06:31:02 +01:00
Matthias 95fd3824da Finish renamal of open_trade_price to open_value 2020-12-10 19:36:52 +01:00
Matthias 201cc67e05 Rename open_trade_price to "open_trade_value" 2020-12-10 19:21:20 +01:00
Matthias 76594d5dde
Merge pull request #3799 from imxuwang/issue3783
Introduce Telegram /stats endpoint
2020-12-10 15:41:09 +01:00
Matthias ca99d484fc Refactor to use list comprehension 2020-12-10 07:39:50 +01:00
Matthias 33f330256b Reorder commands on telegram init 2020-12-09 20:36:30 +01:00
Matthias f1af2972e2 Ensure non-defined attributes fail correctly
Remove unnecessary check, as stoploss cannot be none (it's mandatory and
a number)
2020-12-09 07:55:08 +01:00
Matthias c37bc307e2 Small finetunings to documentation 2020-12-07 16:12:03 +01:00
Matthias f047297995 Improve wording, fix bug 2020-12-07 15:48:06 +01:00
Matthias 3ab5514697 Add API endpoint for /stats 2020-12-07 15:07:08 +01:00
Matthias 81410fb404 Document /stats for telegram 2020-12-07 15:03:16 +01:00
Matthias e873cafdc4 Beautify code a bit 2020-12-07 14:54:39 +01:00
Matthias effc96e92b Improve tests for backtest protections 2020-12-07 11:39:01 +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 98c88fa58e Prepare protections for backtesting 2020-12-07 11:39:01 +01:00
Matthias 3426e99b8b Improve formatting of protection startup message 2020-12-07 11:37:57 +01:00
Matthias 64d6c7bb65 Update developer docs 2020-12-07 11:17:11 +01:00
Matthias 0e2a43ab4d Add duration_explanation functions 2020-12-07 11:12:09 +01:00
Matthias c993831a04 Add protections to startup messages 2020-12-07 10:57:01 +01:00
Matthias d4799e6aa3 Implement *candle definitions 2020-12-07 10:54:26 +01:00
Matthias a93bb6853b Document *candles settings, implement validations 2020-12-07 10:47:13 +01:00
Matthias eb952d77be Move lookback_period to parent __init__ 2020-12-07 08:27:14 +01:00
Matthias f06b58dc91 Test MaxDrawdown desc 2020-12-07 08:23:10 +01:00
Matthias 089c463cfb Introduce max_drawdown protection 2020-12-07 08:23:10 +01:00
Matthias 9d6f3a89ef Improve docs and fix typos 2020-12-07 08:23:10 +01:00
Matthias 768d7fa196 Readd optional for get_pair_locks - it's necessary 2020-12-07 08:23:10 +01:00
Matthias ad746627b3 Fix lock-loop 2020-12-07 08:23:10 +01:00
Matthias 4351a26b4c Move stop_duration to parent class
avoids reimplementation and enhances standardization
2020-12-07 08:23:10 +01:00
Matthias 6d0f16920f Get Longest lock logic 2020-12-07 08:23:10 +01:00
Matthias dce2364672 Add stoploss per pair support 2020-12-07 08:23:10 +01:00
Matthias 8f958ef723 Improve login-mixin structure 2020-12-07 08:23:10 +01:00
Matthias 8d9c66a638 Add LogginMixin to freqtradebot class to avoid over-logging 2020-12-07 08:23:10 +01:00
Matthias be57ceb252 Remove confusing entry
(in this branch of the if statement, candle_date is empty
2020-12-07 08:23:10 +01:00
Matthias 5e3d2401f5 Only call stop methods when they actually support this method 2020-12-07 08:23:10 +01:00
Matthias 2cd54a5933 Allow disabling output from plugins 2020-12-07 08:23:10 +01:00
Matthias 8ebd6ad200 Rename login-mixin log method 2020-12-07 08:23:10 +01:00
Matthias 2e5b9fd4b2 format profit in low_profit_pairs 2020-12-07 08:23:10 +01:00
Matthias e29d918ea5 Avoid double-locks also in per pair locks 2020-12-07 08:23:10 +01:00
Matthias fc97266dd4 Add "now" to lock_pair method 2020-12-07 08:23:10 +01:00
Matthias 59091ef2b7 Add helper method to calculate protection until 2020-12-07 08:23:10 +01:00
Matthias 5133675988 Apply all stops in the list, even if the first would apply already 2020-12-07 08:23:10 +01:00
Matthias 9484ee6690 Test for low_profit_pairs 2020-12-07 08:23:10 +01:00
Matthias bb06365c50 Improve protection documentation 2020-12-07 08:23:10 +01:00
Matthias 1f703dc341 Improve protection documentation 2020-12-07 08:23:10 +01:00
Matthias 00d4820bc1 Add low_profit_pairs 2020-12-07 08:23:10 +01:00
Matthias 9f6c2a583f Better wording for config options 2020-12-07 08:23:10 +01:00
Matthias 8dbef6bbea Add test for cooldown period 2020-12-07 08:23:10 +01:00
Matthias fe0afb9883 Implement calling of per-pair protection 2020-12-07 08:23:10 +01:00
Matthias 2a66c33a4e Add locks per pair 2020-12-07 08:23:10 +01:00
Matthias ff7ba23477 Simplify enter_positions and add global pairlock check 2020-12-07 08:23:10 +01:00
Matthias 05be33ccd4 Simplify is_pair_locked 2020-12-07 08:23:10 +01:00
Matthias 56975db2ed Add more tests 2020-12-07 08:23:10 +01:00
Matthias 816703b8e1 Improve protections work 2020-12-07 08:23:10 +01:00
Matthias f39a534fc0 Implement global stop (First try) 2020-12-07 08:23:10 +01:00
Matthias 3447f1ae53 Implement first stop method 2020-12-07 08:23:10 +01:00
Matthias a0bd2ce837 Add first version of protection manager 2020-12-07 08:23:10 +01:00
Matthias b6b9c8e5cc Move "slow-log" to it's own mixin 2020-12-07 08:23:10 +01:00
Matthias 51fbd0698c Move get_logs to be static method 2020-12-06 19:57:48 +01:00
Matthias 245c19f5e9 Add simple test for /stats call 2020-12-05 14:48:56 +01:00
Matthias aa27c9ace2 Reorder methods in telegram
/stats is closely related to /profit
2020-12-05 14:39:50 +01:00
Matthias 143423145c Refactor most of the logic to rpc.py
this way /stats can be used by other RPC methods too
2020-12-05 14:38:42 +01:00
Matthias c556d1b37e Make /stats working 2020-12-05 14:06:46 +01:00
Matthias 8f61b68b2a Merge branch 'develop' into pr/imxuwang/3799 2020-12-05 14:06:23 +01:00
Matthias 058d40a72c Fix telegram /daily command without arguments 2020-12-05 08:16:40 +01:00
Matthias 2fbbeb970b Gracefully handle cases where no buy price was found
closes #4030
2020-12-04 07:42:16 +01:00
Matthias 22595e6f92
Merge pull request #3929 from radwayne/roi_trailing_backtest
change backtesting behaviour if roi and trailing-stop happen at the same time
2020-12-03 19:40:46 +01:00
Matthias 36b7edc342 Update typing errors 2020-12-01 19:57:09 +01:00
Matthias dda5bcbc8d
Merge pull request #4009 from mrsegen/patch-4
[Pairlist] Add PerformanceFilter
2020-11-30 07:48:15 +01:00
Leif Segen e7a035eefe Lint 2020-11-28 12:29:31 -06:00
Leif Segen 323c0657f8 Sort by profit after sort by count/pair 2020-11-28 12:17:03 -06:00
Leif Segen 6a74c57c3d Pair name-based sorting.
Attempt at more rational string sorting. Change test to show not working as expected.
2020-11-28 11:33:25 -06: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
Leif Segen 03c5714399 Use explicit merge without depending on library detail. Add no trades case. 2020-11-28 09:45:17 -06:00
Leif Segen e1d42ba78c Alphabetize 2020-11-28 09:44:01 -06:00
Matthias a47d8dbe56 Small refactor, avoiding duplicate calculation of profits 2020-11-28 11:35:29 +01:00
Leif Segen 37d2e476df isort imports 2020-11-28 01:59:30 -06:00
Leif Segen 966c6b308f Satisfy linter. 2020-11-28 01:34:18 -06:00
Leif Segen cfbd1c4c43
Merge branch 'develop' into patch-4 2020-11-28 01:17:34 -06:00
Leif Segen 662ec32073 Add test cases 2020-11-28 01:15:36 -06:00
Leif Segen 91b4c80d35 Remove unused parameters 2020-11-27 22:18:49 -06:00
Leif Segen 380cca2252 Remove unused imports 2020-11-27 22:00:48 -06:00
Leif Segen 7cbd89657f Initial step towards implementing proposed code 2020-11-27 21:24:40 -06:00
Matthias af1b3721fb remove duplicate settings check 2020-11-27 20:28:17 +01:00
Matthias 95c3c45ec9 Remove long deprecated settings that moved from experimental to
ask_strategy
2020-11-27 20:24:32 +01:00
Matthias fefb4b23d0 revise logic in should_sell 2020-11-27 09:24:53 +01:00
Matthias 81d08c4def Add detailed backtest test verifying the ROI / trailing stop collision 2020-11-27 08:24:56 +01:00
Matthias dddbc799f9 have kraken stoploss-limit support trailing stop 2020-11-26 19:40:36 +01:00
Matthias 1d56c87a34 Fully support kraken limit stoploss 2020-11-25 21:40:39 +01:00
Matthias 53231d94a9
Merge pull request #3975 from freqtrade/volatility_filter
RangeStabilityFilter filter - filter for pairs without much movement
2020-11-25 19:17:06 +01:00
Matthias c14c0f60a1 Add Support for kraken stoploss-limit 2020-11-25 16:27:27 +01:00
Matthias 6810192992 Update docstring for new filter 2020-11-25 15:14:36 +01:00
Matthias 8ae604d473 Ensure we're not running off of empty dataframes 2020-11-25 15:14:36 +01:00
Matthias 0d349cb355 Small finetuning 2020-11-25 15:14:36 +01:00