Commit Graph

740 Commits

Author SHA1 Message Date
hroff-1902 68be239a0e
Merge pull request #3146 from freqtrade/buy_order_timeout_logging
Improve handling for buy order cancels
2020-04-16 23:41:45 +03:00
Matthias 1f70fcfa2d Update logmessage 2020-04-16 20:19:34 +02:00
Matthias f39706cabd Fix #3130 - when corder['remaining'] contains none-type 2020-04-09 19:35:27 +02:00
Matthias 5cff72a42e Improve logging to ensure which branch is used for buy order cancels 2020-04-09 09:22:38 +02:00
Matthias 95011919d3 Remove questionable handling of orders 2020-03-25 11:18:33 +01:00
Matthias 3c1b155e9f Remove filled if amount is modified to suit fee structure 2020-03-25 09:43:04 +01:00
Matthias f3103be15c Fix test 2020-03-25 09:43:04 +01:00
Matthias 700cedc573 Unify handling of open orders to update_trade_state 2020-03-25 09:43:04 +01:00
Matthias 7c47c6e3bd check for timeouts before exiting positions 2020-03-25 09:43:04 +01:00
Matthias 9c351007f5 Provide reason for cancelled sell order 2020-03-25 09:43:04 +01:00
Matthias 1817e6fbdf Combine real_amount updating into one method 2020-03-25 09:43:04 +01:00
Matthias 2c434e9b11 Add close_proit_abs column 2020-03-22 11:16:23 +01:00
hroff-1902 fb4e9b3938
Merge pull request #3025 from yazeed/minor_create_trade_optimization
minor create_trade() optimization
2020-03-21 10:36:39 +03:00
Yazeed Al Oyoun 942792f123 updated as suggested 2020-03-20 05:48:53 +01:00
Matthias 5e702f6891 Verify cancel_order returnvalue is a dictionary 2020-03-19 19:44:14 +01:00
Matthias a1bbeaa668 Merge branch 'develop' into interface_ordertimeoutcallback 2020-03-15 14:56:14 +01:00
hroff-1902 3208faf7ed Do not use ticker where it's not a ticker 2020-03-08 20:47:02 +03:00
Matthias 847df7b70c
Merge pull request #3026 from yazeed/add_default_to_ignore_roi_if_buy_signal
default for ignore_roi_if_buy_signal in freqtradebot.py
2020-03-06 19:35:41 +01:00
Yazeed Al Oyoun b8d05d8751 found instance of config get without default 2020-03-05 22:14:05 +01:00
Yazeed Al Oyoun 0587256733 minor create_trade() optimization 2020-03-05 21:57:01 +01:00
Yazeed Al Oyoun 4474482307 unifying get_sell_rate with get_buy_rate 2020-03-05 20:44:29 +01:00
hroff-1902 34093d1208
Merge branch 'develop' into no-percent-1 2020-03-05 14:27:12 +03:00
Matthias 53dcb5d5ed Fix logging expression 2020-03-03 19:36:03 +01:00
Matthias 6e2290c4f0 Allow last to be empty -
closes #3005
2020-03-02 20:05:54 +01:00
hroff-1902 e411717de9 No percent where ratio is to be used 2020-02-28 12:36:39 +03:00
Matthias 0fea3a7ea7 Some final polish to configurable_side 2020-02-26 19:50:17 +01:00
Matthias 8edc3eb5fb Use generator to generate sell price scaffold testing 2020-02-26 19:39:12 +01:00
Matthias e4b2949188 Change buy_rate calculation to use price_side 2020-02-26 19:39:12 +01:00
Matthias 5f71232038 Refactor get_buy_rate to use rate variable 2020-02-26 19:39:12 +01:00
Matthias de48a697b0 Use price_side for get_sell_rate 2020-02-26 19:39:12 +01:00
hroff-1902 e6d003f8f2
Merge pull request #2973 from freqtrade/support_non_pairs
Support non pairs
2020-02-26 12:20:45 +03:00
Matthias 4e218be51d Don't use markets[pair]['quote'] 2020-02-26 07:08:09 +01:00
hroff-1902 5a900858d8
Merge branch 'develop' into rate_caching 2020-02-26 04:04:20 +03:00
Matthias a030ce9348 Reformat if condition 2020-02-25 20:22:59 +01:00
Matthias d44f6651c4 Fix small parenteses bug 2020-02-25 19:55:23 +01:00
Matthias e8eaa8920e Use get_base_currency instead of splitting by / 2020-02-25 07:01:31 +01:00
Matthias 61037ab7b8 Implement get_pair_base_curr and get_pair_quote_curr 2020-02-24 21:50:27 +01:00
Matthias 77ef3240cd Implement log messages 2020-02-22 11:20:19 +01:00
Matthias 97e6e5e976 Implement caching in the correct place 2020-02-22 11:12:33 +01:00
Matthias f5b4a6d3d7 Remove fetch_ticker caching 2020-02-22 11:10:05 +01:00
Matthias bf556c8678 Merge branch 'develop' into interface_ordertimeoutcallback 2020-02-21 20:35:07 +01:00
Matthias 6c01542fed Ad check_sell_timeout 2020-02-21 20:27:13 +01:00
hroff-1902 269a669af8 Move heartbeat to worker 2020-02-21 05:07:31 +03:00
Matthias ab27d2c720
Merge pull request #2921 from hroff-1902/adjust-buy-notification
Move rpc send to be after db session add/flash
2020-02-14 20:02:56 +01:00
hroff-1902 20c21b42d5 Move rpc send to be after db session add/flash 2020-02-14 06:23:03 +03:00
hroff-1902 36ef5c6bdf Get rid of delete_trades method in Freqtradebot 2020-02-14 04:05:17 +03:00
Yazeed Al Oyoun f09af888b1 modified get_buy/sell_rate refresh to true on notify_sell_cancel and notify_buy_cancel 2020-02-12 21:55:38 +01:00
Yazeed Al Oyoun f6db784a85 removed default to refresh argument in get_buy_rate and get_sell_rate 2020-02-12 21:50:33 +01:00
Yazeed Al Oyoun cde1b2b56c readded rpc status message for partial buys 2020-02-11 16:28:48 +01:00
Yazeed Al Oyoun 5f4c209fca fixed one more occurence of executed buy, and test 2020-02-11 16:14:49 +01:00
Yazeed Al Oyoun 4fedf1e564 default refresh TRUE on get_buy_rate and get_sell_Rate 2020-02-11 16:05:44 +01:00
Yazeed Al Oyoun 867b736b84 Fixed to Executing Buys & Sells 2020-02-11 15:50:21 +01:00
Yazeed Al Oyoun 7f4b90c68f fixed actual open_rate in notify_buy_cancel 2020-02-11 15:45:35 +01:00
Yazeed Al Oyoun f99d1c3829 fixed open_rate instead of open_rate_requested 2020-02-11 15:44:47 +01:00
Yazeed Al Oyoun 879b513822 enhanced method description 2020-02-08 21:31:36 +01:00
Yazeed Al Oyoun f3b1161640 wide notifications fixes 2020-02-08 21:02:52 +01:00
Matthias 49dcc561b7 POC for check_buy_timeout 2020-02-06 20:30:17 +01:00
Yazeed Al Oyoun 91b4c9668c More consistency changes... 2020-02-04 01:57:24 +01:00
hroff-1902 d457d43999
Merge pull request #2833 from hroff-1902/type-hints
Add some type hints
2020-02-03 23:24:26 +03:00
Matthias e3cb5d26c0
Merge pull request #2835 from yazeed/reduce_noise_if_use_order_book_true
reduced noise without verbose mode if use_order_book is true
2020-02-02 19:42:50 +01:00
hroff-1902 e8c1abc509
Merge pull request #2799 from freqtrade/fix_stoploss_recreated
Fix stoploss recreated
2020-02-02 16:59:45 +03:00
hroff-1902 6594679e52
Merge pull request #2779 from freqtrade/stoploss_market
Stoploss on exchange for Kraken
2020-02-02 14:48:45 +03:00
Yazeed Al Oyoun aeabe1800b modified two lines from logger.info to logger.debug cause they're too spammy 2020-02-02 10:49:00 +01:00
hroff-1902 f3d500085c Add some type hints 2020-02-02 07:00:40 +03:00
hroff-1902 e1356fb80e
Merge pull request #2800 from yazeed/enhanced_check_depth_of_market_logging
better logging on check_depth_of_market_buy()
2020-01-29 10:56:14 +03:00
Yazeed Al Oyoun a0b92fe0b1 removed typo 2020-01-28 19:29:47 +01:00
Yazeed Al Oyoun 328a9ffafd fixed typo in false statement 2020-01-28 19:27:49 +01:00
hroff-1902 30e3e434ab Add notify_status() to FreqtradeBot 2020-01-27 03:34:53 +03:00
Yazeed Al Oyoun f8db7f1709 added ask price, bid price, immediate ask quantity, and immediate bid quantity to check_depth_of_market_buy. also added a line that mentions if delta condition was satisfied or not. 2020-01-25 04:17:41 +01:00
Matthias 70b9bd9c0e Verify if trade is closed before acting on Stoploss_on_exchange 2020-01-23 20:36:48 +01:00
Matthias ea5ac1efb5 Don't handle stoploss if there is an open regular order 2020-01-23 20:24:23 +01:00
Matthias a83de241e4 Check for closed stoploss-orders first 2020-01-23 19:40:31 +01:00
Matthias 1d141cd406 Merge branch 'develop' into stoploss_market 2020-01-23 19:35:05 +01:00
Matthias bc4c469797 Merge branch 'develop' into stoploss_market 2020-01-22 20:51:52 +01:00
Matthias aad10ceee3 Add threading lock object for /forcesell
Protects against stoploss_on_exchange order recreation
in case of /forcesell (it's a timing issue, so may or may not happen).
2020-01-22 20:50:09 +01:00
Matthias 8a940eb0c1 Align price finding function name on buy side with get_sell_rate 2020-01-22 14:46:28 +01:00
Matthias 1bf475fa1a Remove .get calls for dry_run - it's a mandatory property 2020-01-20 20:24:40 +01:00
Matthias cf9331919f move exchange-specific order-parsing to exchange class
Related to stoploss_on_exchange in combination with trailing stoploss.

Binance contains stopPrice in the info, while kraken returns the same
value as "price".
2020-01-19 19:54:30 +01:00
Matthias 256fc2e78c Rename stoploss_limit to stoploss 2020-01-19 13:30:56 +01:00
Matthias 8d2e0bfd62 Move rate-calcuation for stoploss-limit order to exchange 2020-01-19 13:13:09 +01:00
Matthias 29a5e4fba1 Update wallets before getting amount 2020-01-15 21:52:54 +01:00
Matthias 8bcfe4a6aa Up log level of safe_sell_amount message 2020-01-15 21:01:36 +01:00
Matthias d1bf388b0e Wallet amount must be compared with >= 2020-01-15 19:56:14 +01:00
Matthias fab19ae3a7 Implement last_stake_amount_min_ratio 2020-01-10 06:36:28 +01:00
Matthias 9713dc8d94 Ensure wallets.update is called before buy
closes #2756
2020-01-09 20:09:21 +01:00
Matthias b37f34ff5b Implement amend_last_stake_amount 2020-01-05 13:25:11 +01:00
Matthias a75420f75f Merge branch 'develop' into relative_stake 2020-01-05 12:55:55 +01:00
Matthias 7daa5bc338 Don't return None from unlimited_stake - 0 handles this just as well 2020-01-05 12:50:44 +01:00
Matthias 455838648d Apply get_available_balance logic to regular trades, too 2020-01-03 10:41:10 +01:00
Matthias 3c7981160c Extract `get_available_stake_amount` 2020-01-03 10:14:23 +01:00
Matthias 560aea876e Remove fiat_currency temporary variable 2020-01-02 20:20:29 +01:00
Matthias cba156dfff Add offset calculation for relative stake maximum limit 2020-01-02 13:20:57 +01:00
hroff-1902 a47a25ca88 Refine passing msg params 2020-01-02 14:38:25 +03:00
hroff-1902 88efa4065b Align the name of a variable to be same for buy and sell parts 2020-01-02 13:56:16 +03:00
hroff-1902 f15e5e9d57 Add _notify_buy() 2020-01-02 13:51:25 +03:00
hroff-1902 e89fa44680 Arrange common section for update trade state methods 2020-01-02 11:50:54 +03:00
hroff-1902 21418e2988 Minor: fix comment 2020-01-02 03:16:18 +03:00
hroff-1902 4475110df8 Cosmetics in freqtradebot 2020-01-02 03:07:24 +03:00
Matthias 3327ebf2b1
Merge pull request #2720 from hroff-1902/refactor-create-trades
Refactor create trades
2019-12-31 15:34:12 +01:00
Matthias 26a2395aeb Include Pair name in exception log message 2019-12-31 07:11:09 +01:00
hroff-1902 fd7af587da Rename process_maybe_execute_buys() --> enter_positions() 2019-12-30 22:50:56 +03:00
hroff-1902 84918ad424 Rename process_maybe_execute_sells() --> exit_positions() 2019-12-30 22:08:36 +03:00
hroff-1902 b00406a7eb Make process_maybe_execute_*() returning integers 2019-12-30 21:09:35 +03:00
hroff-1902 4d56e3b36e Address some comments made in the review 2019-12-30 20:54:32 +03:00
Matthias 1ffda29fd2 Adjust improts to new exception location 2019-12-30 15:02:17 +01:00
Matthias 4c9295fe2d Rename Bid-strategy helpervariable to something shorter
avoids unnecessary wrapping...
2019-12-30 14:00:34 +01:00
hroff-1902 04f28ed9bc Refactor try/except: handle DependencyException for each pair separately 2019-12-29 05:03:10 +03:00
hroff-1902 762604300f Refactor create_trades() 2019-12-29 04:37:44 +03:00
hroff-1902 433fd2a7c3
Merge pull request #2652 from freqtrade/safe_sell_amount
Safe sell amount
2019-12-29 00:09:21 +03:00
hroff-1902 5c39ebd0a0 Adjust logging 2019-12-28 13:59:40 +03:00
Matthias 443fd8f7dd Merge branch 'develop' into safe_sell_amount 2019-12-28 09:42:52 +01:00
hroff-1902 d6ca562b03 Make mypy happy and handle hypothetical case when stake_amount == 0 2019-12-28 04:05:03 +03:00
hroff-1902 3dbd83e35a Introduce get_free_open_trades() method 2019-12-28 03:46:42 +03:00
hroff-1902 8eeabd2372 Move warning to create_trades() 2019-12-28 03:22:50 +03:00
hroff-1902 ed9cb4219d Make mypy happy 2019-12-28 02:58:23 +03:00
hroff-1902 ef92fd775c Align behavior: check for available in all cases: edge, unlimited and fixed 2019-12-28 02:53:41 +03:00
hroff-1902 abaeab89aa Make _calculate_unlimited_stake_amount() a separate method 2019-12-28 02:36:32 +03:00
hroff-1902 243bcb2368 Make _check_available_stake_amount() a separate method 2019-12-28 02:25:43 +03:00
hroff-1902 86f2693040 cosmetics 2019-12-28 01:54:12 +03:00
hroff-1902 b6d1c5b17a _get_trade_stake_amount() is not private 2019-12-28 01:44:51 +03:00
hroff-1902 039dfc302c No need to convert pair name 2019-12-28 01:34:31 +03:00
Matthias 6688a2c112 Merge branch 'develop' into doc/pricing_reasons 2019-12-24 06:33:51 +01:00
Matthias c6d2233978 Convert StrategyLoader to static loader 2019-12-23 10:23:48 +01:00
Matthias 560acb7cea Convert ExchangeResolver to static loader class 2019-12-23 10:03:18 +01:00
Matthias 6507a26cc1 Fix some tests after merge 2019-12-18 20:16:53 +01:00
Matthias e72c6a0d94 use only first part of the currency to get wallet-amount (!!) 2019-12-18 20:02:15 +01:00
Matthias 834a0ed620 Merge branch 'develop' into safe_sell_amount 2019-12-18 19:45:31 +01:00
Matthias 21622ac313 Rename get_ticker to fetch_ticker 2019-12-18 16:34:30 +01:00
Matthias a2964afd42 Rename profit_percent to profit_ratio to be consistent 2019-12-17 08:53:30 +01:00
Matthias 861a7834fc Call calc_open_price() whenever necessary 2019-12-17 07:08:36 +01:00
Matthias 5a5741878c Improve dry-run calculations 2019-12-15 10:26:56 +01:00
Matthias f0bbc75038 Combine dry_run wallet into original Wallets class 2019-12-15 09:48:35 +01:00
Matthias fda8f7e305 Introuce WalletDry - supporting dry-run wallets 2019-12-15 09:38:18 +01:00
Matthias 04257d8ecc Add tests for safe_sell_amount 2019-12-13 07:06:54 +01:00
Matthias 5db883906a Try to verify available amount on the exchange 2019-12-13 06:52:33 +01:00
Matthias e4655c9b07 include trade-duration with sell-notification 2019-12-08 14:07:46 +01:00
hroff-1902 a373e48939 Comment added 2019-11-27 14:53:01 +03:00
hroff-1902 17269c88be Fix _get_min_pair_stake_amount() 2019-11-26 11:57:58 +03:00
Matthias a5bd4e329a improve cancel_order handling 2019-11-20 20:36:38 +01:00
Matthias 9aac080414 Fix 'remaining' bug when handling buy timeout 2019-11-20 20:10:41 +01:00
Matthias 09b302abf7
Merge pull request #2442 from freqtrade/volumeList_enhanced_filter
Pairlists enhanced filter options
2019-11-19 20:19:10 +01:00
Matthias 68904296e7 Allow timeout of 0 2019-11-13 19:38:38 +01:00
Matthias 2eb6513251 Improve timedout handling 2019-11-12 15:45:14 +01:00
Matthias 748fe94603 Merge branch 'develop' into volumeList_enhanced_filter 2019-11-09 15:34:47 +01:00
Matthias e632720c02 Allow chaining of pairlists 2019-11-09 06:55:16 +01:00
Matthias c8638ce82f Fix bug where bids_to_ask_delta causes doublebuys
The continue must happen irrespective of the outcome of this - otherwise
the below BUY will happen anyway.
2019-11-05 21:03:06 +01:00
hroff-1902 3149c12a14
Merge pull request #2444 from freqtrade/sql_cleanup
Fix scoped_session and add Documentation for strategy
2019-10-31 23:19:30 +03:00
Matthias 9e988783de Allow configuration of stoploss on exchange limit
fixes #1717
2019-10-30 20:07:26 +01:00
Matthias 01efebc42f Extract query to it's own function 2019-10-30 11:12:49 +01:00
Matthias 20dabd9c41 Merge branch 'develop' into whitelist_docs 2019-10-26 13:36:39 +02:00
Matthias d0521d33ce Refactor whitelist handling
fixes #2413
2019-10-26 11:36:02 +02:00
Matthias 3929ad4e1f Fix typo 2019-10-26 09:21:51 +02:00
Matthias 2f1d9696cd Change keepalive to heartbeat 2019-10-25 20:00:08 +02:00
Matthias 0773a65333 Add I Am Alive Message 2019-10-25 15:01:35 +02:00
Matthias 8201f70a80 Change loglevel of repeated message to debug 2019-10-25 14:19:02 +02:00
hroff-1902 2e1e080022 Fix potential race conditions between RPC and Freqtradebot during initialization 2019-10-24 22:33:44 +03:00
hroff-1902 30eb23e1aa Minor freqtrade cleanup 2019-10-18 23:41:07 +03:00
hroff-1902 9e23ca14d1
Merge pull request #2384 from freqtrade/improve_buy_timeout_handling
Improve buy timeout handling
2019-10-18 22:30:41 +03:00
Matthias c649f9844e Compare >= instead of = 2019-10-18 19:36:04 +02:00
Matthias 9d739f98ac use requested - remaining amount - not the requested amount! 2019-10-18 09:04:05 +02:00
Matthias 271846dfb6 Simplify cancel timedout 2019-10-18 07:01:05 +02:00
Matthias c181fac6c7 fix #2383 2019-10-18 06:48:39 +02:00
Matthias c735d35265 Extract open_trade generation from freqtradebot 2019-10-18 06:48:33 +02:00
Matthias 85c4546333
Merge pull request #2343 from hroff-1902/move-experimental
Move experimental settings to ask_strategy
2019-10-10 16:08:11 +02:00
hroff-1902 9b23376415 Move experimental settings to ask_strategy 2019-10-05 13:29:59 +03:00
hroff-1902 75252b6251 Docstrings improved 2019-10-04 02:32:48 +03:00
hroff-1902 89729aefe8 Fix and improve process_maybe_execute_sells() 2019-10-02 18:47:45 +03:00
hroff-1902 096c69dc4f Refactor Freqtradebot 2019-10-02 13:51:32 +03:00
Matthias 43f2ef226c Change rel_tol to abs_tol to avoid surprises with high priced pairs 2019-09-28 10:30:12 +02:00
Matthias 8d92f8b362 Compare floats via isclose instead of == 2019-09-26 07:18:00 +02:00
hroff-1902 849d694c27 Don't inherit from object 2019-09-12 04:39:52 +03:00
hroff-1902 caec5ac941
Merge pull request #2206 from freqtrade/sloe_handling
Improve stoploss on exchange handling
2019-09-04 10:00:53 +03:00
Matthias aae9c3194f Reenable stoploss_on_exchange for dry-run 2019-09-01 17:48:06 +02:00
Matthias 20c9c93b3e Improve docstring 2019-09-01 10:25:05 +02:00
Matthias 771519e311 Don't show stacktrace in case of invalidorder Error
This is handled gracefully by emergency-selling
2019-09-01 10:19:18 +02:00
Matthias 9d7ebc65e7 Move return statement to correct intend 2019-09-01 09:21:45 +02:00
Matthias 7c0a49a6f9 _notify_sell needs ordertype seperately 2019-09-01 09:17:58 +02:00
Matthias 292df115e8 Support selling via emergencysell 2019-09-01 09:09:07 +02:00
Matthias 9f53e9f5dd Raise InvalidOrder error when stoploss-creation fails 2019-09-01 09:08:35 +02:00
Matthias 7fc156648a simplify stoploss_oe code 2019-08-31 16:15:39 +02:00
Matthias f0c0f5618b Abstract creating stoploss-orders from stoploss-logic 2019-08-31 16:11:04 +02:00
Matthias 513e84880e Don't escape ticks where it's not needed 2019-08-25 20:38:51 +02:00
Matthias 3f6eeda3f0 Reset stoploss_order_id when recreating fails 2019-08-24 18:06:14 +02:00
Matthias b6462cd51f Add explaining comment 2019-08-18 16:22:18 +02:00
Matthias ddfadbb69e Validate configuration consistency after loading strategy 2019-08-18 16:10:10 +02:00
Matthias 14c4854987 Merge branch 'develop' into lock_pairs 2019-08-15 06:56:39 +02:00
Matthias 9f26c4ebdc Merge branch 'develop' into fix/sell_order_hanging 2019-08-15 06:46:12 +02:00
Matthias a4ab42560f improve docstring for create_trades 2019-08-14 06:16:59 +02:00
Matthias a76136c010 Rename create_trade to create_trades 2019-08-14 06:16:43 +02:00
Matthias 6948e0ba84 Handle orderbook_depth check correctly 2019-08-13 10:12:02 +02:00
Matthias 997eb7574a Support creating multiple trades in one iteration 2019-08-13 10:01:29 +02:00
Matthias 8873e0072c process_maybe_execute_buy does not need to return bool 2019-08-13 09:42:22 +02:00
Matthias 4b8eaaf7aa freqtradebot.process() does not need to return anything 2019-08-13 09:37:56 +02:00
Matthias 28e318b646 Lock pairs for stoploss_on_exchange fills too 2019-08-13 08:47:11 +02:00
Matthias 59acd5ec7c Lock pair for the rest of the candle in case of sells 2019-08-12 20:39:34 +02:00
Matthias 241d510096 Handle and update sell-orders immediately if they are closed 2019-08-12 16:34:55 +02:00
Matthias 4b4fcc7034 Change stoploss_on_exchange in freqtradebot 2019-08-11 19:43:57 +02:00
Matthias 05b1854946 Gracefully handle InvalidOrderException. 2019-07-25 19:56:59 +02:00
hroff-1902 21bf01a24c partial freqtradebot cleanup 2019-06-27 22:29:17 +03:00
Matthias f8dd0b0cb3 Use parenteses instead of \ seperators 2019-06-27 06:32:26 +02:00