Commit Graph

5978 Commits

Author SHA1 Message Date
Matthias 944d674eeb Store freqUI version and read it again 2021-01-31 14:50:54 +01:00
Matthias 2af1d2d639 Extract last FreqUI version from api response 2021-01-31 14:50:54 +01:00
Matthias e928d2991d Add fallback file 2021-01-31 14:50:54 +01:00
Matthias f05f2c45e8 Allow deleting of UI only 2021-01-31 14:50:54 +01:00
Matthias a1a35115ad Extract get_ui_download_url 2021-01-31 14:50:54 +01:00
Matthias 87ed2d7502 Write some tests for UI Downloading 2021-01-31 14:50:54 +01:00
Matthias a47616eed4 Add UI installation subcommand 2021-01-31 14:50:54 +01:00
Matthias 27970b424d Add webUI serving to api-server 2021-01-31 14:50:54 +01:00
Matthias 5724371a4f Fix types for numpy 1.20.0 upgrade 2021-01-31 11:21:23 +01:00
Pan Long 4cc93151c5
Fix a bug when compare sell_profit_offset
It should be comparing the ratio instead of absolut profit.

Also updated the comment.
2021-01-31 12:14:09 +08:00
Matthias 16dad8b6d4 Allow custom_stoploss to cooperate with stoploss on exchange 2021-01-30 20:11:18 +01:00
Matthias ea0ffbae73 use profit_ratio in calculate_cum_profit 2021-01-29 19:06:57 +01:00
Matthias 5cdd9dd445 Cache markets in the exchange object 2021-01-28 19:47:32 +01:00
Matthias 65459086a3
Merge pull request #4268 from freqtrade/backtest_trade_object
Backtest trade object
2021-01-27 19:10:21 +01:00
Matthias a9b4d6de33 Check for existance of ask key in ticker
closes #4267
2021-01-26 17:18:55 +01:00
Tho Pham (Alex) 8f529f48da
Update freqtrade/freqtradebot.py use is_open.is_(True)
Co-authored-by: Matthias <xmatthias@outlook.com>
2021-01-26 07:38:25 +07:00
Matthias c659150d9f Also print trade_duration in seconds to json 2021-01-25 19:42:34 +01:00
Tho Pham (Alex) c22cccb55b
Fix operator does not exist: boolean = integer 2021-01-25 12:24:47 +07:00
Matthias 62e43539c9 Limit max_open_trades to maximum available pairs
closes #4008
2021-01-24 19:59:54 +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 8ee264bc59 Don't use profit_percent for backtesting results anymore 2021-01-24 08:58:41 +01:00
Matthias 48977493bb Backtesting does not need to convert to BacktestResult object 2021-01-24 08:58:41 +01:00
Matthias 3b51545d23 Add trade_duration to to_json 2021-01-24 08:58:41 +01:00
Matthias 16f9675356 Fix whitelist expansion problem 2021-01-23 20:40:27 +01:00
Matthias 31e0b09643 Rename config.json.example
it's really the config dedicated to bittrex,
so the name should reflect this in beeing config_bittrex.json.example
2021-01-22 19:18:34 +01:00
Matthias 5c0f98b518 Blacklist Poloniex - as ccxt does not provide a fetch_order endpoint 2021-01-20 19:31:17 +01:00
Matthias 7c80eeea95 Add use_custom_stoploss to optimize_report 2021-01-19 22:51:12 +01:00
Matthias 20591b539a
Merge pull request #4228 from baartch/develop
Extending the Telegram Bot command /status with the possibility to query specific trade_ids
2021-01-19 20:08:49 +01:00
Andreas Brunner a68a546dd9 _rpc_trade_status argument datatype optimizations 2021-01-18 15:26:53 +01:00
Andreas Brunner eb95d970e9 flake8 beautify 2021-01-17 21:26:55 +01:00
Andreas Brunner d21eff0d52 fix, if an non existing trade_id is provided 2021-01-17 21:21:31 +01:00
Andreas Brunner 3ea33d1737 updating doc and help with new /status argument 2021-01-17 21:15:17 +01:00
Andreas Brunner 6d40814dbf extend status bot command to query specific trades 2021-01-17 20:39:35 +01:00
Matthias a8bae3a381 Don't update trade fees for dry-run orders 2021-01-17 20:31:27 +01:00
Matthias 53c208197d Add bot_name setting
allows naming the bot to simply differentiate when running different
bots.
2021-01-16 16:19:49 +01:00
Matthias 3fefb6f1c8
Merge pull request #4215 from freqtrade/refactor/backtest
Small backtest refactor, introduce calling `bot_loop_start` in backtesting
2021-01-16 09:32:19 +01:00
Matthias d74376726a api-server should fully support max_open_trades=-1 2021-01-15 20:47:12 +01:00
Matthias baef8b4f79
Merge pull request #4197 from nas-/develop
Added support for regex in whitelist
2021-01-15 07:34:49 +01:00
Matthias bf5868c96d Add testcase for nonexisting pairs on whitelist 2021-01-15 07:10:17 +01:00
nas- f72d53351c Added ability to keep invalid pairs while expanding expand_pairlist 2021-01-15 06:37:57 +01:00
Matthias 0b65fe6afe Capture backtest start / end time 2021-01-14 19:09:25 +01:00
Matthias 9147106259 call bot_loop_start() in backtesting to allow setup-code to run 2021-01-14 19:09:25 +01:00
Matthias baa1142afa Use preprocessed to get min/max date in hyperopt 2021-01-14 19:09:21 +01:00
Matthias 9d4cdcad10 Extract backtesting of one strategy 2021-01-14 19:04:42 +01:00
Matthias f3de0dd3eb Fix support for protections in hyperopt
closes #4208
2021-01-14 06:53:40 +01:00
Matthias 47a06c6213 Fix enable/reenable of swagger UI endpoint 2021-01-12 19:28:22 +01:00
Matthias ac43591c44 Fix failing api when max_open_trades is unlimited 2021-01-12 19:24:37 +01:00
Matthias 6007d5182a
Merge pull request #4147 from hoeckxer/ignore_expired_candle
Ignoring candles that have expired within timeframe
2021-01-12 19:04:16 +01:00
hoeckxer 1f6a71fdd9 Reformat code on new version 2021-01-12 08:24:11 +01:00
hoeckxer 71f45021b9 Removed redundant statement 2021-01-12 07:35:30 +01:00
hoeckxer e328182bd7 Changed workings so it only needs to timing-parameter, instead of also requiring a boolean value 2021-01-12 07:30:39 +01:00
nas- 4d7ffa8c81 Added suppoort for regex in whitelist 2021-01-12 01:13:58 +01:00
Matthias 63a579dbab Add sell_profit_offset parameter
Allows defining positive offsets before enabling the sell signal
2021-01-11 19:30:25 +01:00
Matthias f159c46438 Include stoploss_on_exchange in stoploss_guard
fix #4183
2021-01-11 07:55:01 +01:00
Matthias 5102dfd6df
Merge pull request #4144 from freqtrade/improve_informativepair
Improve merge_informative_pairs to properly merge correct timeframes
2021-01-09 10:15:59 +01:00
Matthias 8631a54514 Fix test due to pyjwt2.0 2021-01-08 19:34:01 +01:00
Matthias bf182dc01e Fix wrong key usage in trade_history_timebased 2021-01-07 20:03:34 +01:00
Matthias b43ef474ad Fix expired candle implementation
Improve and simplify test by passing the current time to the function
2021-01-07 07:51:49 +01:00
Matthias c9e477214f Allow protections to be set in the strategy 2021-01-06 16:37:09 +01:00
Matthias e69dac2704 Fix bug in RPC history mode when no data is found 2021-01-06 15:38:46 +01:00
Matthias 91f8667881 DOn't update open orders in dry-run mode 2021-01-06 09:57:36 +01:00
hoeckxer c0f170fdb9 Merge branch 'develop' into ignore_expired_candle 2021-01-05 21:00:08 +01:00
hoeckxer 65d91a3a58 isort fix 2021-01-05 15:36:34 +01:00
hoeckxer 573de1cf08 Fixed flake8 warnings 2021-01-05 15:30:29 +01:00
hoeckxer e3f3f36298 Changes based on review comments 2021-01-05 14:49:35 +01:00
hoeckxer c9ed2137bb Simplified return statements
Signed-off-by: hoeckxer <hawkeyenl@yahoo.com>
2021-01-05 09:07:46 +01:00
Erwin Hoeckx 67306d943a
Update interface.py
Simplified return value, thereby including the situation where the time simply hasn't expired yet
2021-01-05 07:33:34 +01:00
Erwin Hoeckx 9a93a0876a
Update interface.py
Adjusted comment
2021-01-05 07:32:07 +01:00
hoeckxer 844df96ec7 Making changes so the build checks are satisified (imports & flake8)
Signed-off-by: hoeckxer <hawkeyenl@yahoo.com>
2021-01-05 07:06:53 +01:00
hoeckxer 614a996597 First commit about ignoring expired candle
Signed-off-by: hoeckxer <hawkeyenl@yahoo.com>
2021-01-04 20:49:24 +01:00
Matthias 07bc0c3fce Improve merge_informative_pairs to properly merge correct timeframes
explanation in #4073, closes #4073
2021-01-04 13:49:38 +01:00
Matthias 5ca2cd3a1e Change defaults to log only errors 2021-01-03 07:18:41 +01:00
Matthias 634d6f3898 Change logging to stderr 2021-01-03 07:15:45 +01:00
Matthias 26c3463403 Stake-amount supports unlimited, too 2021-01-03 06:49:10 +01:00
Matthias cff50f9f66 Add response-model for show_config 2021-01-03 06:49:10 +01:00
Matthias ca0bb7bbb8 Don't require RPC for strategy 2021-01-03 06:49:07 +01:00
Matthias e6176d43f3 Optional RPC dependency 2021-01-03 06:49:07 +01:00
Matthias 3dc37dd79d Add types for deps 2021-01-03 06:49:07 +01:00
Matthias 336dd1a29c Rename api_models to api_schemas 2021-01-03 06:49:07 +01:00
Matthias 84ced92002 Fix mock-tests missing some fields 2021-01-03 06:49:07 +01:00
Matthias 29f4dd1dcd Enhance some response models 2021-01-03 06:49:07 +01:00
Matthias 718f2b24d2 Don't use relative imports 2021-01-03 06:49:07 +01:00
Matthias b2ab553a31 Rename api_server2 module to apiserver 2021-01-03 06:49:04 +01:00
Matthias eb20f6e7d0 Align auth token to flask version to prevent user-logout 2021-01-03 06:49:04 +01:00
Matthias 346542e5cd Remove flask dependency 2021-01-03 06:49:04 +01:00
Matthias 68d148e72d Allow configuration of openAPI interface 2021-01-03 06:49:04 +01:00
Matthias 1717121f10 Properly use JWT secret key 2021-01-03 06:49:04 +01:00
Matthias 790f833653 Some more tests around api_auth 2021-01-03 06:49:04 +01:00
Matthias 776ce57f55 Remove api_server 2021-01-03 06:49:04 +01:00
Matthias 54a50b1fb4 Fix some tests 2021-01-03 06:49:04 +01:00
Matthias 9f873305eb Improve response models 2021-01-03 06:49:04 +01:00
Matthias 9350f505bc Implement missing methods 2021-01-03 06:49:04 +01:00
Matthias e23898d17b Improve some tests 2021-01-03 06:49:04 +01:00
Matthias 9ee1d88355 Implement more endpoints 2021-01-03 06:49:04 +01:00
Matthias 73a29e6d74 Improve tests, implement more fastapi methods 2021-01-03 06:49:04 +01:00
Matthias a18d66e108 Add more endpoints to fastapi 2021-01-03 06:49:04 +01:00
Matthias 4b86700a0f Implement more endpoints 2021-01-03 06:48:56 +01:00
Matthias 5e4c4cae06 Fix auth providers 2021-01-03 06:48:53 +01:00
Matthias 86d0700884 Move models to apimodels 2021-01-03 06:46:25 +01:00
Matthias 6594278509 Reorder endpoints 2021-01-03 06:46:25 +01:00
Matthias eac74a9dec Implement auth in fastapi 2021-01-03 06:46:25 +01:00
Matthias 619b855d5f Add version endpoint 2021-01-03 06:46:25 +01:00
Matthias a862f19f82 Allow retrieval of rpc and config via dependencies 2021-01-03 06:46:25 +01:00
Matthias 1e38fec61b Initial fastapi implementation (Ping working) 2021-01-03 06:46:25 +01:00
Matthias 9e3224ccc0
Merge pull request #4089 from freqtrade/feat/stoploss_custom
introduce custom stoploss
2020-12-31 10:33:33 +01:00
Matthias 512e163355 change docstring to better reflect what the method is for 2020-12-31 09:48:49 +01:00
Matthias bd7600ff06 Small visual changes 2020-12-31 09:43:24 +01:00
Matthias 04624aae40 Add documentation for wildcard-blacklist 2020-12-30 12:30:50 +01:00
Matthias 0affacd39a Support invalid regex blacklist from config 2020-12-30 10:14:22 +01:00
Matthias 9feabe707f Fix RPC methods to allow wildcards (and validate wildcards) 2020-12-30 09:57:31 +01:00
Matthias 704cf14383 Add expand_pairlist method 2020-12-30 09:55:44 +01:00
Matthias 2fdda8e448 plot-profit should fail gracefully if no trade is within the selected timerange
closes #4119
2020-12-30 08:30:41 +01:00
Matthias b607740dd1 Fix kraken balance bug if open buy orders exist 2020-12-29 20:06:37 +01:00
Matthias 0d4cf32086 Slightly adapt to pandas incompatibility 2020-12-28 09:50:48 +01:00
Matthias a87c273903 Refactor RPC modules so handlers don't inherit RPC directly 2020-12-24 09:09:23 +01:00
Matthias 1508e08ea5 Move fiatconvert init to RPC class 2020-12-24 08:39:00 +01:00
Matthias 516e56bfaa Move init of _config to apiserver parent 2020-12-23 20:50:32 +01:00
Matthias f11fd2fee1 Sort imports 2020-12-23 17:00:02 +01:00
Matthias 67193bca3d Move pairlists to be a plugin submodule 2020-12-23 16:54:35 +01:00
Matthias 7cef5ac217
Merge pull request #4092 from MrKrautee/telegram
Telegram: specify custom keyboard in config
2020-12-23 16:25:37 +01:00
Christof 74bcd82c3d Exception msg 2020-12-23 16:00:01 +01:00
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
Matthias 8f1d2ff070 Renamd volatilityFilter to RangeStabilityFilter 2020-11-25 15:14:29 +01:00
Matthias 0104c9fde6 Fix double logging 2020-11-25 14:31:34 +01:00
Matthias ceb50a7807 use exception handler when downloading data
closes #3992
2020-11-25 07:57:27 +01:00
Matthias bd98ff6332 Update docstring in all pairlists 2020-11-24 20:24:51 +01:00
Matthias 006436a18d Require use_sell_signal to be true for edge
Otherwise edge will have strange results, as
edge runs with sell signal, while the bot runs without sell signal,
causing results to be invalid

