Commit Graph

754 Commits

Author SHA1 Message Date
Sam Germain
e070bdd161 set leverage more thorough tests 2021-09-12 03:09:51 -06:00
Sam Germain
ad44048e29 customized set_leverage for different exchanges 2021-09-12 02:42:13 -06:00
Sam Germain
bc102d57c9 Updated set leverage to check trading mode 2021-09-12 02:09:31 -06:00
Sam Germain
0c1e5afc91 Added set leverage to create_order 2021-09-12 02:02:10 -06:00
Sam Germain
1344c9f7fc _apply_leverage_to_min_stake_amount 2021-09-12 01:31:15 -06:00
Matthias
a5f90a409c Small updates to async_history_fetch 2021-09-11 08:18:32 +02:00
Sam Germain
8e83cb4d64 temp commit message 2021-09-10 16:28:34 -06:00
Sam Germain
b0e05b92d3 Added minor changes from lev-exchange review 2021-09-10 13:39:42 -06:00
Matthias
8c9159f596 Improve comments 2021-09-10 19:46:38 +02:00
Matthias
a19c33ba54 Don't blindly create coroutines, but fire them off in batches 2021-09-10 19:37:07 +02:00
Sam Germain
77aa372909 Fixed test_ftx patch 2021-09-10 02:09:27 -06:00
Sam Germain
2c7cf794f5 Test for short exchange.stoploss exchange.stoploss_adjust 2021-09-09 15:47:49 -06:00
Sam Germain
9f96b977f6 removed interest method from exchange, will create a separate interest PR 2021-09-09 15:47:49 -06:00
Sam Germain
93da13212c test_fill_leverage_brackets_kraken and test_get_max_leverage_binance now pass but test_fill_leverage_brackets_ftx does not if called after test_get_max_leverage_binance 2021-09-09 15:47:49 -06:00
Sam Germain
9e73d02663 Added validating checks for trading_mode and collateral on each exchange 2021-09-09 15:47:49 -06:00
Sam Germain
619ecc9728 Added exceptions to exchange.interest_rate 2021-09-09 15:47:49 -06:00
Sam Germain
97d1306e34 Added retrier to exchange functions and reduced failing tests down to 2 2021-09-09 15:47:49 -06:00
Sam Germain
8d74233aa5 ftx.fill_leverage_brackets test 2021-09-09 15:47:49 -06:00
Sam Germain
8264cc546d Wrote dummy tests for exchange.get_interest_rate 2021-09-09 15:47:49 -06:00
Sam Germain
5708fee0e6 Wrote failing tests for exchange.set_leverage and exchange.set_margin_mode 2021-09-09 15:47:49 -06:00
Sam Germain
e6c9b8ffe5 completed set_margin_mode 2021-09-09 15:47:49 -06:00
Sam Germain
39fe381473 set margin mode exchange function 2021-09-09 15:47:49 -06:00
Sam Germain
4ef1f0a977 Changed ftx set_leverage implementation 2021-09-09 15:47:49 -06:00
Sam Germain
c256dc3745 Removed some outdated TODOs and whitespace 2021-09-09 15:47:49 -06:00
Sam Germain
134a7ec59b Implemented fill_leverage_brackets get_max_leverage and set_leverage for binance, kraken and ftx. Wrote tests test_apply_leverage_to_stake_amount and test_get_max_leverage 2021-09-09 15:47:49 -06:00
Sam Germain
455bcf5389 Added TODOs to test files 2021-09-09 15:47:49 -06:00
Sam Germain
add7e74632 Added set_leverage function to exchange 2021-09-09 15:47:49 -06:00
Sam Germain
d262af35ca Removed setup leverage and transfer functions from exchange 2021-09-09 15:47:49 -06:00
Sam Germain
f4e26a616f Exchange stoploss function takes side 2021-09-09 15:47:49 -06:00
Sam Germain
ebf5310817 Added get_interest template method in exchange 2021-09-09 15:47:48 -06:00
Sam Germain
54dd9ce7ad Add prep functions to exchange 2021-09-09 15:47:48 -06:00
Sam Germain
dfb9937436 Added tests and docstring to exchange funding_fee methods, removed utils 2021-09-09 01:43:55 -06:00
Sam Germain
d54117990b Added funding_fee method headers to exchange, and implemented some of the methods 2021-09-09 01:19:34 -06:00
Sam Germain
36b8c87fb6 Added funding fee calculation methods to exchange classes 2021-09-08 19:31:04 -06:00
Sam Germain
cdefd15b28 separated hours_to_time to utils folder 2021-09-08 14:54:48 -06:00
Sam Germain
2f4b566d99 reverted back exchange.get_funding_fees method 2021-09-08 13:46:52 -06:00
Sam Germain
af4a6effb7 added pair to fetch_funding_rate 2021-09-08 13:44:59 -06:00
Sam Germain
baaf516aa6 Added funding_times property to exchange 2021-09-08 13:44:42 -06:00
Matthias
8c83c258a5 Move "first-pair_getting" to binance subclass 2021-09-07 19:32:32 +02:00
Matthias
71ff214adf Support "initial_call" for download-data of new pairs 2021-09-07 07:14:40 +02:00
Sam Germain
f5248be043 Changed funding fee tracking method, need to get funding_rate and open prices at multiple candles 2021-09-06 15:47:24 -06:00
Sam Germain
92e630eb69 Added get_funding_fees method to exchange 2021-09-04 16:40:53 -06:00
Sam Germain
b854350e8d Changed funding fee implementation 2021-09-04 16:31:09 -06:00
Sam Germain
194bb24a55 Miscellaneous funding fee changes. Abandoning for a new method of tracking funding fee 2021-09-04 16:20:25 -06:00
Matthias
19ad165483 Add time_in_force for kucoin 2021-09-03 08:48:53 +02:00
Matthias
93c1dff71b Allow adding new additional headers 2021-09-02 21:02:45 +02:00
Matthias
1895230afe Clarify exception on load when markets could not be loaded
closes #5498
2021-08-29 09:18:46 +02:00
Matthias
ef9c1addcf Add expired to list of canceled statuses 2021-08-27 19:54:53 +02:00
Matthias
8a9407bac9 Don't hard-fail when fetch_ticker doesn't return a value
closes #5477
2021-08-25 07:13:59 +02:00
Matthias
9758bed250 Fix refresh_latest_ohlcv bug 2021-08-17 06:44:36 +02:00
slowy07
f24a951ec5 fix: typo spelling grammar 2021-08-16 19:16:24 +07:00
Matthias
61c076563f Add max-slippage limiting for dry-run orders to avoid insane market order fills 2021-08-11 12:11:29 +02:00
Matthias
d8d8261f1b
Merge pull request #5318 from samgermain/combined_exchange_buy_sell
combined exchange.buy and exchange.sell
2021-08-02 20:11:09 +02:00
Matthias
8768df647a
Merge pull request #5312 from raph92/patch-3
Fix code to get Bittrex US-restricted markets
2021-07-29 07:13:42 +02:00
Matthias
cf4d1875dd Use prohibitedIn instead of isRestricted 2021-07-29 06:56:37 +02:00
Sam Germain
25c527ee67 combined exchange.buy and exchange.sell, Adding dummy mock to create_order in tests in test_freqtradebot 2021-07-28 14:55:06 -06:00
Sam Germain
05f74bdf53 Changed log ouput to debug in exchange.get_rate 2021-07-25 16:13:04 -06:00
Sam Germain
b42afb9dae get_rate checks if side is buy for some console output 2021-07-24 17:14:54 -06:00
Sam Germain
b0bfbb6558 removed buy and sell merge, updated strategy name, removed default side for get_rate 2021-07-19 11:37:52 -06:00
Sam Germain
44df5eeacf Adjusted docstring, and conditional near end of buy_rate 2021-07-18 00:00:18 -06:00
Sam Germain
7c27525bd8 Merge get_buy_rate and get_sell_rate 2021-07-17 22:51:20 -06:00
Matthias
10998eb0fa Remove further usages of int(int_timestamp) 2021-07-05 19:51:14 +02:00
Matthias
00a7097b9e Reduce verbosity of getting sell-rate from orderbook 2021-06-26 20:09:52 +02:00
Matthias
60c7308126
Merge pull request #5183 from freqtrade/remove_order_book_max
Remove order book max
2021-06-26 14:56:10 +02:00
Matthias
59a33d0fa9 Add test for ask_orderbook validation 2021-06-25 20:52:34 +02:00
Matthias
d59a38665c Remove support for order_book_max 2021-06-25 20:36:39 +02:00
aayush-jain18
d294ef10d7 unexpected docstring params 2021-06-25 23:56:16 +05:30
Matthias
1440b2f7fe
Merge pull request #5178 from aayush-jain18/spell-correction
spell corrections
2021-06-25 19:10:39 +02:00
aayush-jain18
a46f60bd94 spell corrections 2021-06-25 22:10:04 +05:30
Matthias
40545e62af
Merge pull request #5082 from freqtrade/dry_run_order
Dry run order filling
2021-06-25 18:26:01 +02:00
Matthias
39b876e37a Log exchange responses if configured 2021-06-19 09:07:42 +02:00
Matthias
c389d44e9a Improve filling logic 2021-06-05 15:22:52 +02:00
Matthias
db03a24109 Add tests for fill methods 2021-06-05 09:09:39 +02:00
Matthias
1e988c97ad Update dry-run order handling to use realistic fill prices
closes #3389
2021-06-05 09:09:39 +02:00
Matthias
bd1984386e Move get_sell_rate to exchange class 2021-06-02 11:41:13 +02:00
Matthias
12916243ec Move get_buy_rate to exchange class 2021-06-02 11:30:19 +02:00
Matthias
4e1425023e Further reorder exchange methods 2021-06-02 11:20:26 +02:00
Matthias
4c277b3039 Reorder exchange methods 2021-06-02 11:18:13 +02:00
Matthias
67beda6c92 Add fetch_dry_run_order method 2021-06-02 11:06:32 +02:00
Matthias
c9ac67e985 Fix some typos 2021-05-16 14:50:25 +02:00
Matthias
6f38976470 Introduce cancel_stoploss_with_result 2021-05-16 14:15:24 +02:00
Matthias
0b1dd0d203 Use correct order_id for ftx
closes #4511
2021-05-16 09:15:25 +02:00
Matthias
0e359dcb7a
Merge pull request #4788 from saeedrss/develop
fetch live data from hitbtc exchange #4778
2021-05-01 19:13:00 +02:00
Matthias
0b280a59bc Support per exchange params for OHLCV endpoint 2021-05-01 17:29:53 +02:00
Matthias
63c28b6519 Remove obsolete get_balance method 2021-04-28 16:00:12 +02:00
Matthias
cb86c90d3e Remove obsolete TODO's 2021-04-24 19:16:54 +02:00
saeedrss
b69a9134f5 fixing support for HitBTC #4778
hitbtc by default send candle from beginning (not most recently)
this change fixed
2021-04-23 21:27:13 +04:30
grillzoo
5e51ba6258 fix flake8 2021-04-15 21:38:00 +01:00
Théo Martin
fa343b0484
Fix get_min_pair_stake_amount formula 2021-04-15 01:19:30 +01:00
Matthias
ba38e398e4 Add type hint 2021-04-13 22:17:42 +02:00
Matthias
c2f35ce416 /balance should use cached tickers when possible 2021-04-13 20:21:03 +02:00
Matthias
e4bb6b1582 Add kucoin exchange subclass
Kucoin has some specific orderbook restrictions

