Commit Graph

437 Commits

Author SHA1 Message Date
Matthias
5d4386f037 Implement order_types validation 2022-03-09 06:37:08 +01:00
Matthias
76e5d5b232 Fix stake-amount handling for dry-run 2022-03-05 15:53:40 +01:00
Sam Germain
488da9b875 Merge branch 'develop' into feat/short 2022-03-03 13:51:52 -06:00
Matthias
79538368db Simplify liquidation price calculation 2022-02-28 19:47:21 +01:00
Matthias
ab46476e63 Rename get_liquidation method 2022-02-28 19:42:26 +01:00
Matthias
8e2d3445a7 Move leverage_prep calculations to exchange class 2022-02-28 19:29:42 +01:00
Matthias
9504b3eb05 Improve huobi config generation 2022-02-26 10:33:11 +01:00
Matthias
9d55621f42 Test fetch_position exchange method 2022-02-24 20:05:56 +01:00
Sam Germain
a37287d9ba test__get_params 2022-02-16 10:06:27 -06:00
Sam Germain
124532a4b7 maintenanceMarginRatio -> maintenanceMarginRate 2022-02-16 09:04:43 -06:00
Sam Germain
6f410d3096 fixed test_load_leverage_tiers 2022-02-16 05:44:11 -06:00
Sam Germain
c70050e750 fixed test_load_leverage_tiers 2022-02-16 05:26:52 -06:00
Sam Germain
1f3d3d87f6 fixed tests 2022-02-16 04:52:26 -06:00
Sam Germain
3fe0e13bb1 expanded test_load_leverage_tiers 2022-02-16 04:37:11 -06:00
Sam Germain
3bfd9186f7 gateio.get_max_leverage small fix 2022-02-16 04:05:27 -06:00
Matthias
c37f03a638 Update static-markets to include futures pair 2022-02-15 08:04:16 +01:00
Matthias
1bae18c60a Update decorator locations 2022-02-15 07:11:07 +01:00
Sam Germain
3753df26fc fixed tests 2022-02-14 17:34:59 -06:00
Sam Germain
5cd2501397 Merge branch 'leverage-tiers' of https://github.com/samgermain/freqtrade into leverage-tiers 2022-02-14 09:40:53 -06:00
Sam Germain
cfd438b966 fixed test_get_markets 2022-02-14 09:40:01 -06:00
Sam Germain
16e38592a9 test_get_markets created debugging param test_comment 2022-02-14 09:33:56 -06:00
Matthias
bc855b2a32 Update some missing mocks 2022-02-13 13:00:38 +01:00
Sam Germain
8fe3f0c933 fix breaking tests 2022-02-12 23:08:42 -06:00
Sam Germain
7a0f7da128 okex loads all leverage tiers at beginning, removed get tiers for pair 2022-02-12 23:02:16 -06:00
Sam Germain
03b3756e4b strengthened and fixed leverage_tier tests 2022-02-12 23:02:16 -06:00
Sam Germain
a6043e6a85 get_max_leverage test clean up 2022-02-12 23:02:16 -06:00
Sam Germain
4a1ed01708 get_maintenance_ratio_and_amt tests 2022-02-12 23:02:16 -06:00
Sam Germain
3b43d42eaa Updated exchange tests 2022-02-12 23:02:15 -06:00
Sam Germain
eb72e5cc42 Added some exchange leverage tier tests 2022-02-12 23:02:15 -06:00
Sam Germain
98f32e8964 fixed failing test_get_max_leverage 2022-02-12 23:02:15 -06:00
Sam Germain
3ebda1d29d Added test templated 2022-02-12 23:02:15 -06:00
Sam Germain
a0264f0651 test_get_max_pair_stake_amount with leverage 2022-02-12 23:02:15 -06:00
Sam Germain
6b9915bc73 moved fill_leverage_brackets and get_max_leverage to base exchange class, wrote parse_leverage_tier and load_leverage_brackets 2022-02-12 23:02:14 -06:00
Sam Germain
a99cf2eeed redid get_max_leverage 2022-02-12 23:02:07 -06:00
Sam Germain
19a282ddb4 fixed broken test_get_liquidation_price 2022-02-11 19:38:59 +01:00
Sam Germain
6ae85f9be1 fixed liq-buffer tests 2022-02-11 19:38:59 +01:00
Matthias
0c6d92a7a6 Merge branch 'develop' into feat/short 2022-02-11 17:02:04 +01:00
Sam Germain
8b57827676 exchange.get_max_pair_stake_amount hard set leverage to 0 2022-02-04 14:26:15 -06:00
Sam Germain
c0a593280e test_exchange.test_cancel_order_dry_run pass leverage to create_order 2022-02-04 04:54:16 -06:00
Sam Germain
dc6cb445fd Merge branch 'feat/short' into max-amount 2022-02-04 04:42:38 -06:00
Matthias
6afad6c99f Small change to todo comment 2022-02-04 07:20:27 +01:00
Sam Germain
a50f4d2c57 Exchange.createOrder added * as second param 2022-02-03 20:33:16 -06:00
Sam Germain
16c2d54482 updated margin_modes 2022-02-03 20:33:16 -06:00
Sam Germain
c5cfd971f5 get_max_pair_stake_amount_tests 2022-02-03 20:33:16 -06:00
Sam Germain
55d91f018f exchange._get_stake_amount_limit (merged min_pair_stake_amount and get_max_tradeable amount) 2022-02-03 20:33:04 -06:00
Sam Germain
ff5fffefb4 exchange.get_max_amount_tradable looks at cost also 2022-02-03 20:33:03 -06:00
Sam Germain
64ad810445 Revert "moved get_max_leverage to get_min_pair_stake_amount"
This reverts commit 90e48d5b98bcfb1452aa818a3274745eac395712.
2022-02-03 20:33:03 -06:00
Sam Germain
73319a74d3 moved get_max_leverage to get_min_pair_stake_amount 2022-02-03 20:33:03 -06:00
Sam Germain
f3b42b0ef3 wrote exchange.get_max_amount_tradable 2022-02-03 20:33:03 -06:00
Sam Germain
f58b92bb86 exchange.create_order removed default for leverage 2022-02-03 17:48:08 -06:00
Sam Germain
09f0e7149f test__fetch_and_calculate_funding_fees_datetime_called # TODO-lev: test for longs 2022-02-02 12:42:13 -06:00
Sam Germain
30519aa3be Changed name Collateral -> MarginMode, collateral -> margin_mode, and _supported_trading_mode_margin_pairs -> _supported_trading_margin_pairs 2022-02-01 13:05:40 -06:00
Matthias
7dd50f78cf Small finetuning improving a comment 2022-02-01 06:37:13 +01:00
Sam Germain
9de63412c1 exchange.get_liquidation_price arguments are not optional 2022-01-31 14:00:52 -06:00
Sam Germain
43db4c34d1 added okex back to unsupported exchanges 2022-01-31 12:18:30 -06:00
Sam Germain
b8f4cebce7 exchange.liquidation_price methods combined, dry_run check on exchange for liquidation price 2022-01-31 12:18:25 -06:00
Sam Germain
143c37d36f cleaned up liquidation price methods 2022-01-31 12:17:07 -06:00
Sam Germain
ede9012fcc removed TODO-levs about okex liquidation price 2022-01-31 12:17:07 -06:00
Sam Germain
0c13e387fe moved liquidation_price method to exchange classes 2022-01-31 12:16:43 -06:00
Sam Germain
1f1ac8ce9d test_get_liquidation_price/test_get_maintenance_ratio_and_amt_binance/fill_leverage_brackets/test_validate_trading_mode_and_collateral TODO comments 2022-01-31 12:16:43 -06:00
Sam Germain
c2f9201512 Added get_liquidation_price check 2022-01-31 12:16:43 -06:00
Sam Germain
0c8205ab3b replace single quote docstrings with double quote docstrings 2022-01-31 12:16:43 -06:00
Sam Germain
ba5fc21d84 added isolated futures to supported modes for binance,gateio 2022-01-31 12:15:54 -06:00
Sam Germain
ba02605d77 Isolated liq branch passes all tests and has the general structure that it is supposed to, but is patchy, and doesnt get the correct maintenance amt and maintenance margin rate yet 2022-01-31 12:15:54 -06:00
Sam Germain
779b82b5b4 fixed test_get_min_pair_stake_amount by adding amount.min/max and cost.min/max to all markets 2022-01-31 03:02:17 -06:00
Matthias
fdea4fcb1b Remove some todo's 2022-01-28 15:52:12 +01:00
Matthias
bf0b95b3d8 Improve backtest tests 2022-01-22 19:46:11 +01:00
Matthias
a0c0c4dcbe Update funding_fee formula to correctly calculate fees for long trades 2022-01-22 19:46:10 +01:00
Matthias
82c90c0049 Extract funding and mark mergin to separate method 2022-01-22 19:45:46 +01:00
Matthias
84c6d92d4c calculate_funding_fees is actually a public exchange interface (used in backtesting). 2022-01-22 19:45:46 +01:00
Matthias
a340d73edc Update funding_fee calculation test 2022-01-22 19:44:20 +01:00
Matthias
ef3a1ea8f2 Split funding fee calculation from Download 2022-01-22 19:44:20 +01:00
Matthias
f090dcc597 Merge branch 'develop' into feat/short 2022-01-22 17:56:01 +01:00
Matthias
6684bff963 Dry-run orders should have filled set correctly 2022-01-15 15:25:16 +01:00
Matthias
173524ea5b
Merge pull request #6170 from freqtrade/contract_workaround
contractSize is a string coming from ccxt
2022-01-06 16:25:19 +01:00
Matthias
431fcdd76f contractSize is a string comming from ccxt 2022-01-06 13:53:27 +01:00
Matthias
7c3babc86c Fix failing ftx test 2022-01-06 13:40:12 +01:00
Matthias
7f88f9bf27 Revert unintended double-call of amount conversion 2022-01-02 13:11:29 +01:00
Sam Germain
67a5739501 fixed test_get_trades_for_order for contracts 2022-01-01 15:39:16 -06:00
Sam Germain
3d4a5eab81 fixed flake8 error 2022-01-01 13:52:06 -06:00
Sam Germain
48567a1301 fixe broken test_get_min_pair_stake_amount 2022-01-01 13:52:06 -06:00
Sam Germain
230dd15ee7 fixed test_amount_to_precision 2022-01-01 13:52:06 -06:00
Sam Germain
f92d47a16b exchange._contracts_to_amount and exchange._amount_to_contracts safe checks 2022-01-01 13:52:06 -06:00
Sam Germain
6ab0e870c2 fixed breaking test test_amount_to_precision 2022-01-01 13:52:06 -06:00
Sam Germain
d105bb764a test__get_contract_size creates its own markets instead of using the markets from conftest 2022-01-01 13:52:06 -06:00
Sam Germain
a85566d6c3 test_exchange.test_create_order removed # assert api_mock.create_order.call_args[0][3] == 100 2022-01-01 13:52:06 -06:00
Matthias
8da596f66d Implement PR feedback 2022-01-01 13:52:01 -06:00
Sam Germain
78d1a267f0 contract-sizes tests 2022-01-01 13:50:50 -06:00
Sam Germain
d0a300a2e1 Added TODOs 2022-01-01 13:50:49 -06:00
Sam Germain
4f6203e45f Added conversions from contract size to amount for objects returned from api 2022-01-01 13:50:43 -06:00
Sam Germain
ee63f12236 Revert "Removed leverage param from get_min_pair_stake_amount"
This reverts commit 096588550ca1de5e5edf63cf7214af037d7bc93b.
2022-01-01 13:49:09 -06:00
Sam Germain
ef6ad0e6d7 Removed leverage param from get_min_pair_stake_amount 2022-01-01 13:49:09 -06:00
Matthias
ddfbe55e7c Merge branch 'develop' into feat/short 2022-01-01 19:16:49 +01:00
Sam Germain
250edae193 test__async_get_historic_ohlcv parametrized candle_type 2021-12-31 06:00:56 -06:00
Matthias
bb65621134 Simplify test, simplify "log_*" selection 2021-12-27 17:14:59 +01:00
Matthias
54858a0bbb Simplify test to only initialize and mock once. 2021-12-27 16:39:47 +01:00
cdimauro
f77b8cbb7a Reduce KuCoin logs only for 429000 error
Only KuCoin messages for 429000 error code are logged once.