closes #3900
2020-11-24 07:47:35 +01:00
Matthias 730c9ce471 Add Max_open_trades to summary metrics 2020-11-24 06:57:26 +01:00
Matthias 29c6a9263d Protect against 0 values 2020-11-22 15:50:44 +01:00
Matthias 2e1551a2eb Improve tests of volatilityfilter 2020-11-21 19:57:17 +01:00
Matthias f8fab5c4f8 Add tests for failure cases 2020-11-21 15:51:39 +01:00
Matthias 109824c9a8 Add VolatilityFilter 2020-11-21 15:39:00 +01:00
Matthias fb86d8f8ff Add get_historic_ohlcv_as_df to support VolatilityFilter 2020-11-21 15:28:50 +01:00
Matthias 4d60a4cf4e Add warning to StochRSI in sample strategy
closes #2961
2020-11-21 11:32:46 +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 5ed85963a9 Allow forcebuy price to be a string by converting it to float
fix #3970
2020-11-21 10:39:49 +01:00
Matthias fa0fcfb492
Merge pull request #3939 from drdux/historic-pair
Historic pair
2020-11-19 19:46:08 +01:00
Matthias 7a8b274a44 Merge branch 'develop' into pr/imxuwang/3799 2020-11-19 13:18:03 +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 9621734adc Allow setting datafromat via configuration
closes #3953
2020-11-17 06:53:38 +01:00
Matthias 05f0cc787c Plotting should use startup_candles too
closes #3943
2020-11-14 09:28:00 +01:00
Matthias 164105acf2 Adjust startup_candle_count of sample strategies 2020-11-14 08:25:57 +01:00
Matthias 08b52926c8 Catch asyncio.TimeoutError when reloading async markets 2020-11-13 10:43:48 +01:00
Matthias 4eb96cfc4f Allow locks to be gathered even when the bot is stopped 2020-11-13 06:51:45 +01:00
Daniel Goller 2d6bfe1592 only skip pair validation rather than all of it 2020-11-12 11:32:45 +00:00
Daniel Goller 2424ac94c2 skip the check for active markets with flag for existing StaticPairList 2020-11-12 11:29:46 +00:00
Daniel Goller 2640dfee93 Revert "Added ConstPairList handler to skip validation of pairs if you want to backtest a pair that's not live any more, e.g. expiring contracts."
This reverts commit 13da8f9368.
2020-11-12 11:27:30 +00:00
Daniel Goller 916776bb53 Option to skip exchange validation, required to backtest pairs that are not live on the exchange any more. 2020-11-09 08:37:38 +00:00
Daniel Goller 13da8f9368 Added ConstPairList handler to skip validation of pairs if you want to backtest a pair that's not live any more, e.g. expiring contracts. 2020-11-09 08:34:40 +00:00