Commit Graph

1170 Commits

Author SHA1 Message Date
matstedt bfd758d353 krakenfutures: recompute average and cost from fills for terminal orders 2026-03-22 19:07:19 +01:00
matstedt c533e48310 refactor: remove funding_fee_candle_limit override
Kraken Futures now provides 1 year of hourly funding rate history.
The previous limit of 700 candles (29 days) was a workaround for
limited API retention. Freqtrade paginates funding rate fetches
automatically, so the CCXT default (2000) works correctly.
2026-03-22 19:07:19 +01:00
matstedt a1e9b6bea8 fix: compute average price from trades and enrich fees for Kraken Futures
Kraken Futures' /orders/status returns limitPrice (not fill price) and
/fills omits fee amounts (only fillType). This adds:

- _adjust_krakenfutures_order: fetches trades for closed/filled orders
  with average=None and computes VWAP average price.
- get_trades_for_order override: enriches trades with calculated fees
  from the market's maker/taker fee schedule.

Tests: 7 new tests covering VWAP computation, fee enrichment with
maker/taker rates, and preservation of existing values.
2026-03-22 19:07:19 +01:00
matstedt 0dfd7324bd fix: extract triggerPrice from priceTriggerOptions for stoploss orders
CCXT's krakenfutures parse_order misses triggerPrice when the
/orders/status endpoint nests it inside priceTriggerOptions.
Override _order_contracts_to_amount to populate triggerPrice and
stopPrice from info.order.priceTriggerOptions.triggerPrice.
2026-03-22 19:07:19 +01:00
Matthias 3c4b07ce46 test: update krakenfutures_tests for usage of __name__ 2026-03-22 19:07:19 +01:00
matstedt 0dc26584cc krakenfutures: add funding_fee_candle_limit for limited history
Kraken Futures retains only ~29 days of hourly funding rate history.
Set funding_fee_candle_limit to 700 so ohlcv_candle_limit returns the
correct cap for CandleType.FUNDING_RATE instead of the general OHLCV
limit.
2026-03-22 19:07:19 +01:00
matstedt f0aedc8d23 test(krakenfutures): align tests with simplified stoploss handling
- Add test for stoploss_query_requires_stop_flag in _ft_has.
- Replace _fix_trigger_order_id tests with base class integration tests
  (verify stop=True is passed by fetch_stoploss_order/cancel_stoploss_order).
- Add tests for stop param flow: passed to history endpoints, stripped
  from open orders query.
