Commit Graph

1360 Commits

Author SHA1 Message Date
Matthias 4efe2e9bc4 use FtPrecise to convert to contracts and back 2022-09-24 14:55:58 +02:00
Matthias 08e183fb55 Add note about okx trading mode 2022-09-21 20:59:12 +02:00
Matthias 4a0a0c307c Use json_load to load leverage tiers 2022-09-19 07:23:26 +02:00
Matthias 667853c504 Use Alias to type config objects 2022-09-18 13:20:55 +02:00
Matthias ca6dec3d4c Binance spot also allows market orders
closes #7426
2022-09-17 17:11:00 +02:00
Matthias 8639c1f23d Reduce complexity in binance stoploss handling 2022-09-17 17:11:00 +02:00
Matthias 4182a7891a Allow leverage tier cache to be 4 weeks old.
we've seen from binance that it's not changing this often.
2022-09-17 10:41:48 +02:00
Matthias 6682ae35b3 Update cached binance_leverage_tiers 2022-09-17 10:37:47 +02:00
Matthias 939fb7acb3 Fix enum imports 2022-09-09 20:31:30 +02:00
Matthias 39b6cadd14 Test keyerror case for funding_Fee calculation 2022-09-08 07:24:57 +02:00
Matthias 4e15611b05 Don't crash in case of funding fee fetch error 2022-09-08 07:18:38 +02:00
Matthias f8e7ed5d7d Reduce shutdown verbosity of exchange 2022-09-07 19:28:42 +02:00
Matthias 95a33ab2e6 Add amount_to_contract helper in the exchange 2022-09-07 06:34:03 +02:00
Matthias f3c73189d5 Remove pointless default on wallet_balance argument 2022-09-01 06:49:51 +02:00
Matthias 27a9f98d5f Simplify liquidation price structure, improve test cov 2022-08-29 07:04:48 +02:00
Matthias 226fa5d93c Simplify liquidation price calling structure 2022-08-29 07:04:48 +02:00
Matthias c61b986c3d FTX - support time_in_force (and PO ordertype)
closes #7175
2022-08-27 10:30:38 +02:00
Matthias 104a73025d Uppercase TimeInForce (align with ccxt) 2022-08-27 10:30:06 +02:00
Matthias 01126c43f7 Fix liquidation price tier calculation
closes #7294
2022-08-26 20:14:24 +02:00
Matthias 753d1b2aad Update leverage tier terminology to be clear and aligned with ccxt 2022-08-26 19:34:51 +02:00
Matthias 6636f17e0f Simplify usage of amount_to_contract precision 2022-08-25 07:08:22 +02:00
Matthias fe7108ae75 Convert amount to contracts before comparing for close
closes #7279
2022-08-23 06:37:38 +02:00
Matthias 6036018f35 Extract contracts_to_amount and amount_to_contracts to standalone functions 2022-08-23 06:37:38 +02:00
Matthias 5f38a574ce Add okx broker id 2022-08-23 06:37:38 +02:00
Matthias 015be770c3 ccxt now defaults to base volume for all markets 2022-08-22 06:42:14 +02:00
Matthias f6d832c6d9 Add get_option to expose ft_has via method 2022-08-21 17:51:46 +02:00
Matthias 738e95b875 Add tests for leverage tiers caching 2022-08-20 13:54:54 +02:00
Matthias b6e8b9df35 Use cached leverage tiers 2022-08-20 13:01:58 +02:00
Matthias 52ec0d1046 Update binance Leverage tiers 2022-08-20 11:53:15 +02:00
Matthias 85b43ec1a1 Remove double-check for "isolated margin" 2022-08-18 15:23:58 +02:00
Matthias fde469a253 Remove unnecessary check 2022-08-18 14:53:44 +02:00
Matthias 075e9b8526 Log Exchange responses for set_leverage 2022-08-18 09:52:03 +02:00
Matthias 3983368228 gateio futures is showing base currency in volume! 2022-08-17 14:51:48 +02:00
Matthias 83ca168bb8
Merge pull request #7216 from freqtrade/precise_calcs
Precise calcs
2022-08-17 14:32:02 +02:00
Matthias c615e1bc62 Avoid loop error during ccxt tests 2022-08-17 14:31:40 +02:00
Matthias 0b0e7eaf96 Mutex TTL Cache accesses which can be accessed by multiple threads
Apparently, cachetools is (intentionally) not threadsafe
when using the Caches directly.
It's therefore recommended to wrap these with an explicit lock to avoid
problems.

source: https://github.com/tkem/cachetools/issues/245