closes #4723
2021-04-13 12:28:07 +02:00
Matthias
14e8574235 fetch_balance is never called in dry-run 2021-04-10 14:17:43 +02:00
Matthias
37c2e037f1 Rename dry_run_order to create_dry_run_order 2021-04-10 13:50:56 +02:00
Matthias
a3b4667f7c Update exchange validation to use "validate_exchange". 2021-04-06 20:16:29 +02:00
Matthias
0550f261f1 Add exchange_has validation 2021-04-06 07:47:44 +02:00
shubhendra
f47dc31786 Refactor the comparison involving not
Signed-off-by: shubhendra <withshubh@gmail.com>
2021-04-02 16:57:44 +05:30
shubhendra
6d6ad035d6
Remove length check in favour of truthiness of the object
Signed-off-by: shubhendra <withshubh@gmail.com>
2021-03-21 17:14:46 +05:30
Matthias
73876b61b4 Show potential errors when loading markets 2021-03-20 13:34:33 +01:00
Matthias
7ffe1fd36a Fix calculation error for min-trade-stake 2021-03-20 07:21:22 +01:00
Matthias
0b35c0571f Allow custom fee to be used during dry-run
closes #3696
2021-03-14 19:37:57 +01:00
Matthias
441d3fad39
Merge pull request #4513 from freqtrade/fix/4511
Fix stoploss order problem with FTX
2021-03-11 19:39:44 +01:00
Matthias
99583bbd0c Fix problem with FTX
where cancelled orders are "cancelled", not "canceled"
2021-03-09 20:21:08 +01:00
Matthias
b5177eadab Extract close method for exchange 2021-02-27 09:32:59 +01:00
Matthias
ee74bc1f52 timeframe is mandatory, no need to use .get() 2021-02-14 11:01:12 +01:00
Matthias
5622bb3247 Make candle_limit optionally timeframe dependent 2021-02-14 10:29:45 +01:00
Matthias
7ecf8f8b80 Cleanup candle_limit usage 2021-02-14 10:08:05 +01:00
Matthias
6f77ec063e Fix cookieError on python<3.8
Only occurs in combination with api-server enabled,
due to some hot-fixing starlette does.
Since we load starlette at a later point, we need to replicate
starlette's behaviour for now, so sameSite cookies don't create a
problem.