Logs functions are also simplified and optimized.

test_remove_logs_for_pairs_already_in_blacklist is simplified as well.
2021-12-26 21:09:25 +01:00
cdimauro
6509c38717 Introduce new test functions to check logs
New functions log_contains, num_log_contains, num_log_has and num_log_has_re
are introduced in the conftest module to help and simplify checking:
- if logs contain a string;
- count how many messages contain a string;
- count how many messages are the given string;
- count how many messages matchs a regex.

A couple of existing tests are changed using the new functions.
2021-12-26 09:49:14 +01:00
cdimauro
fbaf46901e Reduce more KuCoin logs on retrier decorator
More logs are reduced, for KuCoin, on the retrier_async decorator:

_async_get_candle_history() returned exception
retrying _async_get_candle_history() still for
Giving up retrying: _async_get_candle_history()
Applying DDosProtection backoff delay
2021-12-26 09:06:26 +01:00
cdimauro
96fbf63d0b Reduce KuCoin logs on DDosProtection error messages
KuCoin APIs generate A LOT of error messages.
Consequently, logs are flooded with lines like:
2021-12-25 22:30:23 freqtrade.exchange.common: WARNING -
_async_get_candle_history() returned exception:
"kucoin GET https://openapi-v2.kucoin.com/api/v1/market/candles?
symbol=PDEX-USDT&type=5min&startAt=1640317818&endAt=1640467818
429 Too Many Requests {"code":"429000","msg":"Too Many Requests"}"
2021-12-25 22:30:23 freqtrade.exchange.common: WARNING -
retrying _async_get_candle_history() still for 3 times
2021-12-25 22:30:23 freqtrade.exchange.common: WARNING -
Kucoin 429 error, avoid triggering DDosProtection backoff delay.
2 tries left before giving up
2021-12-25 22:30:24 freqtrade.exchange.common: WARNING -
_async_get_candle_history() returned exception:
"kucoin GET https://openapi-v2.kucoin.com/api/v1/market/candles?
symbol=UBX-USDT&type=5min&startAt=1640317821&endAt=1640467821
429 Too Many Requests {"code":"429000","msg":"Too Many Requests"}"

Messages like:
Kucoin 429 error, avoid triggering DDosProtection backoff delay.
are logged only once for a certain period of time (default is 3600 seconds).
2021-12-25 22:32:22 +01:00