closes #7215
2022-08-16 19:48:21 +02:00
Matthias a1e4fbf313 Run price_to_precision for dry-run orders 2022-08-16 17:23:49 +02:00
Matthias 711b6b1a1a Merge branch 'develop' into precise_calcs 2022-08-16 09:29:39 +02:00
Matthias a5b438e41e Run price_to_precision for dry-run orders 2022-08-16 09:28:23 +02:00
Matthias e818797427 Minor fix in amount_to_precision logic 2022-08-15 20:29:05 +02:00
Matthias c0bdb71810 Update docstring 2022-08-15 20:06:29 +02:00
Matthias f2b6ff910f Accept wrong pair in get_precision_amount 2022-08-15 20:05:22 +02:00
Matthias e6af9a6903 Allow empty precisionMode on conversions 2022-08-15 20:00:15 +02:00
Matthias 22241c55d5 Add methods to get precision_amount from markets 2022-08-15 19:56:25 +02:00
Matthias 15e85797c2 Simplify to_precision tests and imports 2022-08-15 08:51:15 +02:00
Matthias 6c32331740 Move precision calculations to standalone functions 2022-08-15 08:43:58 +02:00
Matthias ed004236ce Add float initializer to FtPrecise 2022-08-10 11:54:07 +00:00
Matthias e7cb1b7375 Wrap Precise into FtPecise 2022-08-10 11:26:06 +00:00
Matthias 573964b19f Dry Market orders should update "remaining" 2022-08-10 07:12:56 +02:00
Matthias b5c5a95b64 FTX: Use conditionalOrders endpoint to get proper stop-market order id
closes #7165
2022-08-09 20:09:35 +02:00
Kavinkumar a4bada3ebe
Partial exit using average price (#6545)
Introduce Partial exits
2022-07-31 14:19:04 +02:00
Matthias bad15f077c Simplify fetch_positions by using already existing method 2022-07-30 17:49:06 +02:00
Matthias 4c68bec171 Fix problem in `is_cancel_order_result_suitable`
fixes #7119
2022-07-25 17:47:52 +02:00
Matthias 2eb1d18c2a Don't load leverage tiers when not necessary 2022-07-23 19:56:38 +02:00
Matthias 423af371c0 Simplify calculation by calling "get_fee" only once 2022-07-16 17:59:05 +02:00
Matthias 4172f92bfc simplify dry-run taker/maker selection 2022-07-16 17:25:13 +02:00
Matthias 8b2535a8da Update Typing for fees 2022-07-16 15:42:17 +02:00
Matthias 8d2e22f009 Merge branch 'develop' into pr/samgermain/6780 2022-07-16 15:35:00 +02:00
Matthias 004bf31142
Merge pull request #7093 from freqtrade/fix/gate_futures_stoposs
gateio futures - several fixes
2022-07-16 15:18:32 +02:00
Matthias 357000c478 Extract exchange validation to separate method 2022-07-16 13:45:26 +02:00
Matthias d03dfb3934 Oder cost is real cost (including leverage) 2022-07-16 13:14:21 +02:00
Matthias ed64e4299b Stoploss orders should also be eligible to update closed fees 2022-07-16 13:14:21 +02:00
Matthias 415780a4fe gateio order cost is not in contracts
closes #7081
2022-07-16 13:14:21 +02:00
Matthias 7b8a5585dd Fetch 2ndary stoploss order once the order triggered. 2022-07-16 13:14:21 +02:00
Matthias 7c4dd4c48c Support fee cost as string
closes #7056
2022-07-16 13:14:21 +02:00
Matthias 5c164efdb6 Also check for createLimitOrder as optionals 2022-07-11 16:09:12 +02:00
Matthias 6ac1aa15f5 Reenable ccxt order checks 2022-07-11 10:36:19 +02:00
Matthias 523d8a84a8 skip "supports market order" for now until CCXT fixes their assignemnt bugs. 2022-07-11 10:22:51 +02:00
Matthias 9313a2d294 Update leverage tiers to latest version 2022-07-10 10:11:39 +02:00
Matthias c98e7ea055 Revert allowing empty currency for futures 2022-07-09 08:57:15 +02:00
Matthias b7167ec880 Fix wrong fee calclulation for gateio futures 2022-07-09 08:51:59 +02:00
Matthias 5b733a723d use "fees" for trades responses 2022-07-09 08:51:28 +02:00
Matthias 81f7d77d74 Allow fee currency to be empty for futures 2022-07-09 08:51:28 +02:00
Matthias 2499276fca Refactor calculate_fee_rate to take separate parameters instead of an "Order"
we passed in a trade object anyway
2022-07-09 08:51:28 +02:00
Matthias b39508f64d remove loadMarkets from "required" section,
it's now implied that all ccxt exchanges provide this method.
2022-07-07 19:44:54 +02:00
Matthias dbc3376fe9 Add alias for gate to gateio 2022-07-06 07:12:13 +02:00
Matthias 2b07d34611 Revert several undesired changes 2022-06-23 20:47:51 +02:00
Matthias 8bf0bf10c5 Merge branch 'develop' into pr/SmartManoj/6859 2022-06-23 20:43:35 +02:00
Matthias 53e5483daa Store StopPrice for dry-run orders
closes #6996
2022-06-22 06:31:51 +02:00
Matthias 3a0f31fe89
Merge pull request #6914 from freqtrade/leverage_tiers_async
Leverage tiers async
2022-06-21 10:18:40 +02:00
Matthias 616bf315cb gateio: futures market orders require IOC to be set. 2022-06-17 23:02:39 +02:00
Matthias fda8248d41 Gateio allow market orders on futures markets 2022-06-17 22:43:24 +02:00
Matthias 8f32fa5cb3 Avoid exception on exchange recycling if __init__ fails 2022-06-15 20:13:07 +02:00
Matthias cce8d1aa4d Update get_market_leverage_tiers to be async 2022-05-31 08:48:34 +00:00
Matthias a875a7dc40 Use unified stopPrice for binance 2022-05-29 11:01:01 +02:00
Matthias 24cf044646 Fix bybit spot mode 2022-05-27 08:18:04 +00:00
Matthias 682daa4e94 Reset logging mixin to avoid random test failure 2022-05-26 18:05:40 +02:00
Matthias b2968df5dc Fix some type problems 2022-05-25 10:13:37 +00:00
Matthias 904f094b80 Don't reassign method, but implement it properly 2022-05-24 06:59:54 +02:00
Matthias 3f68c3b68e Update some types 2022-05-24 06:54:16 +02:00
Matthias 07ec3b27fe Add typing information to retrier decorator 2022-05-24 06:54:16 +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
Matthias 1ff1e3b43d
Merge pull request #6869 from freqtrade/update_levtiers
Update leveraged tiers
2022-05-22 08:35:02 +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
Matthias c3e3188c6a Rename variable 2022-05-20 11:30:25 +02:00
Matthias 0a95ef6ab2 Don't reset open orders in dry-run on restart 2022-05-19 06:42:38 +02: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
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
Matthias 706994340f Fix bad docstring 2022-05-15 17:06:40 +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 5767d652bf Add explicit test and document behavior 2022-05-14 14:18:51 +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
Matthias c299601ece Add warning about OKX futures backtesting data 2022-05-13 07:03:18 +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
Sam Germain e8803477df exchange/exchange add param taker_or_maker to add_dry_order_fee 2022-05-03 23:56:40 -06:00
Matthias eb996a152a Fix fee handling for futures trades 2022-05-03 19:06:17 +02:00
Matthias 11d447cd5a Add support for download-data "until" 2022-04-30 15:42:41 +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 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 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
Sam Germain 591a2fb7fc switch notionalFloor -> minNotional and notionalCap -> maxNotional 2022-04-16 21:47:44 -06:00
kokimame d23d830346 Avoid ignoring the case precision amount = 0 2022-04-15 00:35:11 +09:00
Matthias baefda80d1 Enable flake8 E226 rule 2022-04-11 18:02:06 +02:00
Matthias 8e98a2ff9f api - provide assset_currency via API 2022-04-09 16:42:18 +02:00
Matthias 33841da382 Slightly imporve Typing by reusing long/short type 2022-04-04 16:51:57 +02:00
Matthias 39d925c295 Change to precise casing instead of .lower() 2022-04-02 19:48:01 +02:00
மனோஜ்குமார் பழனிச்சாமி 40b4a9977e
checking exchange name with lower 2022-04-02 11:23:06 +05:30
Matthias 2d914c8e13 Simplify formatting in exchange class 2022-03-30 20:02:56 +02:00
Matthias dafc2bf361 Merge branch 'develop' into feat/short 2022-03-30 07:09:41 +02:00
Jason Risch 6b57be35e9
Update kucoin candle limit 2022-03-29 07:23:45 -07:00
Matthias 2d740230f7 price_last_balance renaming 2022-03-28 19:53:55 +02:00
Matthias d7c6520268 Update remaining tests 2022-03-28 19:30:14 +02:00
Matthias 440967e483 Update some tests 2022-03-28 19:17:22 +02:00
Matthias f70166270d Update pricing to use entry/exit pricing 2022-03-28 07:07:46 +02:00
Matthias bcf326a035 Initial steps to change bid/ask pricing to enter/exit 2022-03-27 18:03:49 +02:00
Matthias d244391860 no need to "abs" cost will be fixed in ccxt 2022-03-26 19:06:37 +01:00
Matthias f509959bd4 Update 2022-03-26 16:26:31 +01:00
Matthias f5578aba48 Update trading_fee naming 2022-03-26 15:16:04 +01:00
Matthias 9a8c24ddf3 Update gateio to patch fees 2022-03-26 15:04:17 +01:00
Matthias 33229c91cb Add fetch_trading_fees endpoint 2022-03-26 13:53:36 +01:00
Matthias 78fe29cc2d
Merge pull request #6588 from samgermain/contracts
Add amount_to_contracts and order_contracts_to_amount to exchange.stoploss
2022-03-25 19:18:01 +01:00
Matthias 46f4227329 Check if symbol is not None 2022-03-25 18:11:02 +01:00
Matthias f8e87e45a5
Merge pull request #6576 from samgermain/funding-tests
funding_fee tests
2022-03-25 15:11:45 +01:00