Commit Graph

31379 Commits

Author SHA1 Message Date
Matthias 2eb5efed64 Merge pull request #12975 from hallonstedt/docs-krakenfutures-exchange-features
docs: add Kraken futures row to exchange features
2026-03-23 10:51:56 +01:00
matstedt 7657e37f67 docs: add Kraken futures row to exchange features 2026-03-23 09:36:43 +01:00
Matthias ec763e684f Merge pull request #12967 from freqtrade/dependabot/pip/develop/scipy-7cfe552463
chore(deps-dev): bump scipy-stubs from 1.17.1.1 to 1.17.1.2 in the scipy group
2026-03-23 08:00:57 +01:00
Matthias d3847080e8 Merge pull request #12966 from freqtrade/dependabot/pip/develop/mkdocs-d673e4145a
chore(deps): bump mkdocs-material from 9.7.4 to 9.7.5 in the mkdocs group
2026-03-23 07:54:00 +01:00
Matthias 97305221ac Merge pull request #12968 from freqtrade/dependabot/github_actions/develop/actions-1fa769d870
chore(deps): bump actions/download-artifact from 8.0.0 to 8.0.1 in the actions group
2026-03-23 07:53:08 +01:00
Matthias b65aa8671a Merge pull request #12970 from freqtrade/dependabot/pip/develop/cachetools-7.0.5
chore(deps): bump cachetools from 7.0.4 to 7.0.5
2026-03-23 07:50:47 +01:00
Matthias d35bc15562 Merge pull request #12971 from freqtrade/dependabot/pip/develop/numpy-2.4.3
chore(deps): bump numpy from 2.4.2 to 2.4.3
2026-03-23 07:50:31 +01:00
Matthias a9cabe1162 Merge pull request #12969 from freqtrade/dependabot/pip/develop/pyjwt-2.12.1
chore(deps): bump pyjwt from 2.12.0 to 2.12.1
2026-03-23 07:33:02 +01:00
Matthias bb6f4eb60d Merge pull request #12972 from freqtrade/dependabot/pip/develop/filelock-3.25.2
chore(deps): bump filelock from 3.25.0 to 3.25.2
2026-03-23 07:21:10 +01:00
Matthias 996123ea52 Merge pull request #12973 from freqtrade/dependabot/pip/develop/ruff-0.15.6
chore(deps-dev): bump ruff from 0.15.5 to 0.15.6
2026-03-23 07:19:43 +01:00
Matthias 252b7b5e68 chore: bump scipy-stubs in pre-commit config 2026-03-23 07:06:29 +01:00
dependabot[bot] fefba87922 chore(deps): bump mkdocs-material in the mkdocs group
Bumps the mkdocs group with 1 update: [mkdocs-material](https://github.com/squidfunk/mkdocs-material).


Updates `mkdocs-material` from 9.7.4 to 9.7.5
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.7.4...9.7.5)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-version: 9.7.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: mkdocs
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-23 06:04:51 +00:00
dependabot[bot] 434911c1cf chore(deps-dev): bump scipy-stubs in the scipy group
Bumps the scipy group with 1 update: [scipy-stubs](https://github.com/scipy/scipy-stubs).


Updates `scipy-stubs` from 1.17.1.1 to 1.17.1.2
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.17.1.1...v1.17.1.2)