- Remove obsolete cancel_stoploss_order/fetch_stoploss_order override tests.
2026-03-22 19:07:19 +01:00
matstedt bfbae5d040 fix(krakenfutures): re-introduce improved stoploss lookup for trigger orders 2026-03-22 19:07:19 +01:00
matstedt f81e335b27 krakenfutures: simplify order/balance handling and harden error mapping 2026-03-22 19:07:05 +01:00
matstedt 756f178ec3 exchange_utils: use ccxt exchange.has directly in capability checks 2026-03-22 19:07:05 +01:00
Matthias 712fd8ac14 chore: import formatting 2026-03-22 19:07:05 +01:00
matstedt 1c77bd6f5d krakenfutures: improve fetch_order fallback 2026-03-22 19:07:05 +01:00
Matthias 1d0bcbe234 test: remove no longer necessary test 2026-03-22 19:07:05 +01:00
matstedt 6ed470884b krakenfutures: backfill leverage tier notionals 2026-03-22 19:07:04 +01:00
matstedt 9ddf464c03 fix(exchange): drop unused get_ft_has override plumbing 2026-03-22 19:07:04 +01:00
matstedt 06abc95b2e test: fix contradictory sorting by ruff and isort 7 2026-03-22 19:07:04 +01:00
matstedt b4daabe491 test: re-organize imports 2026-03-22 19:07:04 +01:00
matstedt e5a23f5afd test: fix import order in exchange utils test 2026-03-22 19:07:04 +01:00
matstedt 7ee4338b1f tests: increase coverage - krakenfutures edge paths and ft_has overrides 2026-03-22 19:07:04 +01:00
matstedt 3f6e7ca4c1 tests: cover krakenfutures currency sum and funding fees 2026-03-22 19:07:04 +01:00
matstedt 1345cfdbee exchange: fallback to canceled orders for krakenfutures fetch_order; add tests 2026-03-22 19:07:04 +01:00
matstedt f2780c7c68 exchange: drop ccxt workarounds; keep closed-order fallback 2026-03-22 19:07:04 +01:00
matstedt 1254bd5bab tests: align krakenfutures ohlcv limit check 2026-03-22 19:07:04 +01:00
matstedt ca9d4ed026 tests: fix _exchange_has_helper input in exchange_utils test 2026-03-22 19:07:04 +01:00
matstedt 2ed3db330a krakenfutures: use fetch_order_emulated with history fallback 2026-03-22 19:07:04 +01:00
matstedt 38d197b3bf krakenfutures: rely on ft_has stoploss params, update tests/docs 2026-03-22 19:07:04 +01:00
matstedt 5752e52b0f tests: update krakenfutures tests for get_ft_has removal and InvalidOrderException 2026-03-22 19:07:04 +01:00
matstedt 6fdeab2747 krakenfutures: align class name with resolver titlecase and remove unnecessary alias 2026-03-22 19:07:04 +01:00
matstedt 04ec24e737 krakenfutures: move ohlcv cap to _ft_has and support futures-only online tests 2026-03-22 19:07:04 +01:00
matstedt 2f7e77a41e test(exchange): add Kraken Futures exchange tests 2026-03-22 19:07:04 +01:00
Matthias cebbb40c99 test: remove testing for time_in_ratio 2026-03-21 14:09:49 +01:00
Matthias cbeae975f0 test: simplify funding fee test 2026-03-21 14:08:20 +01:00
Matthias bbb1fecb02 test: enhanced fetch_order_fallback test 2026-03-21 09:32:28 +01:00
Matthias b7c89a72fa feat: enhance orders_emulate to include canceled orders 2026-03-21 09:19:27 +01:00
Matthias 5f06b1d43e test: update dry_order_fill test 2026-02-15 16:14:00 +01:00
Matthias a42c8faeca test: add test for immediately triggering stop order
part of #12824
2026-02-15 16:11:54 +01:00
Matthias ecfbfa2a35 test: try fix for test_exchangews_ohlcv random failures 2026-02-15 11:49:01 +01:00
Matthias abf5f2b49a test: update test for strEnum 2026-02-10 07:20:01 +01:00
Matthias 110b50a3cb test: improve test_exchangews_ohlcv test setup 2026-02-02 20:30:02 +01:00
Matthias 26aed91bbf test: improve test-case to highlight issue in ohlcv_with_cache 2026-01-31 19:54:49 +01:00
Matthias 3c2ddda203 test: improve test for ohlcv_with_cache 2026-01-31 19:46:30 +01:00
Matthias 308c80c7b2 test: add test to skip download-data for binanceus 2026-01-26 07:19:24 +01:00
Matthias 87b313cd53 test: add Test case for get_max_leverage with open maxNotional 2026-01-25 11:09:05 +01:00
Matthias a174461952 test: add test for exchange_has validation 2026-01-02 10:33:12 +01:00
Matthias 2a1b3ae7ba test: improve test to disable different stake currency markets 2025-12-30 20:37:29 +01:00
Matthias 0a94a6d332 test: refactor hyperliquid fake markets into a fixture 2025-12-30 20:31:49 +01:00
Matthias 75a3651493 test: ensure hyperliquid works without dex configured 2025-12-30 13:03:13 +01:00
Matthias 0dad2b36ab Merge branch 'develop' into feature/hyperliquid-hip3-support 2025-12-30 08:46:48 +01:00
Matthias 511b817e84 test: test exception case for one dex call 2025-12-28 13:28:46 +01:00
Matthias de94170424 test: update and improve validation tests 2025-12-28 13:24:52 +01:00