closes #4356
2021-02-14 07:22:08 +01:00
Matthias
cfd0bb8964 Extract min stake amount from bot to exchange class 2021-02-02 19:47:21 +01:00
Matthias
5cdd9dd445 Cache markets in the exchange object 2021-01-28 19:47:32 +01:00
nas-
f72d53351c Added ability to keep invalid pairs while expanding expand_pairlist 2021-01-15 06:37:57 +01:00
nas-
4d7ffa8c81 Added suppoort for regex in whitelist 2021-01-12 01:13:58 +01:00
Matthias
bf182dc01e Fix wrong key usage in trade_history_timebased 2021-01-07 20:03:34 +01:00
Matthias
704cf14383 Add expand_pairlist method 2020-12-30 09:55:44 +01:00
Matthias
7d2395ddb7 Add limit parameter to fetch_ohlcv 2020-12-20 19:33:04 +01:00
Matthias
d1fda28d2e Fix typehints 2020-12-15 20:59:58 +01:00
Matthias
39fec25ae0 add optional Cache arguments to refresh_pairs method 2020-12-15 09:23:27 +01:00
Matthias
657b002a81 Explicitly check for False in fetch_ticker 2020-12-13 10:59:29 +01:00
Matthias
1d56c87a34 Fully support kraken limit stoploss 2020-11-25 21:40:39 +01:00
Matthias
0d349cb355 Small finetuning 2020-11-25 15:14:36 +01:00
Matthias
fb86d8f8ff Add get_historic_ohlcv_as_df to support VolatilityFilter 2020-11-21 15:28:50 +01:00
Matthias
fa0fcfb492
Merge pull request #3939 from drdux/historic-pair
Historic pair
2020-11-19 19:46:08 +01:00
Matthias
08b52926c8 Catch asyncio.TimeoutError when reloading async markets 2020-11-13 10:43:48 +01:00
Daniel Goller
2d6bfe1592 only skip pair validation rather than all of it 2020-11-12 11:32:45 +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
Matthias
887d78171c
Merge pull request #3857 from freqtrade/arrow_deprecation_timestamp
Convert timestamp to int_timestamp for all arrow occurances
2020-11-02 16:40:43 +01:00
Matthias
b8c12f6576 Test if return value is an exception when downloading historic data 2020-10-23 07:50:40 +02:00
Matthias
7a092271c5 Merge branch 'develop' into arrow_deprecation_timestamp 2020-10-20 20:01:54 +02:00
Matthias
07da21e633 Fix problem when limit is > max allowed limit 2020-10-13 20:38:02 +02:00
Matthias
8165cc11df Change get_next_limit_in_list to use list comprehension 2020-10-13 20:30:35 +02:00
Matthias
077374ac42 Implement generic solution for l2 limited limit 2020-10-13 20:02:47 +02:00
Matthias
ecddaa663b Convert timestamp to int_timestamp for all arrow occurances 2020-10-13 06:24:01 +02:00
Matthias
253b7b763e Apply isort to freqtrade codebase 2020-09-28 19:40:46 +02:00
Matthias
5fba446e9a Merge branch 'develop' into db_keep_orders 2020-09-06 15:22:13 +02:00
Matthias
d6d3a02a23 Merge branch 'develop' into db_keep_orders 2020-09-01 07:51:16 +02:00
Matthias
d161b94d72 Allow simulating cancelled orders in dry-run 2020-08-26 21:22:36 +02:00
Matthias
309ea1246a Update config to use single quotes 2020-08-26 20:52:09 +02:00
Matthias
4ecb67d1d1 Merge branch 'develop' into db_keep_orders 2020-08-23 10:36:56 +02:00
Matthias
674b510d23 Parametrize fetch_order retry counts 2020-08-22 17:35:42 +02:00
Matthias
f2b390a271 Add fetch_order_or_stoploss wrapper 2020-08-22 09:28:36 +02:00
Matthias
89b9a8cb1f
Merge pull request #3396 from freqtrade/fix/broken_getpairs
Use dict for symbol_is_pair
2020-08-15 08:58:53 +02:00
Matthias
22af82631a Introduce InsufficientFundsError exception 2020-08-14 09:57:13 +02:00
Matthias
0af9e913d4 Timestamps are in ms 2020-08-14 09:52:46 +02:00
Matthias
396e781bf4 Update orders 2020-08-14 09:52:46 +02:00
Matthias
171a52b21a Introduce Order database model 2020-08-14 09:52:46 +02:00
Matthias
22f6e884ed
Merge pull request #3676 from freqtrade/stoploss_remove_unused_argument
[minor] Cleanup and exception hierarchy documentation
2020-08-14 07:11:56 +02:00
Matthias
c6741ea6c3 Merge branch 'develop' into fix/broken_getpairs 2020-08-12 20:13:06 +02:00
Matthias
9999d0ffb5 Merge branch 'develop' into fix/3579 2020-08-12 15:28:51 +02:00
Matthias
6dfa159a91 Small comment adjustments in exchange class 2020-08-12 14:11:19 +02:00
Matthias
064928a0eb Merge branch 'develop' into improve_cancel_order_handling 2020-08-11 15:25:47 +02:00
Matthias
a3688b159f Improve formatting 2020-08-03 19:28:57 +02:00
Matthias
a33346c6b6 Fix testing errors - which surfaced with pytest 6.0.1 2020-08-03 19:22:07 +02:00
Matthias
3915101d2d Add more backoff to fetch_order endpoint 2020-08-02 10:32:17 +02:00
Matthias
6c77feee85 Improve some exchange logs 2020-08-02 10:18:19 +02:00
Matthias
071e82043a Better handle cancelled buy orders 2020-08-01 15:59:50 +02:00
Matthias
4774896169 Evaluate average before price in order returns 2020-07-20 19:39:12 +02:00
hroff-1902
b7c6f868b2
Merge pull request #3478 from hroff-1902/exchange-cosmetics-5
Minor: Exchange cosmetics
2020-07-20 18:58:46 +03:00
Matthias
de46744aa9 Use filled before amount for order data
closes #3579
2020-07-15 21:08:16 +02:00
Matthias
d13cb4c055 Introduce safe_value_fallback_2 2020-07-15 19:50:09 +02:00
Matthias
5cebc9f39d Move stoploss_on_exchange_limit_ratio to configuration schema 2020-07-15 19:28:40 +02:00
Matthias
6ee6e51ab4 Merge branch 'develop' into pr/hroff-1902/3478 2020-07-13 07:22:43 +02:00
gambcl
2e45859aef Added range checks to min_days_listed in AgeFilter 2020-07-08 18:06:30 +01:00
Matthias
c6124180fe Fix bug when fetching orders fails 2020-06-28 19:45:42 +02:00
Matthias
cbcbb4bdb5 Rename get_stoploss_order to fetch_stoploss_order (align with fetch_order) 2020-06-28 16:30:24 +02:00
Matthias
92c70fb903 Rename get_order to fetch_order (to align to ccxt naming) 2020-06-28 16:27:35 +02:00
Matthias
bf61bc9d83 Introduce ExchangeError 2020-06-28 16:01:40 +02:00
Matthias
2c45114a64 Implement DDos backoff (1s) 2020-06-28 11:17:06 +02:00
Matthias
f976905728 Fix more exchange message typos 2020-06-18 20:00:18 +02:00
Matthias
45ffb26910 Merge branch 'develop' into pr/hroff-1902/3478 2020-06-18 19:54:46 +02:00
Matthias
d4fb5af456 Also reload async markets
fixes #2876 - Logs and Empty ticker history  for new pair
2020-06-17 07:23:20 +02:00
Matthias
a3506f4d8e Merge branch 'develop' into timeframe 2020-06-15 06:35:55 +02:00
Matthias
f80b5f9410
Merge pull request #3438 from freqtrade/ftx_stoploss
Ftx stoploss
2020-06-14 07:02:15 +02:00
hroff-1902
4660909e95 Validate stoploss_on_exchange_limit_ratio at startup time 2020-06-14 01:07:00 +03:00
hroff-1902
37bc2d28ad Revert "Remove _load_async_markets"
This reverts commit 6744f8f052.
2020-06-13 13:34:29 +03:00
hroff-1902
0067a3ab7c Change logging level 2020-06-10 06:30:29 +03:00
hroff-1902
7d451638a8 Make _reload_markets() public 2020-06-10 01:39:23 +03:00
hroff-1902
6744f8f052 Remove _load_async_markets 2020-06-10 01:22:55 +03:00
Matthias
f83c1c5abf Use get_stoploss_order and cancel_stoploss_order
This allows exchanges to use stoploss which don't have the same
endpoints
2020-06-03 06:11:34 +02:00
hroff-1902
04a2fb16aa
Merge pull request #3433 from freqtrade/fix/cost_calc_crash
Free trades should not crash the bot
2020-06-02 22:20:29 +03:00
Matthias
a2551daf12 Fix ZeroDivision problem where cost is 0.0 2020-06-02 20:55:12 +02:00
Matthias
08049d23b4 Use "market_is_tradable" for whitelist validation 2020-06-02 20:41:29 +02:00
Matthias
b22e3a67d8 rename symbol_is_pair to market_is_tradable
Make it part of the exchange class, so subclasses can override this
2020-06-02 20:29:50 +02:00
Matthias
8550c3e43f
Merge pull request #3409 from hroff-1902/exchange_logging
Minor: Better exchange debug logging
2020-06-02 20:27:53 +02:00
hroff-1902
48117666fe
Update freqtrade/exchange/exchange.py
Co-authored-by: Matthias <xmatthias@outlook.com>
2020-06-02 21:09:23 +03:00
hroff-1902
85fedf95e8 Make mypy happy 2020-06-02 18:43:37 +03:00
Matthias
898def7f6c Remove ticker_interval from exchange 2020-06-01 20:39:01 +02:00
hroff-1902
123a556ec8 Better exchange logging 2020-05-31 13:05:58 +03:00
Matthias
f187753f8f Add ccxt_sync_config to simplify ccxt configuration 2020-05-30 10:45:50 +02:00
Matthias
f3824d970b Use dict for symbol_is_pair 2020-05-29 20:20:06 +02:00
Matthias
16cd1f06b2 Rename get_order_book to fetch_l2_order_book (aligning to ccxt) 2020-05-26 20:27:35 +02:00
Matthias
046202fdda Fix typing circular dependency 2020-05-22 20:56:34 +02:00
hroff-1902
115586a50f Introduce freqtrade.typing 2020-05-18 21:59:50 +03:00
hroff-1902
6fa8750fea
Merge branch 'develop' into refactor-informative 2020-05-18 14:00:09 +03:00
hroff-1902
627c5059f0 Move create_pair_list to pairlistmanager 2020-05-18 13:54:21 +03:00
Matthias
5a9a31351a Adjust empty f-strings to be non-fstrings 2020-05-18 11:40:25 +02:00
hroff-1902
bf25746965 Introduce datatype for informative pairs 2020-05-16 12:27:56 +03:00
hroff-1902
8e4ffea52b
Merge pull request #3239 from freqtrade/feat/fee_handling
Improve fee handling
2020-05-14 18:48:48 +03:00
Matthias
d86855f2f3
Merge pull request #3129 from freqtrade/trades_to_list
convert dl-trades datadownload to list
2020-05-13 09:41:26 +02:00
hroff-1902
d4362ed357 Minor: improve exception handling in exchange 2020-05-09 09:29:40 +03:00
Matthias
021e2b58ca Support partially cancelled orders for fee calculation 2020-05-01 20:24:26 +02:00
Matthias
6b33d5af1e Fix fee-calculation for dry-run orders 2020-05-01 19:51:35 +02:00
Matthias
59bafc8d02 Implement fee rate calculation 2020-05-01 15:50:02 +02:00
Matthias
45c97fde2d Use correct typehint for extract_cost_curr_rate 2020-05-01 15:50:02 +02:00
Matthias
e74ed0ba7b Add tests for fee extraction methods 2020-04-30 20:05:27 +02:00
Matthias
2e4dc6c253 Exchange should return fee dict for dry-run orders 2020-04-30 19:56:48 +02:00
Matthias
a867d40eac Move fee_methods to exchange 2020-04-30 19:33:27 +02:00
Matthias
c775d65126 Update typehint for cancel_order 2020-04-18 06:55:25 +02:00
Matthias
5e3e0e819f Add tests for cancel_order_with_result 2020-04-17 17:53:18 +02:00
Matthias
800891a475 Add tests for cancel_order_with_result 2020-04-17 07:18:46 +02:00
hroff-1902
df79011aba
Merge pull request #3112 from freqtrade/trade_state_updates
Trade state updates
2020-04-16 12:05:19 +03:00
Matthias
33b6c7de5b Add tests for price_one_pip 2020-04-15 07:53:31 +02:00
Matthias
36e714a7b2 Add price_get_one_pip filter 2020-04-15 07:19:27 +02:00
Matthias
cfe1e4876a Improve testcase for cancel_order_empty 2020-04-14 19:20:47 +02:00
Matthias
d76bb1ccf4 Use List of Lists instead of list of Dicts for trades data 2020-04-01 19:45:21 +02:00
Matthias
270ac2e8c1 Add check_order_cancelled_empty method to exchange 2020-03-25 09:43:04 +01:00
hroff-1902
3208faf7ed Do not use ticker where it's not a ticker 2020-03-08 20:47:02 +03:00
hroff-1902
8475baba4e
Merge pull request #2995 from freqtrade/stake_curr_empty
Allow Stake currency empty when using download-data
2020-03-02 00:53:09 +03:00
Matthias
60f04cff4d Simplify expression 2020-02-29 20:41:03 +01:00
Matthias
d7373be553 Add official support for Kraken 2020-02-29 16:58:22 +01:00
Matthias
60579485e5 fix empty stake currency problem 2020-02-29 14:56:36 +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
f38accb77b Return empty string if no quote / base currency can be found 2020-02-26 07:09:54 +01:00
Matthias
4e218be51d Don't use markets[pair]['quote'] 2020-02-26 07:08:09 +01:00
Matthias
31ac4598ba Fix last occurances of pair splitting 2020-02-25 07:16:37 +01:00
Matthias
61037ab7b8 Implement get_pair_base_curr and get_pair_quote_curr 2020-02-24 21:50:27 +01:00
Matthias
3e4f663418 Move pairlist validation to exchange (we need to use .quote) from
markets
2020-02-24 21:33:42 +01:00
Matthias
f5b4a6d3d7 Remove fetch_ticker caching 2020-02-22 11:10:05 +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
hroff-1902
684cb54992 Add pair to exception msg 2020-02-03 17:17:46 +03:00
hroff-1902
df249c7c03
Remove unclear comment 2020-02-03 09:37:50 +03:00
hroff-1902
f3d500085c Add some type hints 2020-02-02 07:00:40 +03: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
16b34e11ca Complete rename of stoploss_limit to stoploss 2020-01-19 14:40:09 +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
hroff-1902
2f82122fc4
Merge pull request #2763 from freqtrade/fix/precision_rounding
Fix/precision rounding
2020-01-17 01:25:30 +03:00
Matthias
4c823f12e3 Sort imports 2020-01-14 20:25:58 +01:00
Matthias
bea4ad8eff Revert price_to_precision to rounding up 2020-01-14 20:16:20 +01:00
Matthias
5fcab1eee8 Align method names to internal ccxt names
These methods are reimplemented from ccxt so we can test their behaviour.
2020-01-12 14:55:05 +01:00
Matthias
b60d7ad42f Use ccxt.decimal_to_precision instead of our own calculation 2020-01-12 14:41:09 +01:00
Matthias
fa1f9bcdbd expose precisionMode from exchange class 2020-01-12 14:37:45 +01:00
Matthias
53abfdbcbf Use sorted on set instead of explicit list conversion 2020-01-12 12:48:29 +01:00
Matthias
3519cebf66 Add test for failing stake_validation 2020-01-11 13:14:19 +01:00
Matthias
60b47b6eec Add tests for get_quote_currencies 2020-01-11 12:01:34 +01:00
Matthias
13274964a9 Implement validation for valid stake currency 2020-01-11 11:54:00 +01:00
Matthias
235a10ab86 Don't suppport <1m timeframes 2020-01-11 11:36:28 +01:00
Matthias
1ffda29fd2 Adjust improts to new exception location 2019-12-30 15:02:17 +01:00
Matthias
cadde3ab6d Check if markets.info is a dict before using it 2019-12-27 16:15:44 +01:00
Matthias
21622ac313 Rename get_ticker to fetch_ticker 2019-12-18 16:34:30 +01:00
hroff-1902
39197458f4
Merge pull request #2661 from freqtrade/wallet_dry
Introduce Dry-Run Wallet
2019-12-16 14:00:11 +03:00
Matthias
c741b67c3c Adjust tests for dry_run wallet simulation 2019-12-15 10:39:52 +01:00
Matthias
931d24b5a8 Have dry_run_wallet default to 1000 2019-12-15 09:26:17 +01:00
Matthias
2275a1539e Remove default symbol from get_fee() 2019-12-14 13:22:42 +01:00
Matthias
b69f5afaaf Round amount to precision also for dry-runs 2019-12-13 06:59:10 +01:00
hroff-1902
6174a5dd55 Reimplement adjustment of ccxt 'has' with more generic ccxt_config class attribute 2019-11-13 20:22:23 +03:00
hroff-1902
e26bbc7de8 Add fix for bibox exchange 2019-11-13 19:50:54 +03:00
Matthias
08aedc18e1 Exchange ticker_interval with timeframe in some more places 2019-11-12 15:13:06 +01:00
Matthias
da57396d07 Fix UTC handling of timestamp() conversation in fetch_my_trades 2019-11-08 06:55:07 +01:00
Matthias
9a42afe0be Move exchange-constants and retriers to exchange.common 2019-10-31 10:59:17 +01:00
Matthias
132a4da7cf Small style fixes and adjusted tests 2019-10-27 10:56:38 +01:00
Matthias
73f5bff9c5 Add validation to make sure strategies work on that exchange 2019-10-27 10:38:21 +01:00
hroff-1902
b26faa13bd Call validate_timeframe only when validate is True 2019-10-22 13:51:36 +03:00
hroff-1902
ad5f7e1581 Merge remote-tracking branch 'origin/develop' into list-pairs2 2019-10-22 12:30:39 +03:00
hroff-1902
3cf95f9f6c
Merge pull request #2369 from freqtrade/disable_exchangevalidate
Allow skipping of exchange validation
2019-10-22 12:22:48 +03:00
hroff-1902
1bc63288a3
Merge branch 'develop' into list-pairs2 2019-10-20 23:22:45 +03:00
hroff-1902
47fabca1d9
Merge pull request #2372 from xmatthias/kraken_ohlcv_emulate
download tick-based data to emulate candles
2019-10-19 19:32:37 +03:00
Matthias
fd22c87295 Some minor cleanups to trades download methods and docs 2019-10-19 10:05:30 +02:00
hroff-1902
8564affdf0 Add tests for Exchange.get_markets() 2019-10-17 22:45:20 +03:00
hroff-1902
b6e26c82ea Replace market_is_pair() by symbol_is_pair() 2019-10-17 18:44:25 +03:00
hroff-1902
1e61263a28 More sofisticated market_is_pair(), taken from #1989 2019-10-17 17:49:04 +03:00
hroff-1902
92fda0f76c Allow --base and --quote be lists of currencies 2019-10-17 02:09:19 +03:00
hroff-1902
6e27c47dee Handle properly exchanges with no active flag set for markets 2019-10-14 13:32:39 +03:00
Matthias
76ad5bea0e Load correct exchange class
closes #2371
2019-10-14 11:36:42 +02:00
Matthias
13e80e449c cleanup and better docstring 2019-10-14 06:22:10 +02:00
Matthias
762ae3a598 Extend tests 2019-10-13 13:15:22 +02:00
Matthias
640d58eb13 Remove unneeded checks 2019-10-13 13:15:22 +02:00
Matthias
fa8c61382b Remove unneeded exception handlers 2019-10-13 13:15:22 +02:00
Matthias
16d6914b15 Add test to cover missing line 2019-10-13 13:15:22 +02:00
Matthias
05e473642b Small adjustments to get_trade_history 2019-10-13 13:15:22 +02:00
Matthias
0d592f6c55 Refactor trade downloading to handle exceptions only once 2019-10-13 13:15:22 +02:00
Matthias
9584629f50 Rename argument from dl_path to datadir 2019-10-13 13:15:22 +02:00
Matthias
1f79ca9539 Remove duplicate check 2019-10-13 13:15:22 +02:00
Matthias
1d8fc97053 Fix duplicate trade error, rename some methods 2019-10-13 13:15:22 +02:00
Matthias
57dee794d1 Fix end-reached for id-based trade-download 2019-10-13 13:15:22 +02:00
Matthias
2c0bb71a6e Add download_trades_history() 2019-10-13 13:15:22 +02:00
Matthias
ab8f638e44 Move id/time detection to get_historic_trades method 2019-10-13 13:15:22 +02:00
Matthias
77c367ad1d First draft of async get_trade methods 2019-10-13 13:15:22 +02:00
Matthias
26b3148904 Add build_ohlcv wrapper 2019-10-13 13:15:22 +02:00
Matthias
27dc9ca799 Add trades_pagination attributes 2019-10-13 13:15:22 +02:00
Matthias
baad1a5166 Explain _params element 2019-10-13 13:15:22 +02:00
hroff-1902
7cf7982565 Add list-pairs and list-markets subcommands 2019-10-13 13:12:20 +03:00
Matthias
f3f6e9d365 Allow skipping of exchange validation 2019-10-13 10:33:22 +02:00
hroff-1902
946b8c29d7
Merge pull request #2317 from hroff-1902/list-timeframes
Add list-timeframes subcommand
2019-10-06 16:28:15 +03:00
hroff-1902
d1fa5f307b Add --all option to list-exchanges 2019-10-01 00:33:33 +03:00
hroff-1902
7617dd5029 Add separate message for hitbtc exchange 2019-09-30 20:01:55 +03:00
hroff-1902
272c977d08 Add exchanges to the list of bad exchanges 2019-09-30 03:55:55 +03:00
hroff-1902
75446d8195 Refactor list-timeframes command with the use of the Exchange class methods 2019-09-29 23:18:04 +03:00
hroff-1902
c5f455d660
Merge pull request #2256 from freqtrade/kraken_balance
fix Kraken balance calculation
2019-09-12 23:12:55 +03:00
hroff-1902
849d694c27 Don't inherit from object 2019-09-12 04:39:52 +03:00
Matthias
c01953daf2 Remove kraken block 2019-09-11 06:57:58 +02:00
Matthias
48ac37a1b8 BLock kraken trading - it's not working at the moment 2019-09-05 20:16:09 +02:00
Matthias
aae9c3194f Reenable stoploss_on_exchange for dry-run 2019-09-01 17:48:06 +02:00
Matthias
b5789203f2
Merge branch 'develop' into timeframe_use_ccxt 2019-08-26 19:48:58 +02:00
Matthias
565a543b7b Use ccxt base methods to round timeframe 2019-08-25 10:34:56 +02:00
Matthias
2c66b33fd1 Adapt some tests to use Binance subclass for stoplosslimit 2019-08-25 09:57:21 +02:00
Matthias
defa1c027d Move stoploss_limit to binance subclass 2019-08-25 09:50:37 +02:00
Matthias
ea179a8e38 stoploss_limit shall not use create_order()
It needs to handle exceptions differently
2019-08-25 09:43:10 +02:00
Matthias
8a17615b5a move exceptionhandling from create_order() to calling functions 2019-08-25 09:42:02 +02:00
hroff-1902
d19b11a00f exchange cosmetics 2019-08-22 20:01:41 +03:00
Matthias
dc35a8022b
Merge pull request #2157 from freqtrade/fix/create_order_crash
create market order crash if exchange raises an exception
2019-08-20 06:22:43 +02:00
Matthias
a4ede02ced Gracefully handle problems with dry-run orders 2019-08-18 19:38:23 +02:00
Matthias
045ac1019e Split test for buy-orders too 2019-08-18 15:58:53 +02:00
Matthias
ee7ba96e85 Don't do calculations in exception handlers when one element can be None
fixes #2011
2019-08-18 15:46:38 +02:00
Matthias
93cf2cd19b
Merge pull request #2135 from freqtrade/ohlcv_docstring
[minor] Improve docstring for some downloading methods
2019-08-15 16:23:42 +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
11790fbf01 Fix typos in docstrings 2019-08-15 06:37:26 +02:00
Matthias
84baef922c Rename get_history to get_historic_ohlcv 2019-08-14 10:14:54 +02:00
Matthias
4da2bfefb7 Improve docstring for some downloading methods 2019-08-14 09:37:17 +02:00
Matthias
3c589bb877 fail if known bad exchanges are detcted 2019-08-13 08:27:46 +02:00
Matthias
d8dbea9d5b Add exchange_reasons to bad exchanges 2019-08-13 08:20:35 +02:00
Matthias
ca739f71fb Fix default argument handling for timeframe_to_nextdate 2019-08-12 20:39:24 +02:00
Matthias
2600cb7b64 simplify timeframe_next_date calculation 2019-08-12 20:04:19 +02:00
Matthias
444ee274d7 close dry-run orders in case of market orders 2019-08-12 16:46:45 +02:00
Matthias
1ce63b5b42 Reformat tests to be easier readable 2019-08-12 16:25:01 +02:00
Matthias
dd0ba183f8 Add timeframe_to_prev_candle 2019-08-12 16:11:43 +02:00
Matthias
933a553dd4 Convert timeframe to next date 2019-08-12 16:08:23 +02:00
Matthias
a90ced1f38 Since arguments are in milliseconds integer throughout ccxt.
Explained here: https://github.com/ccxt/ccxt/issues/5636