---
updated-dependencies:
- dependency-name: scipy-stubs
  dependency-version: 1.17.1.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: scipy
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-23 06:04:20 +00:00
dependabot[bot] 1d947ba21a chore(deps): bump actions/download-artifact in the actions group
Bumps the actions group with 1 update: [actions/download-artifact](https://github.com/actions/download-artifact).


Updates `actions/download-artifact` from 8.0.0 to 8.0.1
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3...3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: 8.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-23 05:56:41 +00:00
dependabot[bot] 55a6591f10 chore(deps): bump cachetools from 7.0.4 to 7.0.5
Bumps [cachetools](https://github.com/tkem/cachetools) from 7.0.4 to 7.0.5.
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tkem/cachetools/compare/v7.0.4...v7.0.5)

---
updated-dependencies:
- dependency-name: cachetools
  dependency-version: 7.0.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-23 05:55:39 +00:00
dependabot[bot] 266fe5c6cb chore(deps): bump numpy from 2.4.2 to 2.4.3
Bumps [numpy](https://github.com/numpy/numpy) from 2.4.2 to 2.4.3.
- [Release notes](https://github.com/numpy/numpy/releases)
- [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst)
- [Commits](https://github.com/numpy/numpy/compare/v2.4.2...v2.4.3)

---
updated-dependencies:
- dependency-name: numpy
  dependency-version: 2.4.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-23 05:51:35 +00:00
dependabot[bot] 3d4395ebe6 chore(deps): bump filelock from 3.25.0 to 3.25.2
Bumps [filelock](https://github.com/tox-dev/py-filelock) from 3.25.0 to 3.25.2.
- [Release notes](https://github.com/tox-dev/py-filelock/releases)
- [Changelog](https://github.com/tox-dev/filelock/blob/main/docs/changelog.rst)
- [Commits](https://github.com/tox-dev/py-filelock/compare/3.25.0...3.25.2)

---
updated-dependencies:
- dependency-name: filelock
  dependency-version: 3.25.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-23 05:44:30 +00:00
dependabot[bot] 463f0050ed chore(deps-dev): bump ruff from 0.15.5 to 0.15.6
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.5 to 0.15.6.
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](https://github.com/astral-sh/ruff/compare/0.15.5...0.15.6)

---
updated-dependencies:
- dependency-name: ruff
  dependency-version: 0.15.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-23 05:42:49 +00:00
dependabot[bot] b0b9c8d43a chore(deps): bump pyjwt from 2.12.0 to 2.12.1
Bumps [pyjwt](https://github.com/jpadilla/pyjwt) from 2.12.0 to 2.12.1.
- [Release notes](https://github.com/jpadilla/pyjwt/releases)
- [Changelog](https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1)

---
updated-dependencies:
- dependency-name: pyjwt
  dependency-version: 2.12.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-23 05:41:35 +00:00
Matthias 94d0080208 chore: pin starlette to < 1.0.0 2026-03-23 06:37:34 +01:00
Matthias 250156f1a3 Merge pull request #12706 from hallonstedt/feature-krakenfutures
Feature krakenfutures
2026-03-22 19:22:43 +01:00
Matthias 724318c43e test(krakenfutures): Add canceled order test 2026-03-22 19:07:19 +01:00
Matthias 37dbaae8aa feat(krakenfutures): exchange_override fetchOrders to false
to force fallback to individual orders
2026-03-22 19:07:19 +01:00
Matthias 1bd0404503 fix: workaround for missing "filled" parsing 2026-03-22 19:07:19 +01:00
matstedt eba9c24510 refactor(krakenfutures): drop resolved trigger price workaround 2026-03-22 19:07:19 +01:00
Matthias 6bf1901f9b chore: bump ccxt to 4.5.44 2026-03-22 19:07:19 +01:00
Matthias bd9697e6be test: fix krakenfutures tests 2026-03-22 19:07:19 +01:00
Matthias 200b9da2a2 test: remove unnecessary test
ccxt limit is tested as part of test_ohlcv_limit_futures in compat testing
2026-03-22 19:07:19 +01:00
Matthias 32fecd7b15 test(krakenfutures): improve _ft_has test 2026-03-22 19:07:19 +01:00
Matthias f8b99c6e66 test(krakenfutures): update stop strip test 2026-03-22 19:07:19 +01:00
Matthias 0fda77a39c chore: filter open orders by pair 2026-03-22 19:07:19 +01:00
Matthias 57c7edfe26 test: update krakenfutures live test 2026-03-22 19:07:19 +01:00
Matthias 437d0a264c test: Improve test sequence (simplifies analysis) 2026-03-22 19:07:19 +01:00
Matthias 3a28c91635 test: add regular market order 2026-03-22 19:07:19 +01:00
Matthias 1f4c188dbf test: add futures market-parsing test 2026-03-22 19:07:19 +01:00
matstedt 7f9b1a9f90 krakenfutures: correct ccxt issue link to 27996 2026-03-22 19:07:19 +01:00
matstedt 5096ec8a50 krakenfutures: defer order-level fee aggregation 2026-03-22 19:07:19 +01:00
matstedt 35d812a271 krakenfutures: run order adjustments via _order_contracts_to_amount 2026-03-22 19:07:19 +01:00
matstedt 1e79c1961b krakenfutures: aggregate order fees in _adjust_krakenfutures_order 2026-03-22 19:07:19 +01:00
matstedt bfd758d353 krakenfutures: recompute average and cost from fills for terminal orders 2026-03-22 19:07:19 +01:00
matstedt b1ef0bf58d krakenfutures: use safe_value_nested for trigger price extraction 2026-03-22 19:07:19 +01:00
Matthias d25b2ea10a fix: crash on comparison of filled=None 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
Matthias d6e6c9d038 chore: log fetch_order responses for better tracability 2026-03-22 19:07:19 +01:00
Matthias 027ac3d66c test: simplify longrun tests 2026-03-22 19:07:19 +01:00
matstedt 8c1674b415 fix(tests): use CandleType.FUTURES in test_ohlcv_limit_futures
The futures_only ternary incorrectly used CandleType.SPOT for exchanges
that support both spot and futures (binance, gate), causing candle limit
mismatch against candle_count_futures.
2026-03-22 19:07:19 +01:00
matstedt eaa35d7b47 style: ruff format 2026-03-22 19:07:19 +01:00