fixes #2093
2019-08-06 20:09:09 +02:00
Matthias
bbd58e772e Warn when using restricted pairs
As noted in https://github.com/ccxt/ccxt/issues/5624, there is currently
no way to detect if a user is impacted by this or not prior to creating
a order.
2019-08-03 13:14:36 +02:00
Matthias
4b8b2f7c5b Use raise xxx from e to have a nicer traceback 2019-07-25 20:06:20 +02:00
Matthias
9887cb997e Check if Price is needed for market orders
This is currently the case for:
cex, coinex, cointiger, fcoin, fcoinjp, hadax, huobipro, huobiru, uex,
2019-07-14 14:17:09 +02:00
Matthias
61b24180f0
Merge pull request #1998 from freqtrade/fix/pax_balance
Support all types of pairs for /balance
2019-07-08 16:31:57 +02:00
Matthias
6c2415d32f Rename parameters from pair to curr 2019-07-07 06:36:35 +02:00
Matthias
40fe2d2c16 Test get_valid_pair_combination 2019-07-03 20:20:12 +02:00
Matthias
fcdbe846e5 Fix #1981 - Detect reverted currency pairs 2019-07-03 20:06:50 +02:00
Matthias
e19c192570
Merge pull request #1994 from hroff-1902/fix-validate_timeframes
fix validate_timeframes()
2019-07-03 11:11:28 +02:00
hroff-1902
b80cef964e fix validate_timeframes(); test added 2019-07-03 11:18:39 +03:00
hroff-1902
d41b8cc96e catch ccxt.BaseError 2019-07-03 05:13:41 +03:00
hroff-1902
91fb9d0113 fix #1995 2019-07-03 05:02:44 +03:00
Matthias
0d601fd111 Remove logger message 2019-07-01 06:18:28 +02:00
Matthias
0c7d14fe50 Check if timeframes is available and fail gracefully otherwise 2019-06-30 20:30:31 +02:00
AlexV
e8796e009c adding bitstamp to list of bad exchanges. 2019-06-29 17:20:10 +02:00
Matthias
a07653a6cc Merge branch 'develop' into fix/validate_dataframe 2019-06-24 06:21:08 +02:00
Matthias
89ff614e1d Add pair as parameter, and warn when fillup was necessary 2019-06-15 13:46:19 +02:00
hroff-1902
0cc2210f22 wording fixed 2019-06-12 22:53:43 +03:00
hroff-1902
db6ccef6bd return back check in init_ccxt() 2019-06-11 13:43:29 +03:00
hroff-1902
676e730013 enhance check_exchange 2019-06-11 13:18:35 +03:00
Matthias
9f2e0b11d1 Parametrize ohlcv_candle_limit (per call) 2019-06-09 14:52:17 +02:00
Matthias
fdbbefdddd Make drop_incomplete optional 2019-06-09 14:35:58 +02:00
Matthias
7108a2e57d Add deep_merge for _ft_has and test 2019-06-09 14:06:29 +02:00
hroff-1902
0e228acbfb minor: exchange debug logging humanized 2019-05-25 22:42:17 +03:00
Matthias
45ecbc91e8 Use BaseError, not NetworkError in exception handler 2019-04-24 22:20:05 +02:00
Matthias
65dcb6acea Catch errors on reload_markets 2019-04-24 21:56:24 +02:00
Matthias
577ccd32f0
Merge pull request #1750 from hroff-1902/ccxt-to-exchange-only
minor: limit usage of ccxt to freqtrade/exchange only
2019-04-19 06:51:08 +02:00
Matthias
43119efaf0 Remove ccxt_rate_limit completely (was deprecated) 2019-04-16 19:41:02 +02:00
hroff-1902
f03acce84c typing of return value corrected 2019-04-11 00:07:27 +03:00
hroff-1902
9fbe573cca limit usage of ccxt to freqtrade/exchange only 2019-04-09 12:27:35 +03:00
Matthias
6856848efc
Merge pull request #1744 from hroff-1902/ccxt-parse_timeframe
cosmetic: rename interval, tick_interval, etc --> ticker_interval
2019-04-08 20:26:36 +02:00
hroff-1902
ebf1126351 cosmetic: rename interval, tick_interval, etc --> ticker_interval 2019-04-07 16:28:53 +03:00
Matthias
4a6c8f3cb2
Merge pull request #1735 from hroff-1902/ccxt-parse_timeframe
Resolution for #1137
2019-04-07 12:52:13 +02:00
Misagh
d294cab933 adding order id to invalidorder exception message 2019-04-06 20:27:03 +02:00
Misagh
2b49a11b2a returning InvalidOrder exception for get_order 2019-04-05 19:46:43 +02:00
hroff-1902
2aa1b43f01 get rid of TICKER_INTERVAL_MINUTES dict, use ccxt's parse_timeframe() instead 2019-04-04 20:56:40 +03:00
Misagh
40df0dcf3d tests fixed 2019-04-02 18:45:18 +02:00
Misagh
99d256422e adding InvalidOrder to exchange 2019-04-02 18:31:03 +02:00
Matthias
9b22d5cab1 Fix typo, add test for validate_order_tif 2019-03-27 20:51:55 +01:00
iuvbio
e15f2ef11a add order_time_in_force in _ft_has and revert binance 2019-03-26 00:49:39 +01:00
iuvbio
4005b8d1d2 remove the if condition for binance 2019-03-25 23:57:14 +01:00
iuvbio
85ac99aee0 move exchange urls to constants 2019-03-25 23:57:14 +01:00
Matthias
35d65bc7d7 Merge branch 'develop' into 'validate_whitelist' 2019-03-21 06:22:48 +01:00
hroff-1902
580ada8c4f exchange cleanup 2019-03-19 20:52:35 +03:00
iuvbio
a241e950f2 prune validate_pairs 2019-03-17 16:04:09 +01:00
misagh
b5034cf535 TSL validator removed from exchange 2019-03-14 09:04:41 +01:00
misagh
9a226ec7e6 conflict with develop resolved 2019-03-14 07:56:21 +01:00
iuvbio
a1841c35ae reset _last_markets_refresh 2019-03-13 20:18:49 +01:00
iuvbio
779bcdd990 remove reload for async api 2019-03-12 16:35:32 +01:00
iuvbio
1a92bf9e8e add test 2019-03-12 16:31:22 +01:00
iuvbio
8741017819 remove get_markets 2019-03-12 16:31:22 +01:00
iuvbio
0d980134e7 add markets reload func 2019-03-12 16:31:22 +01:00
iuvbio
3ad0686bc7 fix typing 2019-03-12 16:31:22 +01:00
iuvbio
df9410cd15 check if markets were loaded 2019-03-12 16:31:22 +01:00
iuvbio
041e9957dd add reload argument 2019-03-12 16:31:22 +01:00
iuvbio
6b97af4a03 add comment 2019-03-12 16:31:22 +01:00
iuvbio
5c840f333f slight change to exception message 2019-03-12 16:31:22 +01:00
iuvbio
47cc04c0a3 use self.markets instead of _api.markets 2019-03-12 16:31:22 +01:00
iuvbio
ccad883256 adjust get_markets 2019-03-12 16:31:22 +01:00
iuvbio
3a2aa54d2a add markets property 2019-03-12 16:31:22 +01:00
iuvbio
d423f58566 replace fetch_markets 2019-03-12 16:31:22 +01:00
misagh
f55d75e7fc TSL validation tests added 2019-03-12 15:35:44 +01:00
misagh
36e95bc868 unnecessary variable removed 2019-03-12 13:10:59 +01:00
misagh
3e40f5c588 if condition simplified 2019-03-12 13:09:27 +01:00
misagh
643262bc6a add trailing stop loss config validator 2019-03-12 13:03:29 +01:00
Matthias
0eb9dd5fe5 Don't use timeInForce for market orders 2019-03-11 20:30:36 +01:00
Matthias
0a2cacbba8 Fix #1637 2019-03-08 21:17:12 +01:00
hroff-1902
b792f00553 exchange cleanup 2019-03-01 02:13:16 +03:00
Matthias
6c75b8a36a Remove pair market url 2019-02-26 19:27:28 +01:00
Matthias
006635003e Fix small typos 2019-02-24 20:18:41 +01:00
Matthias
f2fd5205ef Fix typo 2019-02-24 20:13:38 +01:00
Matthias
455b168366 add _ft_has to exchangeclass 2019-02-24 19:35:29 +01:00
iuvbio
403ed48c3e rename _store_dry_order 2019-02-23 16:28:13 +01:00