Compare commits

..

3050 Commits

Author SHA1 Message Date
dependabot[bot] 914283dae5 chore(deps): bump torch from 2.11.0 to 2.12.0
Bumps [torch](https://github.com/pytorch/pytorch) from 2.11.0 to 2.12.0.
- [Release notes](https://github.com/pytorch/pytorch/releases)
- [Changelog](https://github.com/pytorch/pytorch/blob/main/RELEASE.md)
- [Commits](https://github.com/pytorch/pytorch/compare/v2.11.0...v2.12.0)

---
updated-dependencies:
- dependency-name: torch
  dependency-version: 2.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-25 07:26:22 +00:00
Matthias 7c8aeed806 Merge pull request #13183 from freqtrade/dependabot/pip/develop/numpy-2.4.5
chore(deps): bump numpy from 2.4.4 to 2.4.5
2026-05-25 08:42:59 +02:00
Matthias d657a9760a Merge pull request #13178 from freqtrade/dependabot/pip/develop/cachetools-7.1.2
chore(deps): bump cachetools from 7.1.1 to 7.1.2
2026-05-25 08:38:06 +02:00
Matthias 0333e7e227 Merge pull request #13184 from freqtrade/dependabot/github_actions/develop/codecov/codecov-action-6.0.1
chore(deps): bump codecov/codecov-action from 6.0.0 to 6.0.1
2026-05-25 08:24:23 +02:00
dependabot[bot] 90945675bc chore(deps): bump numpy from 2.4.4 to 2.4.5
Bumps [numpy](https://github.com/numpy/numpy) from 2.4.4 to 2.4.5.
- [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.4...v2.4.5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-25 06:22:25 +00:00
Matthias d3713cbf09 fix: typo 2026-05-25 08:21:21 +02:00
Matthias 9003d5e9e0 fix: disable failing okx live test 2026-05-25 08:19:34 +02:00
dependabot[bot] 7b197aa974 chore(deps): bump codecov/codecov-action from 6.0.0 to 6.0.1
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 6.0.0 to 6.0.1.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/57e3a136b779b570ffcdbf80b3bdc90e7fab3de2...e79a6962e0d4c0c17b229090214935d2e33f8354)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 6.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-25 03:25:14 +00:00
dependabot[bot] ec65c88797 chore(deps): bump cachetools from 7.1.1 to 7.1.2
Bumps [cachetools](https://github.com/tkem/cachetools) from 7.1.1 to 7.1.2.
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tkem/cachetools/compare/v7.1.1...v7.1.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-25 03:24:40 +00:00
Matthias ba6627cd13 chore: update schedule for pre-commit update 2026-05-24 08:59:54 +02:00
Matthias 22a6fdab13 Merge pull request #13161 from ducky-duke/fix/historic-balance-bot-managed-bool
fix: /api/v1/historic_balance returns 500 on MySQL/MariaDB backends
2026-05-23 20:58:58 +02:00
Matthias 580e5b945f test: improve test for bot_balance from mariadb 2026-05-23 20:43:13 +02:00
Matthias 83649ab787 chore: revert unnecessary comment 2026-05-23 20:39:57 +02:00
Matthias 8165fd6310 Merge pull request #13166 from stash86/main-stash
add return type of check_delisting docs section
2026-05-22 17:07:52 +02:00
Stefano 6cf46338ef add return type of check_delisting docs section 2026-05-22 16:53:27 +09:00
Matthias 0d84e80eb7 Merge pull request #13163 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-05-21 06:30:27 +02:00
Freqtrade Bot 476abf80cc chore: update binance leverage tiers 2026-05-21 03:38:09 +00:00
ducky-duke a03ebc8472 fix: coerce bot_managed to bool in _rpc_get_historic_balance
read_sql may return the wallet_history `bot_managed` Boolean column as an
integer dtype (e.g. MySQL/MariaDB TINYINT). results.loc[results["bot_managed"]]
then does label-based indexing instead of boolean masking, raising a KeyError
on GET /api/v1/historic_balance (HTTP 500). Coerce with .astype(bool).
2026-05-20 17:57:59 +07:00
Matthias 1182c03b73 Merge pull request #13160 from freqtrade/dependabot/pip/pymdown-extensions-10.21.3
chore(deps): bump pymdown-extensions from 10.21.2 to 10.21.3
2026-05-20 06:31:34 +02:00
Matthias 2152fd7325 chore: temporarily decrase cooldown for pymdown 2026-05-20 06:16:15 +02:00
dependabot[bot] c7f84403d8 chore(deps): bump pymdown-extensions from 10.21.2 to 10.21.3
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.21.2 to 10.21.3.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.21.2...10.21.3)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-version: 10.21.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-19 21:43:30 +00:00
Matthias 6dcea8bac1 Merge pull request #13158 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-05-19 06:44:17 +02:00
Matthias 217a71b834 chore: temporarily revert the zizmor pre-commit update 2026-05-19 06:31:07 +02:00
Freqtrade Bot cf578a4b76 chore: update pre-commit hooks 2026-05-19 04:17:16 +00:00
Matthias f645d3e21a fix: live pair data must respect end-date 2026-05-18 18:25:14 +02:00
Matthias 9c480b4f4d chore: remove urlilb3 newer exclusion 2026-05-18 18:00:52 +02:00
Matthias 3a714cef14 Merge pull request #13154 from freqtrade/dependabot/pip/develop/ccxt-4.5.54
chore(deps): bump ccxt from 4.5.52 to 4.5.54
2026-05-18 06:57:08 +02:00
Matthias d67b54bcb5 chore(ci): work around powershell install failure
happens on northcentralus region (sometimes) ...
2026-05-18 06:34:13 +02:00
Matthias 9aebce306d Merge pull request #13151 from freqtrade/dependabot/pip/develop/types-83c091f25c
chore(deps-dev): bump the types group with 3 updates
2026-05-18 06:26:57 +02:00
Matthias 8e7aed5013 Merge pull request #13157 from freqtrade/dependabot/pip/develop/pydantic-2.13.4
chore(deps): bump pydantic from 2.13.3 to 2.13.4
2026-05-18 06:21:45 +02:00
dependabot[bot] 4cee997d11 chore(deps): bump ccxt from 4.5.52 to 4.5.54
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.52 to 4.5.54.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.52...v4.5.54)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.54
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-18 04:21:17 +00:00
Matthias 806a11c63a Merge pull request #13156 from freqtrade/dependabot/pip/develop/orjson-3.11.9
chore(deps): bump orjson from 3.11.8 to 3.11.9
2026-05-18 06:19:39 +02:00
Matthias 2e760ae1c5 Merge pull request #13155 from freqtrade/dependabot/pip/develop/mypy-2.0.0
chore(deps-dev): bump mypy from 1.20.2 to 2.0.0
2026-05-18 06:19:20 +02:00
Matthias 674b2c11bd Merge pull request #13153 from freqtrade/dependabot/pip/develop/cryptography-48.0.0
chore(deps): bump cryptography from 47.0.0 to 48.0.0
2026-05-18 06:19:00 +02:00
Freqtrade Bot 5a5dae22d3 chore(deps): Apply pre-commit types update 2026-05-18 03:33:22 +00:00
dependabot[bot] 0a1498af2d chore(deps): bump pydantic from 2.13.3 to 2.13.4
Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.13.3 to 2.13.4.
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/v2.13.4/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/v2.13.3...v2.13.4)

---
updated-dependencies:
- dependency-name: pydantic
  dependency-version: 2.13.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-18 03:29:40 +00:00
dependabot[bot] e8cdbf0a8e chore(deps): bump orjson from 3.11.8 to 3.11.9
Bumps [orjson](https://github.com/ijl/orjson) from 3.11.8 to 3.11.9.
- [Release notes](https://github.com/ijl/orjson/releases)
- [Changelog](https://github.com/ijl/orjson/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ijl/orjson/compare/3.11.8...3.11.9)

---
updated-dependencies:
- dependency-name: orjson
  dependency-version: 3.11.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-18 03:29:32 +00:00
dependabot[bot] c0ee618bd0 chore(deps-dev): bump mypy from 1.20.2 to 2.0.0
Bumps [mypy](https://github.com/python/mypy) from 1.20.2 to 2.0.0.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.20.2...v2.0.0)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 2.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-18 03:29:14 +00:00
dependabot[bot] a4ed0a03f1 chore(deps): bump cryptography from 47.0.0 to 48.0.0
Bumps [cryptography](https://github.com/pyca/cryptography) from 47.0.0 to 48.0.0.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/47.0.0...48.0.0)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 48.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-18 03:28:58 +00:00
dependabot[bot] 25d8d831ec chore(deps-dev): bump the types group with 3 updates
Bumps the types group with 3 updates: [types-requests](https://github.com/python/typeshed), [types-tabulate](https://github.com/python/typeshed) and [types-python-dateutil](https://github.com/python/typeshed).


Updates `types-requests` from 2.33.0.20260503 to 2.33.0.20260508
- [Commits](https://github.com/python/typeshed/commits)

Updates `types-tabulate` from 0.10.0.20260408 to 0.10.0.20260508
- [Commits](https://github.com/python/typeshed/commits)

Updates `types-python-dateutil` from 2.9.0.20260408 to 2.9.0.20260508
- [Commits](https://github.com/python/typeshed/commits)

---
updated-dependencies:
- dependency-name: types-requests
  dependency-version: 2.33.0.20260508
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
- dependency-name: types-tabulate
  dependency-version: 0.10.0.20260508
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
- dependency-name: types-python-dateutil
  dependency-version: 2.9.0.20260508
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-18 03:28:08 +00:00
Matthias 3d91223c2b refactor: further improve hyper function wording 2026-05-17 20:17:43 +02:00
Matthias 875daac375 refactor: improve naming to reflect method functionality 2026-05-17 20:13:42 +02:00
Matthias 03fac42047 chore: fix docstring typo 2026-05-17 17:20:38 +02:00
Matthias 5bcc4fbf03 Merge pull request #13147 from freqtrade/dependabot/docker/python-3.14.5-slim-trixie
chore(deps): bump python from 3.14.3-slim-trixie to 3.14.5-slim-trixie
2026-05-15 06:31:31 +02:00
dependabot[bot] 0ea2258fa8 chore(deps): bump python from 3.14.3-slim-trixie to 3.14.5-slim-trixie
Bumps python from 3.14.3-slim-trixie to 3.14.5-slim-trixie.

---
updated-dependencies:
- dependency-name: python
  dependency-version: 3.14.5-slim-trixie
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-15 03:15:25 +00:00
Matthias a0627aa2fc docs: improve freqai docs formatting 2026-05-14 19:14:05 +02:00
Matthias 764b32a0cf Merge pull request #13145 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-05-14 06:21:48 +02:00
Freqtrade Bot fc634f42f6 chore: update binance leverage tiers 2026-05-14 03:37:42 +00:00
Matthias 8cce4be23c Merge pull request #13141 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-05-12 06:29:32 +02:00
Freqtrade Bot 11ab80bfc4 chore: update pre-commit hooks 2026-05-12 04:15:44 +00:00
Matthias e00a1fd28c Merge pull request #13140 from freqtrade/dependabot/pip/urllib3-2.7.0
chore(deps): bump urllib3 from 2.6.3 to 2.7.0
2026-05-11 19:36:08 +02:00
Matthias b132a49f40 chore(ci): use better name for mypy-version-update 2026-05-11 19:23:17 +02:00
Matthias f82e4ce9ec chore: urllib exclude for security fix 2026-05-11 19:17:13 +02:00
Matthias fac00475a1 Merge pull request #13132 from freqtrade/dependabot/pip/develop/types-67d33dbf9b
chore(deps-dev): bump the types group across 1 directory with 2 updates
2026-05-11 19:16:02 +02:00
Matthias 2ac99fc2bf chore: switch environment for security 2026-05-11 19:15:20 +02:00
Freqtrade Bot d935de08fe Apply pre-commit types update 2026-05-11 16:36:09 +00:00
Matthias a92e0b2545 chore(ci): improved condition syntax 2026-05-11 18:34:32 +02:00
Matthias 8abdd496f6 chore: fix pre-commit updates misconception 2026-05-11 18:32:11 +02:00
dependabot[bot] 443a245d82 chore(deps-dev): bump the types group across 1 directory with 2 updates
Bumps the types group with 2 updates in the / directory: [types-cachetools](https://github.com/python/typeshed) and [types-requests](https://github.com/python/typeshed).


Updates `types-cachetools` from 6.2.0.20260408 to 7.0.0.20260503
- [Commits](https://github.com/python/typeshed/commits)

Updates `types-requests` from 2.33.0.20260408 to 2.33.0.20260503
- [Commits](https://github.com/python/typeshed/commits)

---
updated-dependencies:
- dependency-name: types-cachetools
  dependency-version: 7.0.0.20260503
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: types
- dependency-name: types-requests
  dependency-version: 2.33.0.20260503
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-11 16:18:16 +00:00
Matthias d95789a2e0 feat(ci): add pre-commit types update workflow 2026-05-11 18:13:06 +02:00
Matthias 3a4adfac52 feat: auto-update pre-commit config 2026-05-11 18:05:52 +02:00
Matthias 523216a39c fix: work around to_json pandas deprecation 2026-05-11 18:05:35 +02:00
Matthias e5d4fd6b62 chore: simplify rpc code 2026-05-11 18:05:21 +02:00
dependabot[bot] 939ea01d12 chore(deps): bump urllib3 from 2.6.3 to 2.7.0
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.6.3 to 2.7.0.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.6.3...2.7.0)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.7.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-11 16:04:30 +00:00
Matthias c587a1ccda Merge pull request #13136 from freqtrade/dependabot/pip/develop/ccxt-4.5.52
chore(deps): bump ccxt from 4.5.51 to 4.5.52
2026-05-11 06:38:12 +02:00
Matthias 6751b8e468 Merge pull request #13134 from freqtrade/dependabot/pip/develop/cachetools-7.1.1
chore(deps): bump cachetools from 7.0.6 to 7.1.1
2026-05-11 06:34:59 +02:00
Matthias ef1dca92eb Merge pull request #13137 from freqtrade/dependabot/pip/develop/pytz-2026.2
chore(deps): bump pytz from 2026.1.post1 to 2026.2
2026-05-11 06:34:49 +02:00
Matthias 0e33e69d8e Merge pull request #13135 from freqtrade/dependabot/pip/develop/build-1.5.0
chore(deps-dev): bump build from 1.4.4 to 1.5.0
2026-05-11 06:34:31 +02:00
dependabot[bot] 021011df31 chore(deps): bump pytz from 2026.1.post1 to 2026.2
Bumps [pytz](https://github.com/stub42/pytz) from 2026.1.post1 to 2026.2.
- [Release notes](https://github.com/stub42/pytz/releases)
- [Commits](https://github.com/stub42/pytz/compare/release_2026.1.post1...release_2026.2)

---
updated-dependencies:
- dependency-name: pytz
  dependency-version: '2026.2'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-11 03:04:36 +00:00
dependabot[bot] c2e89e5f11 chore(deps): bump ccxt from 4.5.51 to 4.5.52
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.51 to 4.5.52.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.51...v4.5.52)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.52
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-11 03:04:29 +00:00
dependabot[bot] ba89faab6a chore(deps-dev): bump build from 1.4.4 to 1.5.0
Bumps [build](https://github.com/pypa/build) from 1.4.4 to 1.5.0.
- [Release notes](https://github.com/pypa/build/releases)
- [Changelog](https://github.com/pypa/build/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/build/compare/1.4.4...1.5.0)

---
updated-dependencies:
- dependency-name: build
  dependency-version: 1.5.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-11 03:04:16 +00:00
dependabot[bot] ef38cb325b chore(deps): bump cachetools from 7.0.6 to 7.1.1
Bumps [cachetools](https://github.com/tkem/cachetools) from 7.0.6 to 7.1.1.
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tkem/cachetools/compare/v7.0.6...v7.1.1)

---
updated-dependencies:
- dependency-name: cachetools
  dependency-version: 7.1.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-11 03:03:56 +00:00
Matthias e0df17ef33 chore: take some endpoints out of alpha 2026-05-10 15:07:58 +02:00
Matthias c2578dca06 chore: update json schema 2026-05-09 09:09:32 +02:00
Matthias c8605ae8fb fix: require minimum 32 characters for JWT secrets 2026-05-09 08:55:35 +02:00
Matthias 22ef7697e8 chore: remove unused variable 2026-05-09 08:34:49 +02:00
Matthias 77cabd291f Merge pull request #13128 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-05-07 07:48:26 +02:00
Freqtrade Bot 59b47a9a67 chore: update binance leverage tiers 2026-05-07 03:37:17 +00:00
Matthias e8eb5cdb4c Merge pull request #13115 from freqtrade/dependabot/pip/develop/uvicorn-0.46.0
chore(deps): bump uvicorn from 0.44.0 to 0.46.0
2026-05-04 09:31:26 +02:00
Matthias c9274a7d04 Merge pull request #13116 from freqtrade/dependabot/pip/develop/ruff-0.15.12
chore(deps-dev): bump ruff from 0.15.11 to 0.15.12
2026-05-04 07:57:25 +02:00
dependabot[bot] c6a481a2dc chore(deps): bump uvicorn from 0.44.0 to 0.46.0
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.44.0 to 0.46.0.
- [Release notes](https://github.com/Kludex/uvicorn/releases)
- [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/uvicorn/compare/0.44.0...0.46.0)

---
updated-dependencies:
- dependency-name: uvicorn
  dependency-version: 0.46.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 05:49:07 +00:00
Matthias 0188d68a85 Merge pull request #13120 from freqtrade/dependabot/pip/develop/fastapi-0.136.1
chore(deps): bump fastapi from 0.136.0 to 0.136.1
2026-05-04 07:47:49 +02:00
Matthias 10c2ec39db Merge pull request #13122 from freqtrade/dependabot/pip/develop/cachetools-7.0.6
chore(deps): bump cachetools from 7.0.5 to 7.0.6
2026-05-04 07:43:53 +02:00
Matthias d0bf09b7e1 Merge pull request #13121 from freqtrade/dependabot/pip/develop/ccxt-4.5.51
chore(deps): bump ccxt from 4.5.50 to 4.5.51
2026-05-04 07:37:35 +02:00
Matthias d2cbae6f50 Merge pull request #13117 from freqtrade/dependabot/pip/develop/pyarrow-24.0.0
chore(deps): bump pyarrow from 23.0.1 to 24.0.0
2026-05-04 07:36:39 +02:00
dependabot[bot] 7e41443db8 chore(deps-dev): bump ruff from 0.15.11 to 0.15.12
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.11 to 0.15.12.
- [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.11...0.15.12)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 05:33:30 +00:00
Matthias 011098209a Merge pull request #13118 from freqtrade/dependabot/pip/develop/pre-commit-4.6.0
chore(deps-dev): bump pre-commit from 4.5.1 to 4.6.0
2026-05-04 07:29:31 +02:00
dependabot[bot] 885a147b48 chore(deps): bump ccxt from 4.5.50 to 4.5.51
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.50 to 4.5.51.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.50...v4.5.51)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.51
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 04:50:13 +00:00
Matthias 1ad03ecb13 Merge pull request #13119 from freqtrade/dependabot/pip/develop/cryptography-47.0.0
chore(deps): bump cryptography from 46.0.7 to 47.0.0
2026-05-04 06:42:38 +02:00
Matthias c46272a7fc chore(dependabot): group bymnasium/sb3 dependencies 2026-05-04 06:41:47 +02:00
Matthias 1d8034ab66 chore: package naming in freqai-rl 2026-05-04 06:41:47 +02:00
Matthias 0b12dcfec9 chore: bump pyarrow armv7 wheel 2026-05-04 06:35:55 +02:00
dependabot[bot] cf541f8e7c chore(deps): bump fastapi from 0.136.0 to 0.136.1
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.136.0 to 0.136.1.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.136.0...0.136.1)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.136.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 04:35:04 +00:00
dependabot[bot] 7c46980e9d chore(deps): bump cachetools from 7.0.5 to 7.0.6
Bumps [cachetools](https://github.com/tkem/cachetools) from 7.0.5 to 7.0.6.
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tkem/cachetools/compare/v7.0.5...v7.0.6)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 04:34:50 +00:00
dependabot[bot] 7c9554349d chore(deps-dev): bump pre-commit from 4.5.1 to 4.6.0
Bumps [pre-commit](https://github.com/pre-commit/pre-commit) from 4.5.1 to 4.6.0.
- [Release notes](https://github.com/pre-commit/pre-commit/releases)
- [Changelog](https://github.com/pre-commit/pre-commit/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pre-commit/pre-commit/compare/v4.5.1...v4.6.0)

---
updated-dependencies:
- dependency-name: pre-commit
  dependency-version: 4.6.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 04:33:58 +00:00
Matthias 2d3ccb841d Merge pull request #13114 from freqtrade/dependabot/pip/develop/certifi-2026.4.22
chore(deps): bump certifi from 2026.2.25 to 2026.4.22
2026-05-04 06:33:43 +02:00
Matthias 68768748dc Merge pull request #13113 from freqtrade/dependabot/pip/develop/pydantic-2.13.3
chore(deps): bump pydantic from 2.13.2 to 2.13.3
2026-05-04 06:33:17 +02:00
Matthias 0b0a4e5df1 Merge pull request #13112 from freqtrade/dependabot/pip/develop/mypy-1.20.2
chore(deps-dev): bump mypy from 1.20.1 to 1.20.2
2026-05-04 06:33:04 +02:00
Matthias 2b47d2e91d Merge pull request #13111 from freqtrade/dependabot/pip/develop/build-1.4.4
chore(deps-dev): bump build from 1.4.3 to 1.4.4
2026-05-04 06:32:27 +02:00
Matthias 60cbf93b8f Merge pull request #13110 from freqtrade/dependabot/pip/develop/packaging-26.2
chore(deps): bump packaging from 26.1 to 26.2
2026-05-04 06:32:18 +02:00
dependabot[bot] 1b67a5b533 chore(deps): bump cryptography from 46.0.7 to 47.0.0
Bumps [cryptography](https://github.com/pyca/cryptography) from 46.0.7 to 47.0.0.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/46.0.7...47.0.0)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 47.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 03:04:35 +00:00
dependabot[bot] 30832e702c chore(deps): bump pyarrow from 23.0.1 to 24.0.0
Bumps [pyarrow](https://github.com/apache/arrow) from 23.0.1 to 24.0.0.
- [Release notes](https://github.com/apache/arrow/releases)
- [Commits](https://github.com/apache/arrow/compare/apache-arrow-23.0.1...apache-arrow-24.0.0)

---
updated-dependencies:
- dependency-name: pyarrow
  dependency-version: 24.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 03:04:22 +00:00
dependabot[bot] 8c8738e5f9 chore(deps): bump certifi from 2026.2.25 to 2026.4.22
Bumps [certifi](https://github.com/certifi/python-certifi) from 2026.2.25 to 2026.4.22.
- [Commits](https://github.com/certifi/python-certifi/compare/2026.02.25...2026.04.22)

---
updated-dependencies:
- dependency-name: certifi
  dependency-version: 2026.4.22
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 03:03:49 +00:00
dependabot[bot] f72d734e8c chore(deps): bump pydantic from 2.13.2 to 2.13.3
Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.13.2 to 2.13.3.
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/v2.13.2...v2.13.3)

---
updated-dependencies:
- dependency-name: pydantic
  dependency-version: 2.13.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 03:03:44 +00:00
dependabot[bot] 110ffde14e chore(deps-dev): bump mypy from 1.20.1 to 1.20.2
Bumps [mypy](https://github.com/python/mypy) from 1.20.1 to 1.20.2.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.20.1...v1.20.2)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 1.20.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 03:03:35 +00:00
dependabot[bot] 2d0ab2d973 chore(deps-dev): bump build from 1.4.3 to 1.4.4
Bumps [build](https://github.com/pypa/build) from 1.4.3 to 1.4.4.
- [Release notes](https://github.com/pypa/build/releases)
- [Changelog](https://github.com/pypa/build/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/build/compare/1.4.3...1.4.4)

---
updated-dependencies:
- dependency-name: build
  dependency-version: 1.4.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 03:03:27 +00:00
dependabot[bot] 8e9615ba6c chore(deps): bump packaging from 26.1 to 26.2
Bumps [packaging](https://github.com/pypa/packaging) from 26.1 to 26.2.
- [Release notes](https://github.com/pypa/packaging/releases)
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/packaging/compare/26.1...26.2)

---
updated-dependencies:
- dependency-name: packaging
  dependency-version: '26.2'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 03:03:19 +00:00
Matthias 55244fb098 Merge pull request #13109 from dtmkeng/improve/maxsize-marketcappairlist
fix: increase marketcap cache size to improve performance
2026-05-03 19:16:28 +02:00
dtmkeng 2087e04a62 fix: reduce marketcap cache size to optimize memory usage 2026-05-03 15:22:31 +07:00
Matthias 5ecd64d17e fix: realized_profit calculation for open trades
while the trade is open, funding fees need to be added on every exit
this keeps realized_profit in line with prior close profits.

closes #13102
2026-05-03 08:50:03 +02:00
dtmkeng 047a107ff3 fix: increase marketcap cache size to improve performance 2026-05-03 02:36:06 +07:00
Matthias 4acdb2eb0c chore: ensure __repr__ always has an order side 2026-05-02 16:25:13 +02:00
Matthias 58a18e1e9c fix: use "toint" for show-trades 2026-05-02 16:21:54 +02:00
Matthias 17b5e9bac7 chore: minor typo fix 2026-05-02 08:27:08 +02:00
Matthias 610d03570c chore: bump version to 2026.5-dev 2026-04-30 07:13:14 +02:00
Matthias 2ea4c4de2f Merge pull request #13105 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-04-30 06:31:39 +02:00
Freqtrade Bot ad8dc57e9b chore: update binance leverage tiers 2026-04-30 03:37:35 +00:00
Matthias dd970f2be1 fix: rate can be None in balance migration 2026-04-29 20:01:50 +02:00
Matthias 63819fa7e0 test: update test for unwatch_ohlcv adjustment
Co-authored-by: Copilot <copilot@github.com>
2026-04-28 20:54:04 +02:00
Matthias bfe05868eb feat: implement unwatchOHLCV
closes #13082

Co-authored-by: Copilot <copilot@github.com>
2026-04-28 20:51:47 +02:00
Matthias 14d66100be Merge pull request #13104 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-04-28 06:36:39 +02:00
Freqtrade Bot afc00c5a2e chore: update pre-commit hooks 2026-04-28 04:15:25 +00:00
Matthias 0b13ddfc0a Merge pull request #13096 from freqtrade/dependabot/pip/develop/pydantic-2.13.2
chore(deps): bump pydantic from 2.12.5 to 2.13.2
2026-04-27 07:30:50 +02:00
Matthias 820000fac4 chore: update dry-run order-id generation to uuid
this is supposed to avoid insert errors in windows CI
due to time imprecisions on windows ...

Co-authored-by: Copilot <copilot@github.com>
2026-04-27 07:17:01 +02:00
Matthias 5710fe4477 Merge pull request #13093 from freqtrade/dependabot/pip/develop/sb3-contrib-gte-2.8.0
chore(deps): update sb3-contrib requirement from >=2.2.1 to >=2.8.0
2026-04-27 07:12:03 +02:00
Matthias 3c84ac6d3f Merge pull request #13097 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-8.1.0
chore(deps): bump astral-sh/setup-uv from 8.0.0 to 8.1.0
2026-04-27 07:06:15 +02:00
Matthias 3116139336 Merge pull request #13095 from freqtrade/dependabot/pip/develop/packaging-26.1
chore(deps): bump packaging from 26.0 to 26.1
2026-04-27 07:00:26 +02:00
Matthias 24e40d3a7a Merge pull request #13092 from freqtrade/dependabot/pip/develop/scipy-e4bafee045
chore(deps-dev): bump scipy-stubs from 1.17.1.3 to 1.17.1.4 in the scipy group
2026-04-27 06:57:32 +02:00
Matthias 5b83dce052 chore: precisely pin sb3_contrib 2026-04-27 06:37:09 +02:00
dependabot[bot] bab128b359 chore(deps): bump pydantic from 2.12.5 to 2.13.2
Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.12.5 to 2.13.2.
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/v2.12.5...v2.13.2)

---
updated-dependencies:
- dependency-name: pydantic
  dependency-version: 2.13.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-27 04:32:29 +00:00
Matthias 875c464a07 chore: bump scipy-stubs in pre-commit config 2026-04-27 06:32:00 +02:00
Matthias 604fddd735 Merge pull request #13094 from freqtrade/dependabot/pip/develop/fastapi-0.136.0
chore(deps): bump fastapi from 0.135.3 to 0.136.0
2026-04-27 06:31:13 +02:00
Matthias bd247f3642 Merge pull request #13098 from freqtrade/dependabot/github_actions/develop/devcontainers/ci-0.3.1900000449
chore(deps): bump devcontainers/ci from 0.3.1900000417 to 0.3.1900000449
2026-04-27 06:30:56 +02:00
Matthias ca6419228c Merge pull request #13099 from freqtrade/dependabot/pip/develop/ruff-0.15.11
chore(deps-dev): bump ruff from 0.15.10 to 0.15.11
2026-04-27 06:30:24 +02:00
Matthias 003cc4dc38 Merge pull request #13100 from freqtrade/dependabot/pip/develop/mike-2.2.0
chore(deps): bump mike from 2.1.4 to 2.2.0
2026-04-27 06:30:10 +02:00
Matthias 41deb75279 Merge pull request #13101 from freqtrade/dependabot/pip/develop/filelock-3.29.0
chore(deps): bump filelock from 3.25.2 to 3.29.0
2026-04-27 06:29:58 +02:00
dependabot[bot] 5a8131caf6 chore(deps): bump filelock from 3.25.2 to 3.29.0
Bumps [filelock](https://github.com/tox-dev/py-filelock) from 3.25.2 to 3.29.0.
- [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.2...3.29.0)

---
updated-dependencies:
- dependency-name: filelock
  dependency-version: 3.29.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-27 03:04:21 +00:00
dependabot[bot] a5cb607311 chore(deps): bump mike from 2.1.4 to 2.2.0
Bumps [mike](https://github.com/jimporter/mike) from 2.1.4 to 2.2.0.
- [Release notes](https://github.com/jimporter/mike/releases)
- [Changelog](https://github.com/jimporter/mike/blob/master/CHANGES.md)
- [Commits](https://github.com/jimporter/mike/compare/v2.1.4...v2.2.0)

---
updated-dependencies:
- dependency-name: mike
  dependency-version: 2.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-27 03:04:14 +00:00
dependabot[bot] cf5ba35bb0 chore(deps-dev): bump ruff from 0.15.10 to 0.15.11
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.10 to 0.15.11.
- [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.10...0.15.11)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-27 03:04:07 +00:00
dependabot[bot] 668f7b7e9c chore(deps): bump devcontainers/ci from 0.3.1900000417 to 0.3.1900000449
Bumps [devcontainers/ci](https://github.com/devcontainers/ci) from 0.3.1900000417 to 0.3.1900000449.
- [Release notes](https://github.com/devcontainers/ci/releases)
- [Commits](https://github.com/devcontainers/ci/compare/8bf61b26e9c3a98f69cb6ce2f88d24ff59b785c6...b63b30de439b47a52267f241112c5b453b673db5)

---
updated-dependencies:
- dependency-name: devcontainers/ci
  dependency-version: 0.3.1900000449
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-27 03:04:06 +00:00
dependabot[bot] e2879f11f5 chore(deps): bump astral-sh/setup-uv from 8.0.0 to 8.1.0
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 8.0.0 to 8.1.0.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/cec208311dfd045dd5311c1add060b2062131d57...08807647e7069bb48b6ef5acd8ec9567f424441b)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 8.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-27 03:03:57 +00:00
dependabot[bot] 700d4ea2ff chore(deps): bump packaging from 26.0 to 26.1
Bumps [packaging](https://github.com/pypa/packaging) from 26.0 to 26.1.
- [Release notes](https://github.com/pypa/packaging/releases)
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/packaging/compare/26.0...26.1)

---
updated-dependencies:
- dependency-name: packaging
  dependency-version: '26.1'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-27 03:03:47 +00:00
dependabot[bot] 1f94154220 chore(deps): bump fastapi from 0.135.3 to 0.136.0
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.135.3 to 0.136.0.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.135.3...0.136.0)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.136.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-27 03:03:37 +00:00
dependabot[bot] 14ee96172a chore(deps): update sb3-contrib requirement from >=2.2.1 to >=2.8.0
Updates the requirements on [sb3-contrib](https://github.com/Stable-Baselines-Team/stable-baselines3-contrib) to permit the latest version.
- [Release notes](https://github.com/Stable-Baselines-Team/stable-baselines3-contrib/releases)
- [Commits](https://github.com/Stable-Baselines-Team/stable-baselines3-contrib/compare/v2.2.1...v2.8.0)

---
updated-dependencies:
- dependency-name: sb3-contrib
  dependency-version: 2.8.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-27 03:03:23 +00:00
dependabot[bot] 159bde944b 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.3 to 1.17.1.4
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.17.1.3...v1.17.1.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-27 03:03:14 +00:00
Matthias 0a49903695 test: update bitget test for lev_prep adjustment 2026-04-26 09:07:02 +02:00
Matthias e5f7d0cbb4 fix: bitget should set margin mode explicitly
Without this, leverage may be set on the wrong margin mode.
the leverage endpoint doesn't allow setting margin mode,
so we must control this manually.
2026-04-26 09:05:58 +02:00
Matthias f17e383157 test: add tests for get_ohlcv and ohlcvs 2026-04-25 13:09:34 +02:00
Matthias 093cc74774 refactor: make klines_last_refresh private 2026-04-25 12:49:31 +02:00
Matthias c34cd6a7dd refactor: don't use exchange_ws internal variables 2026-04-25 12:48:56 +02:00
Matthias 17678f1819 refactor: make klines_last_request private 2026-04-25 08:48:46 +02:00
Matthias 057c51b0cd test: improve tests 2026-04-25 08:47:28 +02:00
Matthias 0858b82d3e chore: add locks to exchange_ws key variables 2026-04-25 08:46:49 +02:00
Matthias 5e624d658f test: add test for startup concurrency 2026-04-25 08:37:19 +02:00
Matthias 3949efadfe chore: improve exchange_ws startup safety 2026-04-25 08:37:09 +02:00
Matthias af1de46cd4 chore: fix minor typos 2026-04-24 18:24:31 +02:00
Matthias 9d0fb9b025 test: add explicit test for continuous_stopped handling 2026-04-24 07:08:48 +02:00
Matthias 6d096c20b0 test: add test for exchange_ws reset connection details 2026-04-24 07:06:07 +02:00
Matthias 05c3360892 chore: harden ws stop cleanup 2026-04-24 06:37:05 +02:00
Matthias f9be1ac82c chore: ignore ws shutdown network errors 2026-04-24 06:33:04 +02:00
Matthias 8e9d193791 chore: improved shutdown wording 2026-04-24 06:32:55 +02:00
Matthias cdc01122d5 chore: improve ws shutdown 2026-04-24 06:32:55 +02:00
Matthias a625cbecff chore: improve shutdown for exchange_ws 2026-04-24 06:32:55 +02:00
Matthias 2e4b92ea6c Merge pull request #13083 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-04-23 06:33:59 +02:00
Freqtrade Bot f2f17f6d7b chore: update binance leverage tiers 2026-04-23 03:36:46 +00:00
Matthias 3e3436e432 test: add explicit test for db_migration 2026-04-21 07:17:32 +02:00
Matthias 9dfbe8cf63 refactor: move db-migration to persistence 2026-04-21 07:17:05 +02:00
Matthias 85af9dd3fc fix: migrate wallet_history table 2026-04-21 07:16:39 +02:00
Matthias 72f9e9a051 test: update test for wallet-history_id column 2026-04-21 07:15:20 +02:00
Matthias 2549808b52 fix: add wallet_history_id to set_sequence_id logic 2026-04-21 07:15:20 +02:00
Matthias ef1e81f514 Merge pull request #13081 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-04-21 06:52:10 +02:00
Matthias eabaef0da2 fix(ci): align action version comment 2026-04-21 06:39:00 +02:00
Matthias f78e9c9014 chore: bump ccxt to 4.5.50 2026-04-21 06:34:28 +02:00
Freqtrade Bot ab6f3b8222 chore: update pre-commit hooks 2026-04-21 04:02:06 +00:00
Matthias 3e42dfff13 Merge pull request #13066 from ABSllk/fix-bitget-stoploss
Add pos_loss for Bitget futures stoploss cancellation
2026-04-20 20:55:31 +02:00
Matthias af2e741465 test: add test for bitget stoploss canceling 2026-04-20 20:03:58 +02:00
Matthias 0fa3459271 Merge pull request #13069 from freqtrade/dependabot/pip/develop/types-1f2dda44ba
chore(deps-dev): bump the types group across 1 directory with 4 updates
2026-04-20 07:18:36 +02:00
Matthias ba3d29b100 Merge pull request #13072 from freqtrade/dependabot/pip/develop/ruff-0.15.10
chore(deps-dev): bump ruff from 0.15.9 to 0.15.10
2026-04-20 07:08:30 +02:00
Matthias d1132d2b13 Merge pull request #13074 from freqtrade/dependabot/github_actions/develop/peter-evans/create-pull-request-8.1.1
chore(deps): bump peter-evans/create-pull-request from 8.1.0 to 8.1.1
2026-04-20 07:07:10 +02:00
Matthias 0850f048e7 chore: align pre-commit-config type versions 2026-04-20 06:38:13 +02:00
Matthias 56f6da9026 Merge pull request #13080 from freqtrade/dependabot/pip/develop/ccxt-4.5.49
chore(deps): bump ccxt from 4.5.48 to 4.5.49
2026-04-20 06:34:05 +02:00
Matthias 470a7bf285 Merge pull request #13079 from freqtrade/dependabot/pip/develop/uvicorn-0.44.0
chore(deps): bump uvicorn from 0.43.0 to 0.44.0
2026-04-20 06:32:39 +02:00
Matthias c16a951555 Merge pull request #13078 from freqtrade/dependabot/pip/develop/rich-15.0.0
chore(deps): bump rich from 14.3.3 to 15.0.0
2026-04-20 06:32:14 +02:00
dependabot[bot] 0013b3639d chore(deps-dev): bump the types group with 4 updates
Bumps the types group with 4 updates: [types-cachetools](https://github.com/python/typeshed), [types-requests](https://github.com/python/typeshed), [types-tabulate](https://github.com/python/typeshed) and [types-python-dateutil](https://github.com/python/typeshed).


Updates `types-cachetools` from 6.2.0.20260317 to 6.2.0.20260408
- [Commits](https://github.com/python/typeshed/commits)

Updates `types-requests` from 2.33.0.20260402 to 2.33.0.20260408
- [Commits](https://github.com/python/typeshed/commits)

Updates `types-tabulate` from 0.10.0.20260308 to 0.10.0.20260408
- [Commits](https://github.com/python/typeshed/commits)

Updates `types-python-dateutil` from 2.9.0.20260402 to 2.9.0.20260408
- [Commits](https://github.com/python/typeshed/commits)

---
updated-dependencies:
- dependency-name: types-cachetools
  dependency-version: 6.2.0.20260408
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
- dependency-name: types-requests
  dependency-version: 2.33.0.20260408
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
- dependency-name: types-tabulate
  dependency-version: 0.10.0.20260408
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
- dependency-name: types-python-dateutil
  dependency-version: 2.9.0.20260408
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-20 04:32:07 +00:00
Matthias fdf182df55 Merge pull request #13070 from freqtrade/dependabot/github_actions/develop/actions-4684ddd577
chore(deps): bump actions/upload-artifact from 7.0.0 to 7.0.1 in the actions group
2026-04-20 06:31:45 +02:00
dependabot[bot] f3d227270e chore(deps-dev): bump ruff from 0.15.9 to 0.15.10
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.9 to 0.15.10.
- [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.9...0.15.10)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-20 04:31:41 +00:00
Matthias c1a8b5520a Merge pull request #13071 from freqtrade/dependabot/pip/develop/nbconvert-7.17.1
chore(deps-dev): bump nbconvert from 7.17.0 to 7.17.1
2026-04-20 06:31:18 +02:00
Matthias d4a6fbc7c0 Merge pull request #13077 from freqtrade/dependabot/pip/develop/build-1.4.3
chore(deps-dev): bump build from 1.4.2 to 1.4.3
2026-04-20 06:30:40 +02:00
Matthias 8c5f63127d Merge pull request #13073 from freqtrade/dependabot/pip/develop/mypy-1.20.1
chore(deps-dev): bump mypy from 1.20.0 to 1.20.1
2026-04-20 06:30:07 +02:00
Matthias d9e0a2837a Merge pull request #13076 from freqtrade/dependabot/pip/develop/plotly-6.7.0
chore(deps): bump plotly from 6.6.0 to 6.7.0
2026-04-20 06:29:24 +02:00
Matthias 24bb7649eb Merge pull request #13075 from freqtrade/dependabot/github_actions/develop/zizmorcore/zizmor-action-0.5.3
chore(deps): bump zizmorcore/zizmor-action from 0.5.2 to 0.5.3
2026-04-20 06:29:09 +02:00
dependabot[bot] 4ddec7463a chore(deps): bump ccxt from 4.5.48 to 4.5.49
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.48 to 4.5.49.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.48...v4.5.49)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.49
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-20 03:04:33 +00:00
dependabot[bot] 5ddd4d4583 chore(deps): bump uvicorn from 0.43.0 to 0.44.0
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.43.0 to 0.44.0.
- [Release notes](https://github.com/Kludex/uvicorn/releases)
- [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/uvicorn/compare/0.43.0...0.44.0)

---
updated-dependencies:
- dependency-name: uvicorn
  dependency-version: 0.44.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-20 03:04:18 +00:00
dependabot[bot] 11e35c467f chore(deps): bump rich from 14.3.3 to 15.0.0
Bumps [rich](https://github.com/Textualize/rich) from 14.3.3 to 15.0.0.
- [Release notes](https://github.com/Textualize/rich/releases)
- [Changelog](https://github.com/Textualize/rich/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Textualize/rich/compare/v14.3.3...v15.0.0)

---
updated-dependencies:
- dependency-name: rich
  dependency-version: 15.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-20 03:04:11 +00:00
dependabot[bot] 053134297c chore(deps-dev): bump build from 1.4.2 to 1.4.3
Bumps [build](https://github.com/pypa/build) from 1.4.2 to 1.4.3.
- [Release notes](https://github.com/pypa/build/releases)
- [Changelog](https://github.com/pypa/build/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/build/compare/1.4.2...1.4.3)

---
updated-dependencies:
- dependency-name: build
  dependency-version: 1.4.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-20 03:04:06 +00:00
dependabot[bot] b97f037472 chore(deps): bump plotly from 6.6.0 to 6.7.0
Bumps [plotly](https://github.com/plotly/plotly.py) from 6.6.0 to 6.7.0.
- [Release notes](https://github.com/plotly/plotly.py/releases)
- [Changelog](https://github.com/plotly/plotly.py/blob/main/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.py/compare/v6.6.0...v6.7.0)

---
updated-dependencies:
- dependency-name: plotly
  dependency-version: 6.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-20 03:04:01 +00:00
dependabot[bot] 097ffd87b3 chore(deps): bump zizmorcore/zizmor-action from 0.5.2 to 0.5.3
Bumps [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) from 0.5.2 to 0.5.3.
- [Release notes](https://github.com/zizmorcore/zizmor-action/releases)
- [Commits](https://github.com/zizmorcore/zizmor-action/compare/71321a20a9ded102f6e9ce5718a2fcec2c4f70d8...b1d7e1fb5de872772f31590499237e7cce841e8e)

---
updated-dependencies:
- dependency-name: zizmorcore/zizmor-action
  dependency-version: 0.5.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-20 03:04:00 +00:00
dependabot[bot] cd58bba697 chore(deps): bump peter-evans/create-pull-request from 8.1.0 to 8.1.1
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 8.1.0 to 8.1.1.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/c0f553fe549906ede9cf27b5156039d195d2ece0...5f6978faf089d4d20b00c7766989d076bb2fc7f1)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-version: 8.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-20 03:03:56 +00:00
dependabot[bot] 7d455c7e48 chore(deps-dev): bump mypy from 1.20.0 to 1.20.1
Bumps [mypy](https://github.com/python/mypy) from 1.20.0 to 1.20.1.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.20.0...v1.20.1)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 1.20.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-20 03:03:54 +00:00
dependabot[bot] 9d019f1018 chore(deps-dev): bump nbconvert from 7.17.0 to 7.17.1
Bumps [nbconvert](https://github.com/jupyter/nbconvert) from 7.17.0 to 7.17.1.
- [Release notes](https://github.com/jupyter/nbconvert/releases)
- [Changelog](https://github.com/jupyter/nbconvert/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jupyter/nbconvert/compare/v7.17.0...v7.17.1)

---
updated-dependencies:
- dependency-name: nbconvert
  dependency-version: 7.17.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

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


Updates `actions/upload-artifact` from 7.0.0 to 7.0.1
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/bbbca2ddaa5d8feaa63e36b76fdaad77386f024f...043fb46d1a93c77aae656e7c1c64a875d1fc6a0a)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-20 03:03:20 +00:00
ABS b467eff8be fix(bitget): add legacy fallback for futures stoploss cancel 2026-04-20 00:11:23 +08:00
ABS a02c84ecda Merge branch 'freqtrade:develop' into fix-bitget-stoploss 2026-04-19 23:15:35 +08:00
Matthias 84535a1404 chore: add migration path for kvstore 2026-04-19 13:09:40 +02:00
Matthias 832fb7044c fix: kvstore key should allow 50 characters
closes #13068
2026-04-19 13:09:10 +02:00
Matthias 55361f0a9e fix: ensure proper quoting in migrations 2026-04-19 13:04:23 +02:00
Matthias c1795c79f3 Merge pull request #13048 from freqtrade/dependabot/pip/develop/pandas-3.0.2
chore(deps): bump pandas from 2.3.3 to 3.0.2
2026-04-17 06:21:04 +02:00
Matthias ee65ffc68f fix: align telegram output better 2026-04-16 20:17:05 +02:00
ABS 284446d782 Merge branch 'fix-bitget-stoploss' of https://github.com/ABSllk/freqtrade into fix-bitget-stoploss 2026-04-17 00:18:59 +08:00
ABS 6e270c5d06 fix(bitget): Use correct planType for Bitget futures stoploss cancellation 2026-04-17 00:18:45 +08:00
Matthias 143726edc1 Merge pull request #13064 from freqtrade/maint/remove_python_action
Remove python setup action
2026-04-16 06:56:13 +02:00
Matthias d27de49266 Merge pull request #13065 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-04-16 06:44:52 +02:00
Matthias 7e3e206ab3 chore(ci): move leverage tiers update by 1 hour 2026-04-16 06:35:04 +02:00
Freqtrade Bot 12ccd292b1 chore: update binance leverage tiers 2026-04-16 04:28:50 +00:00
Matthias f1828d72ac chore(ci): improved task naming 2026-04-15 19:37:02 +02:00
Matthias 0248c20999 chore(ci): remove actions/python - uv can do this on it's own 2026-04-15 19:32:33 +02:00
Matthias 63f2a8bb68 chore: remove shorter install allows 2026-04-15 06:55:21 +02:00
Matthias b1747fe9ea docs: clarify plot_config setup 2026-04-15 06:49:19 +02:00
Matthias d55c479886 Merge pull request #13053 from ABSllk/fix-bitget-stoploss
bitget - update  stopLossPrice mapping for futures
2026-04-14 21:15:05 +02:00
Matthias b71f91a156 test: attempted reduction of test flukes by resetting recwarn 2026-04-14 21:07:16 +02:00
Matthias 7105279654 fix(bitget): handle old and new stoploss order types 2026-04-14 20:41:18 +02:00
Matthias 812dc64cd7 chore: bump cryptography exclusion to 6 days 2026-04-14 07:18:09 +02:00
Matthias 019f1ab28d Merge pull request #13062 from freqtrade/dependabot/pip/pytest-9.0.3
chore(deps-dev): bump pytest from 9.0.2 to 9.0.3
2026-04-14 07:15:04 +02:00
Matthias ff7e6c3737 chore: allow pytest to be newer temporarily 2026-04-14 06:34:14 +02:00
Matthias ac3e0899a3 Merge pull request #13063 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-04-14 06:32:18 +02:00
Freqtrade Bot 0568c7b945 chore: update pre-commit hooks 2026-04-14 04:01:05 +00:00
dependabot[bot] 3a31337e43 chore(deps-dev): bump pytest from 9.0.2 to 9.0.3
Bumps [pytest](https://github.com/pytest-dev/pytest) from 9.0.2 to 9.0.3.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/9.0.2...9.0.3)

---
updated-dependencies:
- dependency-name: pytest
  dependency-version: 9.0.3
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-14 02:29:25 +00:00
Matthias 2c5dc72985 chore: ensure date-column is in ms range 2026-04-13 20:09:47 +02:00
Matthias 16547dbdbe fix: improve json trades storing for pandas3 2026-04-13 18:13:40 +02:00
Matthias 412e112c0f test: fix pandas3 test 2026-04-13 18:13:40 +02:00
Matthias cd5ea969c4 test: update test pandas frequency usage 2026-04-13 18:13:40 +02:00
Matthias 15bba1b0d0 chore: remove some deprecated functions from datakitchen 2026-04-13 18:13:40 +02:00
dependabot[bot] 755a426992 chore(deps): bump pandas from 2.3.3 to 3.0.2
Bumps [pandas](https://github.com/pandas-dev/pandas) from 2.3.3 to 3.0.2.
- [Release notes](https://github.com/pandas-dev/pandas/releases)
- [Commits](https://github.com/pandas-dev/pandas/compare/v2.3.3...v3.0.2)

---
updated-dependencies:
- dependency-name: pandas
  dependency-version: 3.0.2
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-13 18:13:40 +02:00
Matthias c19982dd36 chore: use string aliases for astype calls 2026-04-13 18:06:59 +02:00
Matthias 74ba9d76a2 fix: use as_unit instead of int math 2026-04-13 07:18:48 +02:00
Matthias 187d06b5ba fix: use pd.notna to check for empty strings 2026-04-13 07:10:09 +02:00
Matthias 202326875d Merge pull request #13055 from freqtrade/dependabot/pip/develop/sqlalchemy-2.0.49
chore(deps): bump sqlalchemy from 2.0.48 to 2.0.49
2026-04-13 06:54:31 +02:00
Matthias 895a9f351f chore: bump sqlalchemy in pre-commit config 2026-04-13 06:32:28 +02:00
Matthias 48b67f7bfb Merge pull request #13059 from freqtrade/dependabot/pip/develop/ccxt-4.5.48
chore(deps): bump ccxt from 4.5.47 to 4.5.48
2026-04-13 06:31:42 +02:00
Matthias fcf5785367 Merge pull request #13058 from freqtrade/dependabot/pip/develop/technical-1.6.0
chore(deps): bump technical from 1.5.4 to 1.6.0
2026-04-13 06:31:05 +02:00
Matthias 85e84d8b69 Merge pull request #13057 from freqtrade/dependabot/pip/develop/uvicorn-0.43.0
chore(deps): bump uvicorn from 0.42.0 to 0.43.0
2026-04-13 06:30:53 +02:00
Matthias b8bd4604fa Merge pull request #13056 from freqtrade/dependabot/github_actions/develop/docker-cb5fd4910d
chore(deps): bump docker/login-action from 4.0.0 to 4.1.0 in the docker group
2026-04-13 06:30:38 +02:00
Matthias f7080ac11d Merge pull request #13054 from freqtrade/dependabot/pip/develop/ruff-0.15.9
chore(deps-dev): bump ruff from 0.15.8 to 0.15.9
2026-04-13 06:30:18 +02:00
dependabot[bot] a9b1fd219b chore(deps): bump ccxt from 4.5.47 to 4.5.48
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.47 to 4.5.48.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.47...v4.5.48)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.48
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-13 03:04:23 +00:00
dependabot[bot] 3da3290224 chore(deps): bump technical from 1.5.4 to 1.6.0
Bumps [technical](https://github.com/freqtrade/technical) from 1.5.4 to 1.6.0.
- [Release notes](https://github.com/freqtrade/technical/releases)
- [Commits](https://github.com/freqtrade/technical/compare/1.5.4...1.6.0)

---
updated-dependencies:
- dependency-name: technical
  dependency-version: 1.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-13 03:04:11 +00:00
dependabot[bot] 2f8d82e0b0 chore(deps): bump uvicorn from 0.42.0 to 0.43.0
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.42.0 to 0.43.0.
- [Release notes](https://github.com/Kludex/uvicorn/releases)
- [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/uvicorn/compare/0.42.0...0.43.0)

---
updated-dependencies:
- dependency-name: uvicorn
  dependency-version: 0.43.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-13 03:04:03 +00:00
dependabot[bot] 94e52f5241 chore(deps): bump docker/login-action in the docker group
Bumps the docker group with 1 update: [docker/login-action](https://github.com/docker/login-action).


Updates `docker/login-action` from 4.0.0 to 4.1.0
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/b45d80f862d83dbcd57f89517bcf500b2ab88fb2...4907a6ddec9925e35a0a9e82d7399ccc52663121)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 4.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-13 03:04:02 +00:00
dependabot[bot] df9469d195 chore(deps): bump sqlalchemy from 2.0.48 to 2.0.49
Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 2.0.48 to 2.0.49.
- [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases)
- [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst)
- [Commits](https://github.com/sqlalchemy/sqlalchemy/commits)

---
updated-dependencies:
- dependency-name: sqlalchemy
  dependency-version: 2.0.49
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-13 03:03:59 +00:00
dependabot[bot] c9d4276c66 chore(deps-dev): bump ruff from 0.15.8 to 0.15.9
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.8 to 0.15.9.
- [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.8...0.15.9)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-13 03:03:36 +00:00
Matthias 12f37b7575 chore: more generic datetime selection 2026-04-12 19:54:44 +02:00
Matthias 51d61bc6a8 chore: don't use microsecond precision for 2026-04-12 19:52:18 +02:00
Matthias 79ea1ba1d5 fix: use is_string_dtype to check for object/string types 2026-04-12 19:50:27 +02:00
Matthias f6f0180fc1 fix: use more stable "date to ms" method 2026-04-12 13:35:36 +02:00
Matthias 33211c8eb1 chore: don't use deprecated resmapling frequency 2026-04-12 13:25:07 +02:00
Matthias c60d96922d chore: improve type safety 2026-04-12 10:38:44 +02:00
Matthias 45d4c5d036 docs: update backtesting docs 2026-04-12 10:07:05 +02:00
Matthias 09106ecbe0 chore: further reorder backtest output 2026-04-12 10:06:59 +02:00
Matthias da9f592d3d docs: update backtesting docs 2026-04-12 10:03:06 +02:00
Matthias 22707d6c04 test: update test with new metrics 2026-04-12 09:51:54 +02:00
Matthias 2d930f1fff chore: improved wallet stat drawdown safety 2026-04-12 09:33:39 +02:00
Matthias 44919adae4 feat: improve backtest-output 2026-04-12 09:27:47 +02:00
Matthias a28545a67a feat: improved backtst output 2026-04-12 09:18:46 +02:00
Matthias 76c09299a9 feat: calculate complete drawdown metrics from wallet (incl. underwater) 2026-04-12 09:18:37 +02:00
Matthias 173c75c08c feat: improve wording on metrics 2026-04-12 09:00:14 +02:00
Matthias dfa2db8575 docs: add new fields to the docs 2026-04-12 09:00:04 +02:00
ABS 81fcd5ea5a fix(bitget): use stopLossPrice mapping for futures stoploss handling 2026-04-12 02:42:35 +08:00
Matthias 5e0eb5da10 chore: improved backtest-output ordering 2026-04-11 18:15:36 +02:00
Matthias 64ceb028ac test: add test for wallet based output 2026-04-11 17:25:58 +02:00
Matthias bc0c8ffb71 feat: add wallet based metrics to backtest output 2026-04-11 17:25:45 +02:00
Matthias 624be0c469 feat: add calmar_from_balance 2026-04-11 17:10:05 +02:00
Matthias bcd9023a8d feat: add max-drawdown from wallet balance 2026-04-11 17:09:37 +02:00
Matthias fba843cb61 refactor: extract balance df checks for future reuse 2026-04-11 17:05:55 +02:00
Matthias 6210927bdb feat: add sortino_from_balance calculation 2026-04-11 16:59:55 +02:00
Matthias c2b95090f7 refactor: reusable "daily_returns_from_balance" method 2026-04-11 16:59:55 +02:00
Matthias 017df564ce refactor: extract annualizated ratio calculation 2026-04-11 16:43:28 +02:00
Matthias 97badd0d3b test: add tests for sharpe based on balance 2026-04-11 16:43:28 +02:00
Matthias f3c84d6a3c feat: calculate sharpe-ratio from historic balance snapshots 2026-04-11 16:42:08 +02:00
Matthias 68d514db91 test: split test_btanalysis and test_metrics 2026-04-11 16:41:07 +02:00
Matthias f838db6409 fix: show balance also for old backtests 2026-04-11 13:38:19 +02:00
Matthias e8501dfb7a chore: fix double-space typos 2026-04-11 13:09:13 +02:00
Matthias e5a8aae831 docs: Update hyperliquid vault / subaccount documentation 2026-04-11 09:05:52 +02:00
Matthias 174a857d72 Merge pull request #12763 from freqtrade/feat/tb-lightgbm
feat: Add tensorboard callback to lightgbm
2026-04-10 06:39:18 +02:00
Matthias b66b0c3c9b Merge pull request #13038 from freqtrade/dependabot/pip/cryptography-46.0.7
chore(deps): bump cryptography from 46.0.6 to 46.0.7
2026-04-09 19:43:20 +02:00
Matthias 85ce0a1840 chore: allow cryptography security upgrades 2026-04-09 19:26:48 +02:00
dependabot[bot] 5dd2ad532b chore(deps): bump cryptography from 46.0.6 to 46.0.7
Bumps [cryptography](https://github.com/pyca/cryptography) from 46.0.6 to 46.0.7.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/46.0.6...46.0.7)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 46.0.7
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-09 19:26:46 +02:00
Matthias 68ea331703 Merge pull request #13047 from freqtrade/dependabot/pip/develop/ccxt-4.5.47
chore(deps): bump ccxt from 4.5.46 to 4.5.47
2026-04-09 18:25:58 +02:00
dependabot[bot] d93ae4e92d chore(deps): bump ccxt from 4.5.46 to 4.5.47
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.46 to 4.5.47.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.46...v4.5.47)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.47
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-09 11:45:21 +00:00
Matthias 6dfc64b5b9 Merge pull request #13043 from freqtrade/dependabot/pip/develop/aiohttp-3.13.5
chore(deps): bump aiohttp from 3.13.4 to 3.13.5
2026-04-09 13:43:55 +02:00
Matthias 44880fdc0d Merge pull request #13041 from freqtrade/dependabot/pip/develop/types-2917a68c1c
chore(deps-dev): bump the types group with 2 updates
2026-04-09 13:28:17 +02:00
Matthias 0b838d2e7c Merge pull request #13044 from freqtrade/dependabot/pip/develop/mypy-1.20.0
chore(deps-dev): bump mypy from 1.19.1 to 1.20.0
2026-04-09 13:27:40 +02:00
Matthias 6c218c8647 Merge pull request #13042 from freqtrade/dependabot/github_actions/develop/pypa/gh-action-pypi-publish-1.14.0
chore(deps): bump pypa/gh-action-pypi-publish from 1.13.0 to 1.14.0
2026-04-09 09:30:56 +02:00
Matthias 1479b0becd Merge pull request #13049 from freqtrade/dependabot/pip/develop/stable-baselines3-2.8.0
chore(deps): bump stable-baselines3 from 2.7.1 to 2.8.0
2026-04-09 09:30:40 +02:00
Matthias 7792a0b86f Merge pull request #13050 from freqtrade/dependabot/pip/develop/fastapi-0.135.3
chore(deps): bump fastapi from 0.135.2 to 0.135.3
2026-04-09 09:22:41 +02:00
Matthias 7dc7511eef Merge pull request #13046 from freqtrade/dependabot/pip/develop/requests-2.33.1
chore(deps): bump requests from 2.33.0 to 2.33.1
2026-04-09 09:09:43 +02:00
Matthias c5a46dff84 Merge pull request #13045 from freqtrade/dependabot/pip/develop/orjson-3.11.8
chore(deps): bump orjson from 3.11.7 to 3.11.8
2026-04-09 08:59:19 +02:00
dependabot[bot] 48b178b353 chore(deps): bump pypa/gh-action-pypi-publish from 1.13.0 to 1.14.0
Bumps [pypa/gh-action-pypi-publish](https://github.com/pypa/gh-action-pypi-publish) from 1.13.0 to 1.14.0.
- [Release notes](https://github.com/pypa/gh-action-pypi-publish/releases)
- [Commits](https://github.com/pypa/gh-action-pypi-publish/compare/ed0c53931b1dc9bd32cbe73a98c7f6766f8a527e...cef221092ed1bacb1cc03d23a2d87d1d172e277b)

---
updated-dependencies:
- dependency-name: pypa/gh-action-pypi-publish
  dependency-version: 1.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-09 06:16:11 +00:00
dependabot[bot] b5ac870eac chore(deps): bump stable-baselines3 from 2.7.1 to 2.8.0
Bumps [stable-baselines3](https://github.com/DLR-RM/stable-baselines3) from 2.7.1 to 2.8.0.
- [Release notes](https://github.com/DLR-RM/stable-baselines3/releases)
- [Commits](https://github.com/DLR-RM/stable-baselines3/compare/v2.7.1...v2.8.0)

---
updated-dependencies:
- dependency-name: stable-baselines3
  dependency-version: 2.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-09 06:15:15 +00:00
dependabot[bot] 968dea5b66 chore(deps): bump aiohttp from 3.13.4 to 3.13.5
---
updated-dependencies:
- dependency-name: aiohttp
  dependency-version: 3.13.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-09 06:15:05 +00:00
dependabot[bot] c4aca0c2b9 chore(deps-dev): bump mypy from 1.19.1 to 1.20.0
Bumps [mypy](https://github.com/python/mypy) from 1.19.1 to 1.20.0.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.19.1...v1.20.0)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 1.20.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-09 06:11:44 +00:00
dependabot[bot] 3872906a57 chore(deps): bump orjson from 3.11.7 to 3.11.8
Bumps [orjson](https://github.com/ijl/orjson) from 3.11.7 to 3.11.8.
- [Release notes](https://github.com/ijl/orjson/releases)
- [Changelog](https://github.com/ijl/orjson/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ijl/orjson/compare/3.11.7...3.11.8)

---
updated-dependencies:
- dependency-name: orjson
  dependency-version: 3.11.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-09 06:09:08 +00:00
dependabot[bot] 55e4250bcd chore(deps): bump requests from 2.33.0 to 2.33.1
Bumps [requests](https://github.com/psf/requests) from 2.33.0 to 2.33.1.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.33.0...v2.33.1)

---
updated-dependencies:
- dependency-name: requests
  dependency-version: 2.33.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-09 06:08:26 +00:00
dependabot[bot] 90d538d41a chore(deps): bump fastapi from 0.135.2 to 0.135.3
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.135.2 to 0.135.3.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.135.2...0.135.3)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.135.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-09 06:08:00 +00:00
Matthias 4762abd13f chore: zizmor exception 2026-04-09 06:54:15 +02:00
Matthias 724ed63c41 chore: bump types in pre-commit config 2026-04-09 06:47:26 +02:00
dependabot[bot] 1dbb0f0ee7 chore(deps-dev): bump the types group with 2 updates
Bumps the types group with 2 updates: [types-requests](https://github.com/python/typeshed) and [types-python-dateutil](https://github.com/python/typeshed).


Updates `types-requests` from 2.33.0.20260327 to 2.33.0.20260402
- [Commits](https://github.com/python/typeshed/commits)

Updates `types-python-dateutil` from 2.9.0.20260323 to 2.9.0.20260402
- [Commits](https://github.com/python/typeshed/commits)

---
updated-dependencies:
- dependency-name: types-requests
  dependency-version: 2.33.0.20260402
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
- dependency-name: types-python-dateutil
  dependency-version: 2.9.0.20260402
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-09 04:45:48 +00:00
Matthias e5baa27d51 fix: dependabot currently doesn't support cooldown for docker
ref: https://github.com/dependabot/dependabot-core/issues/14044
2026-04-09 06:44:23 +02:00
Matthias 7c43833a2d chore: explicitly disable demo mode for binance 2026-04-09 06:39:51 +02:00
Matthias ff7cddf4ca docs: add documentation for demo bybit mode 2026-04-09 06:38:24 +02:00
Matthias 36b427cd3b feat: be clear on the use of demo exchanges 2026-04-09 06:38:24 +02:00
Matthias 8b204c75cb test: test validate_demo / dry-run combo 2026-04-09 06:38:24 +02:00
Matthias f56ea7a6ca feat: validate demo-trading and dry-run incompatibility 2026-04-09 06:38:24 +02:00
Matthias 39569df42a feat: expose demo mode via show_config 2026-04-09 06:38:24 +02:00
Matthias 08f0f28e90 feat: enable demo trading mode for ccxt 2026-04-09 06:38:24 +02:00
Matthias d8e0d41001 feat: clearly highlight if bot is starting in demo mode 2026-04-09 06:38:24 +02:00
Matthias 1ac68d6161 feat: show message when enabling demo trading mode 2026-04-09 06:38:24 +02:00
Matthias e7f9059ff4 test: add test for demo trading validation 2026-04-09 06:38:24 +02:00
Matthias 98fd645df6 feat: enable config validation for demo_trading 2026-04-09 06:38:24 +02:00
Matthias 86b8eae344 feat: add supports_demo_trading ft_has key 2026-04-09 06:38:24 +02:00
Matthias 8e62158145 Merge pull request #13039 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-04-09 06:32:47 +02:00
Matthias 6a5fb9af42 chore: remove aiohttp shorter exclude-newer exception 2026-04-09 06:32:09 +02:00
Freqtrade Bot 02125f1883 chore: update binance leverage tiers 2026-04-09 04:18:20 +00:00
Matthias ed6899aad6 Merge pull request #13019 from freqtrade/feat/capture_wallets
Capture wallet balance
2026-04-07 07:16:34 +02:00
Matthias 4cced59530 Merge pull request #13032 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-04-07 07:01:18 +02:00
Matthias 70b24fd0c1 test: reset pairlocks pior to running test 2026-04-07 06:44:25 +02:00
Freqtrade Bot d026b67dee chore: update pre-commit hooks 2026-04-07 03:56:56 +00:00
Matthias c906e146fc test: add reset_locks to the end of the new test 2026-04-06 10:24:41 +02:00
Matthias 8890cdbcdb chore: shorter wording in docstring 2026-04-06 10:05:26 +02:00
Matthias 6712d20578 test: Add test for new pairlock deduplication 2026-04-06 09:58:58 +02:00
Matthias 9582bd3cd7 feat: don't allow re-creation of existing logs
This prevents lock spam - where 100ds of identical rows can be inserted
into the database
2026-04-06 09:58:35 +02:00
Matthias 04990a888b fix: improve bot cleanup methods for safer shutdown 2026-04-06 09:26:28 +02:00
Matthias e6aa098c4e Merge pull request #13022 from freqtrade/dependabot/pip/develop/types-5079a209b0
chore(deps-dev): bump the types group across 1 directory with 2 updates
2026-04-06 09:15:39 +02:00
Matthias c27f719fb5 Merge pull request #13021 from AchmadFathoni/develop
Enforce SKDecimal 'name' parameter as string
2026-04-06 09:06:51 +02:00
Matthias e45d781630 chore: bump types in pre-commit config 2026-04-06 08:58:56 +02:00
dependabot[bot] 63ac3bef01 chore(deps-dev): bump the types group with 2 updates
Bumps the types group with 2 updates: [types-requests](https://github.com/python/typeshed) and [types-python-dateutil](https://github.com/python/typeshed).


Updates `types-requests` from 2.32.4.20260107 to 2.33.0.20260327
- [Commits](https://github.com/python/typeshed/commits)

Updates `types-python-dateutil` from 2.9.0.20260305 to 2.9.0.20260323
- [Commits](https://github.com/python/typeshed/commits)

---
updated-dependencies:
- dependency-name: types-requests
  dependency-version: 2.33.0.20260327
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: types
- dependency-name: types-python-dateutil
  dependency-version: 2.9.0.20260323
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-06 06:38:04 +00:00
Matthias 753bf99b95 Merge pull request #13031 from freqtrade/dependabot/pip/develop/torch-2.11.0
chore(deps): bump torch from 2.10.0 to 2.11.0
2026-04-06 08:36:48 +02:00
Matthias f13a02e2ec Merge pull request #13023 from freqtrade/dependabot/pip/develop/numpy-2.4.4
chore(deps): bump numpy from 2.4.3 to 2.4.4
2026-04-06 08:35:20 +02:00
Matthias b7b1bdda27 Merge pull request #13030 from freqtrade/dependabot/pip/develop/ccxt-4.5.46
chore(deps): bump ccxt from 4.5.45 to 4.5.46
2026-04-06 08:35:01 +02:00
Matthias 262c002a74 Merge pull request #13025 from freqtrade/dependabot/pip/develop/cmaes-0.13.0
chore(deps): bump cmaes from 0.12.0 to 0.13.0
2026-04-06 08:32:51 +02:00
Matthias a68d943eeb Merge pull request #13029 from freqtrade/dependabot/github_actions/develop/codecov/codecov-action-6.0.0
chore(deps): bump codecov/codecov-action from 5.5.2 to 6.0.0
2026-04-06 08:32:30 +02:00
Matthias a4c6cbcfd4 Merge pull request #13027 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-8.0.0
chore(deps): bump astral-sh/setup-uv from 7.3.1 to 8.0.0
2026-04-06 08:32:05 +02:00
Matthias f151639677 Merge pull request #13026 from freqtrade/dependabot/pip/develop/ruff-0.15.8
chore(deps-dev): bump ruff from 0.15.7 to 0.15.8
2026-04-06 08:30:43 +02:00
Matthias 0f4d1df59f Merge pull request #13024 from freqtrade/dependabot/pip/develop/fastapi-0.135.2
chore(deps): bump fastapi from 0.135.1 to 0.135.2
2026-04-06 08:30:30 +02:00
Matthias 043281ba1b Merge pull request #13028 from freqtrade/dependabot/pip/develop/pymdown-extensions-10.21.2
chore(deps): bump pymdown-extensions from 10.21 to 10.21.2
2026-04-06 08:30:03 +02:00
dependabot[bot] a33def834a chore(deps): bump torch from 2.10.0 to 2.11.0
Bumps [torch](https://github.com/pytorch/pytorch) from 2.10.0 to 2.11.0.
- [Release notes](https://github.com/pytorch/pytorch/releases)
- [Changelog](https://github.com/pytorch/pytorch/blob/main/RELEASE.md)
- [Commits](https://github.com/pytorch/pytorch/compare/v2.10.0...v2.11.0)

---
updated-dependencies:
- dependency-name: torch
  dependency-version: 2.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-06 03:04:48 +00:00
dependabot[bot] d25124021c chore(deps): bump ccxt from 4.5.45 to 4.5.46
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.45 to 4.5.46.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.45...v4.5.46)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.46
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-06 03:04:40 +00:00
dependabot[bot] 82ab8c4674 chore(deps): bump codecov/codecov-action from 5.5.2 to 6.0.0
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 5.5.2 to 6.0.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/671740ac38dd9b0130fbe1cec585b89eea48d3de...57e3a136b779b570ffcdbf80b3bdc90e7fab3de2)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-06 03:04:24 +00:00
dependabot[bot] 696af8ec07 chore(deps): bump pymdown-extensions from 10.21 to 10.21.2
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.21 to 10.21.2.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.21...10.21.2)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-version: 10.21.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-06 03:04:15 +00:00
dependabot[bot] 7af050ecc4 chore(deps): bump astral-sh/setup-uv from 7.3.1 to 8.0.0
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 7.3.1 to 8.0.0.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/5a095e7a2014a4212f075830d4f7277575a9d098...cec208311dfd045dd5311c1add060b2062131d57)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 8.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-06 03:04:08 +00:00
dependabot[bot] 13c872d079 chore(deps-dev): bump ruff from 0.15.7 to 0.15.8
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.7 to 0.15.8.
- [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.7...0.15.8)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-06 03:04:08 +00:00
dependabot[bot] bc574509bf chore(deps): bump cmaes from 0.12.0 to 0.13.0
Bumps [cmaes](https://github.com/CyberAgentAILab/cmaes) from 0.12.0 to 0.13.0.
- [Release notes](https://github.com/CyberAgentAILab/cmaes/releases)
- [Commits](https://github.com/CyberAgentAILab/cmaes/compare/v0.12.0...v0.13.0)

---
updated-dependencies:
- dependency-name: cmaes
  dependency-version: 0.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-06 03:03:56 +00:00
dependabot[bot] 90d4447911 chore(deps): bump fastapi from 0.135.1 to 0.135.2
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.135.1 to 0.135.2.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.135.1...0.135.2)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.135.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-06 03:03:51 +00:00
dependabot[bot] 69ffc2c7a2 chore(deps): bump numpy from 2.4.3 to 2.4.4
Bumps [numpy](https://github.com/numpy/numpy) from 2.4.3 to 2.4.4.
- [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.3...v2.4.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-06 03:03:44 +00:00
Matthias 3d68d6aefc test: Add exchange mock for get_pair_base_currency 2026-04-05 17:06:53 +02:00
Achmad Fathoni de064505c5 Enforce SKDecimal 'name' parameter as string 2026-04-05 21:55:42 +07:00
Matthias 4ba01b5c12 fix: don't assume "/" for pair base currency 2026-04-05 10:10:06 +02:00
Matthias aaadb01a6a docs: improve doc wording 2026-04-05 10:08:56 +02:00
Matthias 8768fe90b3 refactor: slightly improve generate_wallet_stats 2026-04-05 10:08:50 +02:00
Matthias 51478baa47 docs: Add Dashboard section to freqUI docs 2026-04-04 19:46:46 +02:00
Matthias b6b9ae5eb0 test: assert repr for walletHistory 2026-04-04 14:09:36 +02:00
Matthias af815a3c76 chore: unify treatment of pos.leverage fallbacks 2026-04-04 13:51:13 +02:00
Matthias 754f24c8a6 feat: allow skipping of the wallet migration
fallback method in case of problems
2026-04-04 13:48:54 +02:00
Matthias b45e086b50 test: add tests for get_backtest_wallet_change (and market change) 2026-04-04 13:41:20 +02:00
Matthias 7af322a197 fix: impove behavior when loading old backtest results 2026-04-04 13:17:48 +02:00
Matthias 75bfa87f74 chore: minor code cleanup 2026-04-04 13:12:43 +02:00
Matthias a40de0a59b chore: rename variable for better debuggability 2026-04-04 13:12:43 +02:00
Matthias 66eb7f0199 test: add test for historic_balance endpoint 2026-04-04 13:12:43 +02:00
Matthias d001d91640 chore: rename temporary column for clarity 2026-04-04 12:50:10 +02:00
Matthias dec3c3e13b test: fix a couple tsts ... 2026-04-04 12:12:11 +02:00
Matthias f99ccc5e3d docs: improved backtesting doc wording 2026-04-04 11:52:46 +02:00
Matthias 78ccb68929 fix: adjust backtest-logic to new capture method 2026-04-04 11:50:47 +02:00
Matthias e28da4b087 test: Fix and improve balance distribution test 2026-04-04 09:12:44 +02:00
Matthias 425ebeeedb fix: include fees on both trade sides 2026-04-04 09:12:44 +02:00
Matthias c3b2a73eef feat: warn for pairs without history 2026-04-04 09:12:44 +02:00
Matthias 35806c26bf fix: Improved migration for short trades 2026-04-04 09:12:44 +02:00
Matthias a9bbc45ba5 fix(migration): stake should be non-leveraged. 2026-04-04 09:12:44 +02:00
Matthias 5e6d3e265b tests: rename mock helper function 2026-04-04 09:12:44 +02:00
Matthias f9db85fcaf chore: slightly reorder parallelism code 2026-04-04 09:12:44 +02:00
Matthias 138b70a2bf test: add explicit test for prepare_balance_distribution 2026-04-04 09:12:44 +02:00
Matthias 518092a0ad fix: handle error-cases gracefully 2026-04-04 09:12:44 +02:00
Matthias 5d3776309c refactor: improve migration code structure 2026-04-04 09:12:44 +02:00
Matthias ab2e0e6d6f chore: improved logging for clarity on startup wait 2026-04-04 09:12:44 +02:00
Matthias fa48910e96 feat: improved dataframe handling 2026-04-04 09:12:44 +02:00
Matthias 5d2a7d2187 feat: wallet-migration for futures trades 2026-04-04 09:12:44 +02:00
Matthias e4eee1aa1b feat: add short fields to balance_distribution 2026-04-04 09:12:44 +02:00
Matthias 803b4cae78 chore: improved docstring 2026-04-04 09:12:44 +02:00
Matthias 09ddef3716 chore: improved variable naming 2026-04-04 09:12:44 +02:00
Matthias 5a847665ff fix: add total_quote to migration 2026-04-04 09:12:44 +02:00
Matthias 50fd6d152e fix: use correct formula for shorts 2026-04-04 09:12:44 +02:00
Matthias b4961a2cb7 fix: add quote_currency to wallet migration 2026-04-04 09:12:44 +02:00
Matthias 4cac724709 test: update wallet capture test 2026-04-04 09:12:44 +02:00
Matthias 05bbc84bf2 fix: use correct formula for wallet capture 2026-04-04 09:12:44 +02:00
Matthias 21ac7d1969 refactor: use shorter variable name 2026-04-04 09:12:44 +02:00
Matthias f125349587 feat: add additional columns to better cover futures 2026-04-04 09:12:44 +02:00
Matthias f7ddf46b32 refactor: rename WalletHistory fieldname from price to rate 2026-04-04 09:12:44 +02:00
Matthias 623991c772 chore: rename variable to price 2026-04-04 09:12:44 +02:00
Matthias 1237bb798c test: fix backtest api wallets test 2026-04-04 09:12:44 +02:00
Matthias a09036cd6e chore: fix Model naming collision 2026-04-04 09:12:44 +02:00
Matthias 9891b8332b chore: set wallet_migration_date in the correct space 2026-04-04 09:12:44 +02:00
Matthias 7b223f3d38 feat: improve balance_history response 2026-04-04 09:12:44 +02:00
Matthias 61a5ab8e1c feat: add bot_managed to wallet-history migration 2026-04-04 09:12:44 +02:00
Matthias 98493dc9ed feat: add "bot_managed" to wallet_history 2026-04-04 09:12:44 +02:00
Matthias 0835318b8f fix: capture correct balance for futures 2026-04-04 09:12:44 +02:00
Matthias b69a042f5b feat: update wallet migration to keep leverage 2026-04-04 09:12:44 +02:00
Matthias 00d39bbb80 feat: add leverage column to wallet history 2026-04-04 09:12:44 +02:00
Matthias a88dc8839d chore: simplify imports 2026-04-04 09:12:44 +02:00
Matthias cb8d68f395 test: add test for record_wallet_state 2026-04-04 09:12:44 +02:00
Matthias 7dfcf846d0 test: add asserts for backtest wallet capturing 2026-04-04 09:12:44 +02:00
Matthias 3a9160aace chore: simplify date import 2026-04-04 09:12:44 +02:00
Matthias 4904c7b9fd refactor: split trade_parallelism trades into their own testfile 2026-04-04 09:12:44 +02:00
Matthias 27c7a37531 test: add test for balance_distribution_over_time 2026-04-04 09:12:44 +02:00
Matthias 9f9e13cec2 chore: add better docstring 2026-04-04 09:12:44 +02:00
Matthias 175e77794c chore: improve wallet migration code 2026-04-04 09:12:44 +02:00
Matthias 1d7b1cd4ea test: improve test to make it more realistic 2026-04-04 09:12:44 +02:00
Matthias 323f42fc53 fix: Don't round date up to next date
it'll cause a record in the future eventually.
2026-04-04 09:12:44 +02:00
Matthias 03fd0575ce test: simplify imports 2026-04-04 09:12:44 +02:00
Matthias c12c2177cd test: add tests for wallets_migration 2026-04-04 09:12:44 +02:00
Matthias c884fd20ea chore: add repr output for wallet_history 2026-04-04 09:12:44 +02:00
Matthias 0f9cab4231 chore: fix edge-case bug for empty pairlist 2026-04-04 09:12:44 +02:00
Matthias 97e7939a30 chore: improve wallet capturing performance 2026-04-04 09:12:44 +02:00
Matthias 6e3c850807 chore: minor nitpick changes 2026-04-04 09:12:44 +02:00
Matthias 7b49dc8c11 chore: improve optimize reports stability 2026-04-04 09:12:44 +02:00
Matthias cbd1a4c060 chore: minor improvements 2026-04-04 09:12:44 +02:00
Matthias 921cb4dad8 feat: Only ffill until the end of the trade 2026-04-04 09:12:44 +02:00
Matthias bf5ec98918 chore: use "filled" over amount for balance distribution 2026-04-04 09:12:44 +02:00
Matthias c877d267c7 feat: expose minfied when converting trade list to dataframe 2026-04-04 09:12:44 +02:00
Matthias c66adf2bf1 docs: update backtesting docs with new output 2026-04-04 09:12:44 +02:00
Matthias 1ede186484 feat: display min/max balance 2026-04-04 09:12:44 +02:00
Matthias 680aeb89c3 feat: store wallet stats 2026-04-04 09:12:44 +02:00
Matthias ba1092b726 chore: use builtin helpers 2026-04-04 09:12:44 +02:00
Matthias 9ddabbd849 feat: use proper starting balance 2026-04-04 09:12:44 +02:00
Matthias b5f31bf82d chore: use proper starting balance 2026-04-04 09:12:44 +02:00
Matthias db2309dfd2 fix: avoid errors for delisted pairs 2026-04-04 09:12:44 +02:00
Matthias 418acb7034 chore: exclude open orders from balance calculation 2026-04-04 09:12:44 +02:00
Matthias 8a284060d1 fix: wrong usage of getdatetimevalue 2026-04-04 09:12:44 +02:00
Matthias 235c46ae12 chore: add wallet migration timing log 2026-04-04 09:12:44 +02:00
Matthias 1f32dbef9a feat: enable wallet-capture in webserver mode 2026-04-04 09:12:44 +02:00
Matthias d105770ff6 chore: Improve response model naming 2026-04-04 09:12:44 +02:00
Matthias 15be0510fc feat: return "capture_start_ts" as part of API response 2026-04-04 09:12:44 +02:00
Matthias 6c24925522 fix: make sure wallet_summary exists 2026-04-04 09:12:44 +02:00
Matthias a8295de2b9 chore: fix endpoint naming 2026-04-04 09:12:44 +02:00
Matthias d6a0a4ec6c chore: rename WalletHistory model to better match it's intend 2026-04-04 09:12:44 +02:00
Matthias c7878130f1 feat: capture wallet_history_date 2026-04-04 09:12:44 +02:00
Matthias 51cf051fce test: add test for backtest/wallets endpoint 2026-04-04 09:12:44 +02:00
Matthias 1f15d28eeb feat: prevent duplicate wallet migrations 2026-04-04 09:12:44 +02:00
Matthias 281b627db3 feat: add historic_balance api endpoint 2026-04-04 09:12:44 +02:00
Matthias 2d2cee2c58 refactor: rename walletsSummary schema 2026-04-04 09:12:44 +02:00
Matthias 63869be376 feat: initial attempt at migrating walletHistory 2026-04-04 09:12:44 +02:00
Matthias 37fae7ea71 feat: use proper properties for record_wallet_state 2026-04-04 09:12:44 +02:00
Matthias e52276e3da chore: fix import error 2026-04-04 09:12:44 +02:00
Matthias cba49307b6 chore: improve imports 2026-04-04 09:12:44 +02:00
Matthias b614ec4ef9 chore: schedule wallet_state capturing every night. 2026-04-04 09:12:44 +02:00
Matthias ed560f995d feat: add WalletBalance model 2026-04-04 09:11:48 +02:00
Matthias 21269b8a8d feat: add backtest/.../wallets endpoint 2026-04-04 09:11:48 +02:00
Matthias ee745551a2 feat: store wallet_summary 2026-04-04 09:11:48 +02:00
Matthias 10cc857c51 feat: add wallet to dataframe conversion 2026-04-04 09:11:48 +02:00
Matthias 11cb3ef416 feat: reset wallet_captures list in Backtesting 2026-04-04 09:11:48 +02:00
Matthias a3e7ee9895 feat: capture wallet state per candle in backtesting 2026-04-04 09:11:48 +02:00
Matthias 3a76235c48 fix: improved check for emc due to type 2026-04-04 09:09:16 +02:00
Matthias 4ddb7fd43f chore: clarify delist-filter exception 2026-04-04 09:02:52 +02:00
Matthias e3c316f311 fix: Graceful shutdown in case of failed initialization 2026-04-04 08:51:04 +02:00
Matthias 1ebd75b32a fix: improve freqtradebot cleanup resilience 2026-04-04 08:47:50 +02:00
Matthias 65f494be26 fix: don't raise freqAI in pre-mature shutdown scenarios 2026-04-04 08:41:13 +02:00
Matthias 8a98b6172c refactor: use fstrings for regular log output 2026-04-04 08:40:54 +02:00
Matthias 3e4f0df957 Merge pull request #13014 from freqtrade/dependabot/pip/aiohttp-3.13.4
chore(deps): bump aiohttp from 3.13.3 to 3.13.4
2026-04-03 12:23:18 +02:00
dependabot[bot] 4f600eb078 chore(deps): bump aiohttp from 3.13.3 to 3.13.4
---
updated-dependencies:
- dependency-name: aiohttp
  dependency-version: 3.13.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-03 09:57:50 +00:00
Matthias b5d400c50d chore: increase aiohttp exclude to 5 days 2026-04-03 11:56:04 +02:00
Matthias f96f9b7601 chore: move futures only flags to ft_has_futures 2026-04-02 07:26:07 +02:00
Matthias f1fc3e1451 chore: remove temporary exclude-newer-package sections 2026-04-02 07:05:33 +02:00
Matthias a7c99b3ba7 Merge pull request #13015 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-04-02 06:34:24 +02:00
Freqtrade Bot 57b42b8cf0 chore: update binance leverage tiers 2026-04-02 04:15:15 +00:00
Matthias cdffee23e1 docs: Add stoploss order type explainer
closes #12984
2026-04-01 22:20:34 +02:00
Matthias 384e0c5e5a feat: update dockerfile base to python 3.14.3 2026-04-01 20:44:30 +02:00
Matthias d1b378ead6 chore: bump armhf image to 3.11.15 2026-04-01 20:29:23 +02:00
Matthias 42a153953a Merge pull request #13012 from freqtrade/feat/setup_14
Add support for 3.14 in setup-scripts
2026-04-01 19:58:12 +02:00
Matthias 8eb2edc0e2 feat: support 3.14 in setup scripts 2026-04-01 07:24:33 +02:00
Matthias b0c14d1122 docs: update non-working links to supported-futures 2026-03-31 07:21:48 +02:00
Matthias 7e7e475d4a chore: update deploy-docs to use uv 2026-03-31 07:19:37 +02:00
Matthias c21b8587a6 fix: incorrect balance estimation while entry order is not filled
closes #12993
2026-03-31 06:52:52 +02:00
Matthias ea51c646cd chore: add uv exclude-newer safeguard 2026-03-31 06:40:03 +02:00
Matthias 36d2ed061f Merge pull request #13008 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-03-31 06:35:03 +02:00
Freqtrade Bot 61e27462b1 chore: update pre-commit hooks 2026-03-31 03:57:08 +00:00
Matthias c47f5f9494 Merge pull request #12997 from freqtrade/dependabot/pip/develop/scipy-7ad29c80bf
chore(deps-dev): bump scipy-stubs from 1.17.1.2 to 1.17.1.3 in the scipy group across 1 directory
2026-03-30 09:20:33 +02:00
Matthias 60ede009d9 Merge pull request #13000 from freqtrade/dependabot/pip/develop/ruff-0.15.7
chore(deps-dev): bump ruff from 0.15.6 to 0.15.7
2026-03-30 09:20:05 +02:00
Matthias 89b6cabf77 Merge pull request #12998 from freqtrade/dependabot/pip/develop/ccxt-4.5.45
chore(deps): bump ccxt from 4.5.44 to 4.5.45
2026-03-30 07:29:51 +02:00
Matthias 4b9ab0a54f chore: bump scipy-stubs in pre-commit config 2026-03-30 07:18:37 +02:00
dependabot[bot] 5782e39fc5 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.2 to 1.17.1.3
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.17.1.2...v1.17.1.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-30 05:17:09 +00:00
Matthias f91e71e092 Merge pull request #12994 from freqtrade/dependabot/pip/develop/types-7fbf452716
chore(deps-dev): bump types-cachetools from 6.2.0.20251022 to 6.2.0.20260317 in the types group
2026-03-30 07:15:53 +02:00
dependabot[bot] 6a8d1fff8f chore(deps-dev): bump ruff from 0.15.6 to 0.15.7
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.6 to 0.15.7.
- [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.6...0.15.7)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-30 05:15:20 +00:00
Matthias e703d6fea9 chore: temporarily revert exclude-newer 2026-03-30 07:13:10 +02:00
Matthias a9f6fcc7bb chore: uv.tool add exclude-newer 2026-03-30 07:06:07 +02:00
Matthias 230281f8f2 chore: bump develop version to 2026.4-dev 2026-03-30 07:02:22 +02:00
Matthias 326ef6d49b test: update krakenfutures "filled" test 2026-03-30 06:51:31 +02:00
dependabot[bot] 5c129506ae chore(deps): bump ccxt from 4.5.44 to 4.5.45
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.44 to 4.5.45.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.44...v4.5.45)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.45
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-30 04:48:19 +00:00
Matthias 9a94d97e69 chore: bump types-cachetools in pre-commit config 2026-03-30 06:47:13 +02:00
Matthias e0942e1328 Merge pull request #13001 from freqtrade/dependabot/pip/develop/uvicorn-0.42.0
chore(deps): bump uvicorn from 0.41.0 to 0.42.0
2026-03-30 06:45:58 +02:00
Matthias 88c3fd2bd5 Merge pull request #12999 from freqtrade/dependabot/pip/develop/optuna-4.8.0
chore(deps): bump optuna from 4.7.0 to 4.8.0
2026-03-30 06:45:36 +02:00
Matthias 6e11ce9bd5 Merge pull request #12995 from freqtrade/dependabot/pip/develop/pytest-8100fefb0e
chore(deps-dev): bump pytest-cov from 7.0.0 to 7.1.0 in the pytest group
2026-03-30 06:44:44 +02:00
Matthias 5dccabe2d8 Merge pull request #12996 from freqtrade/dependabot/pip/develop/mkdocs-cf6347e75e
chore(deps): bump mkdocs-material from 9.7.5 to 9.7.6 in the mkdocs group
2026-03-30 06:44:00 +02:00
Matthias b79a280e55 Merge pull request #13002 from freqtrade/dependabot/pip/develop/python-telegram-bot-22.7
chore(deps): bump python-telegram-bot from 22.6 to 22.7
2026-03-30 06:43:40 +02:00
dependabot[bot] 1615c0bd92 chore(deps): bump python-telegram-bot from 22.6 to 22.7
Bumps [python-telegram-bot](https://github.com/python-telegram-bot/python-telegram-bot) from 22.6 to 22.7.
- [Release notes](https://github.com/python-telegram-bot/python-telegram-bot/releases)
- [Commits](https://github.com/python-telegram-bot/python-telegram-bot/compare/v22.6...v22.7)

---
updated-dependencies:
- dependency-name: python-telegram-bot
  dependency-version: '22.7'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-30 03:04:24 +00:00
dependabot[bot] 9df068c426 chore(deps): bump uvicorn from 0.41.0 to 0.42.0
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.41.0 to 0.42.0.
- [Release notes](https://github.com/Kludex/uvicorn/releases)
- [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/uvicorn/compare/0.41.0...0.42.0)

---
updated-dependencies:
- dependency-name: uvicorn
  dependency-version: 0.42.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-30 03:04:11 +00:00
dependabot[bot] e8fde061b5 chore(deps): bump optuna from 4.7.0 to 4.8.0
Bumps [optuna](https://github.com/optuna/optuna) from 4.7.0 to 4.8.0.
- [Release notes](https://github.com/optuna/optuna/releases)
- [Commits](https://github.com/optuna/optuna/compare/v4.7.0...v4.8.0)

---
updated-dependencies:
- dependency-name: optuna
  dependency-version: 4.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-30 03:03:39 +00:00
dependabot[bot] 8d024f5e08 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.5 to 9.7.6
- [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.5...9.7.6)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-30 03:03:15 +00:00
dependabot[bot] 6541450c7c chore(deps-dev): bump pytest-cov from 7.0.0 to 7.1.0 in the pytest group
Bumps the pytest group with 1 update: [pytest-cov](https://github.com/pytest-dev/pytest-cov).


Updates `pytest-cov` from 7.0.0 to 7.1.0
- [Changelog](https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest-cov/compare/v7.0.0...v7.1.0)

---
updated-dependencies:
- dependency-name: pytest-cov
  dependency-version: 7.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: pytest
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-30 03:03:04 +00:00
dependabot[bot] c29956866d chore(deps-dev): bump types-cachetools in the types group
Bumps the types group with 1 update: [types-cachetools](https://github.com/python/typeshed).


Updates `types-cachetools` from 6.2.0.20251022 to 6.2.0.20260317
- [Commits](https://github.com/python/typeshed/commits)

---
updated-dependencies:
- dependency-name: types-cachetools
  dependency-version: 6.2.0.20260317
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-30 03:02:43 +00:00
Matthias 0ed613a574 fix: further improvements to exit codes 2026-03-29 13:52:51 +02:00
Matthias c7dfd54eb3 test: stabilize time-dependant test after summer time switch 2026-03-29 13:33:56 +02:00
Matthias 697814ed6a fix: improved sysexit handling
closes #12988
2026-03-29 13:30:26 +02:00
Matthias d5417d40ae Merge pull request #12986 from freqtrade/dependabot/pip/cryptography-46.0.6
chore(deps): bump cryptography from 46.0.5 to 46.0.6
2026-03-29 12:55:25 +02:00
dependabot[bot] e386334130 chore(deps): bump cryptography from 46.0.5 to 46.0.6
Bumps [cryptography](https://github.com/pyca/cryptography) from 46.0.5 to 46.0.6.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/46.0.5...46.0.6)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 46.0.6
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-28 12:50:32 +00:00
Matthias 57e489b9aa Merge pull request #12985 from freqtrade/maint/pin_build
Pin individual installs in CI
2026-03-28 13:49:39 +01:00
Matthias e0d55bf5d3 chore(ci): install pinned ccxt and orjson versions 2026-03-28 13:04:42 +01:00
Matthias f169f99a5f chore(ci): pre-commit-update pin pre-commit 2026-03-28 13:03:24 +01:00
Matthias 0982b26d6b chore(ci): pin pyyaml explicitly 2026-03-28 13:02:03 +01:00
Matthias 626e719942 chore(ci): don't upgrade wheel
it'll be auto-installed in the build environment
2026-03-28 12:56:24 +01:00
Matthias d82cac3895 chore(ci): pin "build" and use the pinned version in CI 2026-03-28 12:55:02 +01:00
Matthias 3e40944b4e test: skip pygments vulnerability for now 2026-03-26 07:15:21 +01:00
Matthias 05081df48b chore(ci): revert build pinning 2026-03-26 07:12:36 +01:00
Matthias 6e6082fa2b test: update test wording for stoploss price type 2026-03-26 07:08:44 +01:00
Matthias 3c43e3dae3 feat: improve stop price type not supported message 2026-03-26 07:08:40 +01:00
Matthias 515a754dc4 docs: clarify stop price type validation logic for spot markets
(it's not validated in that case).
2026-03-26 07:08:40 +01:00
Matthias 1c98c2feeb feat(bitget): add stoploss price type support
closes #12981
2026-03-26 07:08:40 +01:00
Matthias 697059a4a2 Merge pull request #12980 from freqtrade/dependabot/pip/requests-2.33.0
chore(deps): bump requests from 2.32.5 to 2.33.0
2026-03-26 07:08:07 +01:00
Matthias 1b1508d8f2 Merge pull request #12982 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-03-26 07:02:25 +01:00
Freqtrade Bot 48905e55e5 chore: update pre-commit hooks 2026-03-26 04:18:28 +00:00
Matthias a203f4129a Merge pull request #12952 from Briarion/feat/pytorch-early-stopping
feat: add early stopping support to PyTorchModelTrainer
2026-03-25 19:54:48 +01:00
dependabot[bot] 0b3f3a94b5 chore(deps): bump requests from 2.32.5 to 2.33.0
Bumps [requests](https://github.com/psf/requests) from 2.32.5 to 2.33.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.32.5...v2.33.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-version: 2.33.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-25 18:12:12 +00:00
Briarion daf9918bb5 docs: add early_stopping_patience to parameter table
Document the new early_stopping_patience trainer_kwargs parameter
in the FreqAI parameter table, including description, datatype,
default value, and usage notes.
2026-03-25 15:29:15 +03:00
Briarion 3bde73740c feat: add early stopping support to PyTorchModelTrainer
Add optional early stopping to prevent overfitting in PyTorch-based
FreqAI models. When `early_stopping_patience` is set in
model_training_parameters, training will stop if validation loss
does not improve for the specified number of epochs.

Changes:
- Add `early_stopping_patience` parameter (default 0 = disabled)
- `estimate_loss()` now returns average loss (float | None) instead
  of None, enabling downstream use for schedulers and early stopping
- Track best validation loss and patience counter across epochs

Usage in config:
```json
{
  "model_training_parameters": {
    "n_epochs": 100,
    "early_stopping_patience": 10
  }
}
```

The change is fully backward compatible - early stopping is disabled
by default, and the return value of estimate_loss() can be safely
ignored by existing subclasses.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 15:24:58 +03:00
Matthias 3f9eaba1ef Merge pull request #12979 from freqtrade/fix/freqai_torch
Fix freqai torch model loading
2026-03-25 12:45:41 +01:00
Matthias d557b4b298 Merge branch 'develop' into fix/freqai_torch 2026-03-25 12:31:28 +01:00
Matthias fd858b79af test: remove "ignore-vuln" from pip-audit tests
the vulnerability was fixed.
2026-03-25 10:58:39 +01:00
Matthias e96c67e140 fix: pin build to 1.4.0 for now 2026-03-25 10:58:02 +01:00
Matthias faf28180a5 docs: fix minor documentation bug 2026-03-24 20:57:17 +01:00
Matthias e98959f3f0 fix: set weights_only=False when loading from pytorch
closes #12964
2026-03-24 20:31:35 +01:00
Matthias 0a2c3379c6 docs: add security warning message to pytorch docs 2026-03-24 20:29:45 +01:00
Matthias b8f5df7cf6 chore: remove unnecessary child method
(it does the same thing than the parent).
2026-03-24 20:15:09 +01:00
Matthias 04a4a97efb Merge pull request #12974 from freqtrade/maint/migrate_add_event_handler
migrate fastapi add event handler
2026-03-24 07:05:58 +01:00
Matthias 143d9a90c6 chore: import sorting 2026-03-24 06:33:57 +01:00
Matthias c112fa6632 Merge pull request #12978 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-03-24 06:29:43 +01:00
Freqtrade Bot cb46f72109 chore: update pre-commit hooks 2026-03-24 03:47:28 +00:00
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 cea1700eaa chore: drop starlette upper version bound 2026-03-23 07:20:08 +01:00
Matthias bb2f4ac37e fix: migrate from add_event_handler to lifespan
add_event_handler was removed in starlette 1.0.0
2026-03-23 07:19:53 +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
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 cb2e50abcf fix(tests): restore exchange_params return in get_futures_exchange 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 086e1d8bad refactor(krakenfutures): simplify stoploss handling after ccxt fix
- Add stoploss_query_requires_stop_flag to _ft_has so the base class
  handles fetch_stoploss_order and cancel_stoploss_order (adds stop=True
  which CCXT maps to trigger history endpoints).
- Remove _fix_trigger_order_id — ccxt 4.5.38 now parses order IDs
  correctly in all response formats.
- Remove cancel_stoploss_order override — base class handles it.
- Remove fetch_stoploss_order override — base class handles it.
- Simplify _fetch_order_fallback — stop=True flows from base class,
  no need to auto-retry with trigger=True.

Addresses review comments from freqtrade/freqtrade#12706.
2026-03-22 19:07:19 +01:00
Matthias 83c2ca5a90 test: krakenfutures has no websockets at the moment 2026-03-22 19:07:19 +01:00
Matthias 68c8dd4e18 chore: krakenfutures tickers don't have volume 2026-03-22 19:07:19 +01:00
Matthias b25defb8b9 refactor: invert balance logic to simplify function 2026-03-22 19:07:19 +01:00
Matthias b190079aa8 test: Simplify live test setup 2026-03-22 19:07:19 +01:00
Matthias a831a6ee34 docs: align krakenfutures link in Readme.md 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 bb2f19deaa krakenfutures: replace assert with typed None-guard for ruff S101 2026-03-22 19:07:19 +01:00
matstedt cfa4924b8e krakenfutures: satisfy mypy narrowing in flex USD used calculation 2026-03-22 19:07:19 +01:00
matstedt 4f8291384d docs: align Kraken Futures config and collateral guidance 2026-03-22 19:07:05 +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 c68c6896d7 chore: revert odd, unnecessary modifications 2026-03-22 19:07:05 +01:00
Matthias 712fd8ac14 chore: import formatting 2026-03-22 19:07:05 +01:00
Matthias cb6a1267b6 chore: remove pointless comments 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
Matthias 445a22222a chore: remove leverage tier fixing code 2026-03-22 19:07:04 +01:00
matstedt ba80329eda krakenfutures: guard maxNotional for non‑contract tiers 2026-03-22 19:07:04 +01:00
matstedt a8d7a72cec tests: drop unused krakenfutures spot leverage flag 2026-03-22 19:07:04 +01:00
matstedt 6ed470884b krakenfutures: backfill leverage tier notionals 2026-03-22 19:07:04 +01:00
matstedt 0d4dadd63f docs: add Kraken to the list of supported Futures Exchanges 2026-03-22 19:07:04 +01:00
matstedt 0cab0e8ac5 fix(tests): use myokx for non-futures list-exchanges check 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 cef63725aa exchange: drop krakenfutures ohlcv limit override 2026-03-22 19:07:04 +01:00
matstedt 5af4147eb3 tests: adjust list-exchanges futures assertions for krakenfutures 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 15359f57a8 krakenfutures: avoid mypy optional assignment in fetch_order 2026-03-22 19:07:04 +01:00
matstedt 4b23e9ccce krakenfutures: strip history-only params from open/closed order calls 2026-03-22 19:07:04 +01:00
matstedt 35706eb9ec krakenfutures: restore get_ft_has so exchange validation sees fetchOrder/createMarketOrder overrides until CCXT is updated 2026-03-22 19:07:04 +01:00
matstedt 272771af38 docs(exchanges): remove redundant text 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
Mattias Hellerstedt 6c588cce65 docs: clarify flex account handling in Kraken Futures balances 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 2077f34a78 krakenfutures: use Bybit/Hyperliquid funding fee calculation 2026-03-22 19:07:04 +01:00
matstedt 7718e8e1e9 krakenfutures: fix fetch_order to raise exception instead of returning pseudo order 2026-03-22 19:07:04 +01:00
matstedt 06e2b8ae0d style: ruff format 2026-03-22 19:07:04 +01:00
matstedt 42361bc046 krakenfutures: remove redundant get_ft_has method 2026-03-22 19:07:04 +01:00
matstedt 507ea87e9f krakenfutures: convert _filter_params_for_open_closed to instance method 2026-03-22 19:07:04 +01:00
matstedt 60f71bbc2b tests: re-enable hyperliquid spot online tests 2026-03-22 19:07:04 +01:00
matstedt ea5ae9627d style: ruff format 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 d9629c4d67 docs(exchange): add Kraken Futures notes 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
matstedt 46e96e20a9 feat(exchange): add Kraken Futures exchange class 2026-03-22 19:07:04 +01:00
matstedt 1a5f4127e0 feat(exchange): register Kraken Futures exchange 2026-03-22 19:07:04 +01:00
matstedt 51588c2ef1 feat(exchange): apply ft_has overrides in check_exchange 2026-03-22 19:07:04 +01:00
matstedt 271ee6d36e feat(exchange): honor subclass has overrides in exchange validation 2026-03-22 19:07:04 +01:00
matstedt 72995835ea feat(exchange): enable krakenfutures in supported list 2026-03-22 19:07:04 +01:00
Matthias 1922f15735 chore(ci): remove reference to non-existing step 2026-03-22 09:12:25 +01:00
Matthias 633ff8c98c chore(ci): remove outdated action
it's not needed as the new discord action has nofail set by default
2026-03-22 09:10:15 +01:00
Matthias 10b2a27342 Merge pull request #12962 from freqtrade/maint/ci-discord-notify
Update discord notify action
2026-03-22 09:04:01 +01:00
Matthias 6ed329bac3 chore(ci): replace discord-webhook-notify
it's buggy since months without update / fix - we need a maintained action.
2026-03-22 08:45:07 +01:00
Matthias cebbb40c99 test: remove testing for time_in_ratio 2026-03-21 14:09:49 +01:00
Matthias adec491b3b chore: remove unused argument time_in_ratio
It was there in preparation for kraken, but kraken
doesn't seem to have this anymore.
2026-03-21 14:09:42 +01:00
Matthias cbeae975f0 test: simplify funding fee test 2026-03-21 14:08:20 +01:00
Matthias a2b1c3710f chore: remove pointless futures stuff from kraken class
(kraken futures can only be supported via krakenfutures class)
2026-03-21 14:00:57 +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 0a7fe730f0 fix: trade recovery improvement 2026-03-21 08:51:15 +01:00
Matthias cadb269b58 Merge pull request #12957 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-03-19 07:40:47 +01:00
Matthias 168962f847 Merge pull request #12953 from Briarion/fix/data-kitchen-fragmentation
fix: avoid DataFrame fragmentation in get_predictions_to_append
2026-03-19 07:24:45 +01:00
Freqtrade Bot e70e56df96 chore: update pre-commit hooks 2026-03-19 07:22:10 +01:00
Matthias 3242be2e29 fix: add dynamic timeframe_floor freq
fixes problems where funding-rates may be on the 1st second of the hour
(observed on gate from time to time)
2026-03-19 07:19:07 +01:00
Matthias 7fc6463900 refactor: align naming for clean_ohlcv_dataframe 2026-03-19 07:04:49 +01:00
Briarion 9560ba2144 fix: move do_predict and DI_values into dict before DataFrame construction
Address review feedback: do_predict and DI_values were still assigned
after DataFrame creation, partially defeating the fragmentation fix.
Now all columns are collected in the dict before the single DataFrame()
call, ensuring zero post-construction column assignments.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 08:05:22 +03:00
Matthias 257e26f2c0 Merge pull request #12955 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-03-17 06:29:38 +01:00
Freqtrade Bot 27a650cf1c chore: update pre-commit hooks 2026-03-17 03:47:29 +00:00
Matthias 5dca913b9e Merge pull request #12936 from freqtrade/dependabot/pip/develop/types-9ab316b5d0
chore(deps-dev): bump the types group with 2 updates
2026-03-16 14:56:49 +01:00
Matthias 6492f3d29e chore: bump types in pre-commit-config 2026-03-16 14:43:22 +01:00
dependabot[bot] 21c5cc7994 chore(deps-dev): bump the types group with 2 updates
Bumps the types group with 2 updates: [types-tabulate](https://github.com/typeshed-internal/stub_uploader) and [types-python-dateutil](https://github.com/typeshed-internal/stub_uploader).


Updates `types-tabulate` from 0.9.0.20241207 to 0.10.0.20260308
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

Updates `types-python-dateutil` from 2.9.0.20260124 to 2.9.0.20260305
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: types-tabulate
  dependency-version: 0.10.0.20260308
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: types
- dependency-name: types-python-dateutil
  dependency-version: 2.9.0.20260305
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 10:14:00 +00:00
Matthias 056bb213f8 Merge pull request #12941 from freqtrade/dependabot/pip/develop/sqlalchemy-2.0.48
chore(deps): bump sqlalchemy from 2.0.47 to 2.0.48
2026-03-16 11:10:02 +01:00
Matthias 5d3c65f7da chore: bump sqlalchemy in pre-commit config 2026-03-16 09:00:57 +01:00
dependabot[bot] 5061554ada chore(deps): bump sqlalchemy from 2.0.47 to 2.0.48
Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 2.0.47 to 2.0.48.
- [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases)
- [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst)
- [Commits](https://github.com/sqlalchemy/sqlalchemy/commits)

---
updated-dependencies:
- dependency-name: sqlalchemy
  dependency-version: 2.0.48
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 07:56:21 +00:00
Matthias 14e97e3f22 Merge pull request #12938 from freqtrade/dependabot/pip/develop/scipy-1e08eb4daa
chore(deps-dev): bump scipy-stubs from 1.17.1.0 to 1.17.1.1 in the scipy group
2026-03-16 07:36:56 +01:00
Matthias 0f816ddfb7 Merge pull request #12937 from freqtrade/dependabot/pip/develop/mkdocs-4d03651020
chore(deps): bump mkdocs-material from 9.7.3 to 9.7.4 in the mkdocs group
2026-03-16 07:29:06 +01:00
dependabot[bot] 92dd17ab62 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.3 to 9.7.4
- [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.3...9.7.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 05:49:03 +00:00
Briarion a8c887a5b0 fix: avoid DataFrame fragmentation in get_predictions_to_append
Replace column-by-column DataFrame assignment with dict-based
construction. The previous approach triggered pandas
PerformanceWarning about DataFrame fragmentation when many
prediction columns and their corresponding mean/std columns
were added one at a time.

Also add defensive key checks (label in self.data["labels_mean"])
to prevent KeyError when custom models produce prediction columns
that don't have corresponding entries in labels_mean/labels_std.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 08:46:57 +03:00
Matthias 009fa747e3 chore: combine actions updates from docker/*
they release as one anyway
2026-03-16 06:45:47 +01:00
Matthias 2744449773 Merge pull request #12950 from stash86/main-stash
fix cagr on zero or negative values
2026-03-16 06:41:47 +01:00
Matthias 537426d77a Merge pull request #12948 from freqtrade/dependabot/pip/develop/tabulate-0.10.0
chore(deps): bump tabulate from 0.9.0 to 0.10.0
2026-03-16 06:38:45 +01:00
Matthias e3994d1add chore: bump scipy-stubs in pre-commit config 2026-03-16 06:37:24 +01:00
Matthias 720cd8b68c Merge pull request #12946 from freqtrade/dependabot/github_actions/develop/docker/setup-qemu-action-4.0.0
chore(deps): bump docker/setup-qemu-action from 3.7.0 to 4.0.0
2026-03-16 06:36:21 +01:00
Matthias 3846bd16f0 Merge pull request #12944 from freqtrade/dependabot/github_actions/develop/docker/login-action-4.0.0
chore(deps): bump docker/login-action from 3.7.0 to 4.0.0
2026-03-16 06:36:08 +01:00
Matthias 7863d4b854 Merge pull request #12945 from freqtrade/dependabot/pip/develop/pytz-2026.1.post1
chore(deps): bump pytz from 2025.2 to 2026.1.post1
2026-03-16 06:34:44 +01:00
Matthias 7e8da54ad1 Merge pull request #12943 from freqtrade/dependabot/pip/develop/plotly-6.6.0
chore(deps): bump plotly from 6.5.2 to 6.6.0
2026-03-16 06:34:30 +01:00
Matthias ae06f90ca6 Merge pull request #12942 from freqtrade/dependabot/pip/develop/cachetools-7.0.4
chore(deps): bump cachetools from 7.0.1 to 7.0.4
2026-03-16 06:34:06 +01:00
Matthias 8a7b235b6e Merge pull request #12940 from freqtrade/dependabot/github_actions/develop/zizmorcore/zizmor-action-0.5.2
chore(deps): bump zizmorcore/zizmor-action from 0.5.0 to 0.5.2
2026-03-16 06:33:53 +01:00
Matthias daa0361c02 Merge pull request #12939 from freqtrade/dependabot/github_actions/develop/docker/setup-buildx-action-4.0.0
chore(deps): bump docker/setup-buildx-action from 3.12.0 to 4.0.0
2026-03-16 06:33:33 +01:00
Matthias 9136877bc7 Merge pull request #12949 from freqtrade/dependabot/pip/develop/mike-2.1.4
chore(deps): bump mike from 2.1.3 to 2.1.4
2026-03-16 06:33:03 +01:00
Matthias 2df3890917 Merge pull request #12947 from freqtrade/dependabot/pip/develop/ruff-0.15.5
chore(deps-dev): bump ruff from 0.15.4 to 0.15.5
2026-03-16 06:32:50 +01:00
Stefano f2b930079b fix cagr on zero or negative values 2026-03-16 12:38:39 +09:00
dependabot[bot] f0a83c9e59 chore(deps): bump mike from 2.1.3 to 2.1.4
Bumps [mike](https://github.com/jimporter/mike) from 2.1.3 to 2.1.4.
- [Release notes](https://github.com/jimporter/mike/releases)
- [Changelog](https://github.com/jimporter/mike/blob/master/CHANGES.md)
- [Commits](https://github.com/jimporter/mike/compare/v2.1.3...v2.1.4)

---
updated-dependencies:
- dependency-name: mike
  dependency-version: 2.1.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 03:04:36 +00:00
dependabot[bot] b12ea975e0 chore(deps): bump tabulate from 0.9.0 to 0.10.0
Bumps [tabulate](https://github.com/astanin/python-tabulate) from 0.9.0 to 0.10.0.
- [Changelog](https://github.com/astanin/python-tabulate/blob/master/CHANGELOG)
- [Commits](https://github.com/astanin/python-tabulate/compare/v0.9.0...v0.10.0)

---
updated-dependencies:
- dependency-name: tabulate
  dependency-version: 0.10.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 03:04:30 +00:00
dependabot[bot] ab74dd785c chore(deps-dev): bump ruff from 0.15.4 to 0.15.5
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.4 to 0.15.5.
- [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.4...0.15.5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 03:04:25 +00:00
dependabot[bot] 39affd30f9 chore(deps): bump docker/setup-qemu-action from 3.7.0 to 4.0.0
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3.7.0 to 4.0.0.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/c7c53464625b32c7a7e944ae62b3e17d2b600130...ce360397dd3f832beb865e1373c09c0e9f86d70a)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-version: 4.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 03:04:20 +00:00
dependabot[bot] ff6c96022e chore(deps): bump pytz from 2025.2 to 2026.1.post1
Bumps [pytz](https://github.com/stub42/pytz) from 2025.2 to 2026.1.post1.
- [Release notes](https://github.com/stub42/pytz/releases)
- [Commits](https://github.com/stub42/pytz/compare/release_2025.2...release_2026.1.post1)

---
updated-dependencies:
- dependency-name: pytz
  dependency-version: 2026.1.post1
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 03:04:06 +00:00
dependabot[bot] fc3b8f37b0 chore(deps): bump docker/login-action from 3.7.0 to 4.0.0
Bumps [docker/login-action](https://github.com/docker/login-action) from 3.7.0 to 4.0.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/c94ce9fb468520275223c153574b00df6fe4bcc9...b45d80f862d83dbcd57f89517bcf500b2ab88fb2)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 4.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 03:03:54 +00:00
dependabot[bot] 26615dbd55 chore(deps): bump plotly from 6.5.2 to 6.6.0
Bumps [plotly](https://github.com/plotly/plotly.py) from 6.5.2 to 6.6.0.
- [Release notes](https://github.com/plotly/plotly.py/releases)
- [Changelog](https://github.com/plotly/plotly.py/blob/main/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.py/compare/v6.5.2...v6.6.0)

---
updated-dependencies:
- dependency-name: plotly
  dependency-version: 6.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 03:03:45 +00:00
dependabot[bot] 6411a76f03 chore(deps): bump cachetools from 7.0.1 to 7.0.4
Bumps [cachetools](https://github.com/tkem/cachetools) from 7.0.1 to 7.0.4.
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tkem/cachetools/compare/v7.0.1...v7.0.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 03:03:40 +00:00
dependabot[bot] ce1734b176 chore(deps): bump zizmorcore/zizmor-action from 0.5.0 to 0.5.2
Bumps [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) from 0.5.0 to 0.5.2.
- [Release notes](https://github.com/zizmorcore/zizmor-action/releases)
- [Commits](https://github.com/zizmorcore/zizmor-action/compare/0dce2577a4760a2749d8cfb7a84b7d5585ebcb7d...71321a20a9ded102f6e9ce5718a2fcec2c4f70d8)

---
updated-dependencies:
- dependency-name: zizmorcore/zizmor-action
  dependency-version: 0.5.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 03:03:32 +00:00
dependabot[bot] 2b3e3a5c46 chore(deps): bump docker/setup-buildx-action from 3.12.0 to 4.0.0
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.12.0 to 4.0.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/8d2750c68a42422c14e847fe6c8ac0403b4cbd6f...4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: 4.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 03:03:28 +00:00
dependabot[bot] 0eddda2ee1 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.0 to 1.17.1.1
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.17.1.0...v1.17.1.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 03:03:26 +00:00
Matthias 05ffc2dba0 chore: migrate pytest ini_options to pytest section 2026-03-15 09:11:03 +01:00
Matthias ec1aee1f85 chore: reorder pyproject.toml dependencies 2026-03-15 08:58:27 +01:00
Matthias 9524fc0f81 chore: remove isort - ruff covers this already 2026-03-15 08:57:22 +01:00
Matthias 3d56701e20 chore: remove unused black configuration 2026-03-15 08:54:08 +01:00
Matthias d8d86ce861 chore: remove flake8 pre-commit check 2026-03-15 08:52:43 +01:00
Matthias 503dfb7313 docs: update recommendation from black to ruff format 2026-03-15 08:52:33 +01:00
Matthias 16717df1a9 docs: improve sql cheatsheet example 2026-03-15 08:44:51 +01:00
Matthias 6713cda109 docs: Update timeout docs to point to adjust_order_price
part of #12928
2026-03-15 08:41:56 +01:00
Matthias 0652339356 docs: fix parameters table formatting 2026-03-15 08:39:12 +01:00
Matthias 59a81dc07a fix: round exit-prices to proper precision
this avoids odd visualization in freqUI where prices had 16 decimals
out of backtesting
2026-03-14 17:00:46 +01:00
Matthias fcecbe780b test: Re-write test-data with proper decimals 2026-03-14 16:40:04 +01:00
Matthias be00f2c26f test: update mock for price_to_precision 2026-03-14 15:54:18 +01:00
Matthias 10ba9e3105 Merge pull request #12930 from freqtrade/dependabot/pip/pyjwt-2.12.0
chore(deps): bump pyjwt from 2.11.0 to 2.12.0
2026-03-14 08:20:16 +01:00
dependabot[bot] 1498860530 chore(deps): bump pyjwt from 2.11.0 to 2.12.0
Bumps [pyjwt](https://github.com/jpadilla/pyjwt) from 2.11.0 to 2.12.0.
- [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.11.0...2.12.0)

---
updated-dependencies:
- dependency-name: pyjwt
  dependency-version: 2.12.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-14 06:58:35 +00:00
Matthias 902bc75bf3 Merge pull request #12931 from stash86/main-stash
Fix short desc error on RemotePairlist when number_assets is None
2026-03-14 07:53:22 +01:00
Matthias bd6f891b07 chore(ci): rename online action name 2026-03-14 07:52:28 +01:00
Stefano 36e259b347 undo minor typo fix 2026-03-14 12:11:52 +09:00
Stefano f1aaf99317 fix desc 2026-03-14 12:02:34 +09:00
Stefano 459a0decbd forgotten change 2026-03-14 11:59:36 +09:00
Matthias 71598294a1 chore(ci): Update python setup 2026-03-13 21:08:43 +01:00
Matthias e28eedaf1c chore(ci): re-add python step for pre-commit 2026-03-13 20:21:51 +01:00
Matthias 3cd8b2e841 chore(ci): remove unnecessary action step, bump doc build to 3.12 2026-03-13 20:14:28 +01:00
Matthias 9925c4ac14 fix: docstring typos 2026-03-13 20:11:55 +01:00
Matthias 4170c943e7 chore: update remotePairlist num_assets for webserver mode 2026-03-13 06:35:20 +01:00
Matthias 70fe211a8b Merge pull request #12927 from stash86/main-stash
number_assets in RemotePairlist becomes optional
2026-03-13 06:31:43 +01:00
Matthias 23a17859b1 fix: fastAPI user warning due to unsupported use of api_route 2026-03-13 06:29:14 +01:00
Matthias c1fa259ad7 feat: Improved docstrings for /sysinfo endpoint 2026-03-13 06:29:14 +01:00
Matthias 4a9a630765 test: add test for new sysinfo behavior 2026-03-13 06:29:14 +01:00
Matthias a1cbfce316 feat: enhance sysinfo endpoint with additional features
closes #12918
2026-03-13 06:29:14 +01:00
Stefano 5edfa675ef update docs 2026-03-13 12:01:30 +09:00
Stefano 3158adad03 one change left 2026-03-13 11:53:28 +09:00
Stefano ebf39b35b8 Merge branch 'main-stash' of https://github.com/stash86/freqtrade into main-stash 2026-03-13 11:52:45 +09:00
Stefano 756b956a77 number_assets in RemotePairlist become optional 2026-03-13 11:52:40 +09:00
Matthias b46ff76d58 Merge pull request #12925 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-03-12 06:52:46 +01:00
Matthias 6f039fa27c Merge pull request #12923 from stash86/main-stash
use default needstickers for rangestabilityfilter
2026-03-12 06:32:15 +01:00
Freqtrade Bot acf3559205 chore: update pre-commit hooks 2026-03-12 04:12:41 +00:00
Stefano c05fe50b47 use default needstickers 2026-03-12 08:41:46 +09:00
Matthias a51ba0a2b4 fix(hyperliquid): dex balance requests are only necessary in non-unified mode 2026-03-11 21:40:19 +01:00
Matthias 9da9250865 chore: bump ccxt to 4.5.43
closes #12848
2026-03-11 19:57:02 +01:00
Matthias 881edddb6e test: explicitly convert warnings to string 2026-03-10 19:01:39 +01:00
Matthias 0bd5086a0f Merge pull request #12914 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-03-10 12:31:33 +01:00
Matthias e563e07d40 Merge branch 'develop' into update/pre-commit-hooks 2026-03-10 12:16:42 +01:00
Matthias f34ad5fc42 chore(ci): pass dockerhub secrets from parent
though they only exist in the environment
2026-03-10 07:15:31 +01:00
Matthias 6b6dcd8c52 chore(ci): re-add secrets as docker build parameters 2026-03-10 06:47:48 +01:00
Matthias d5fa99696d fix(ci): allow certain secrets at repo level 2026-03-10 06:46:15 +01:00
Freqtrade Bot 2d75f002f9 chore: update pre-commit hooks 2026-03-10 03:45:37 +00:00
Matthias c31894be72 chore: enable docker description dispatch 2026-03-09 20:10:13 +01:00
Matthias 4d254952e3 fix(ci): move Docker environment vars to environment 2026-03-09 20:09:50 +01:00
Matthias 24c57b5356 fix(ci): move REPO_SCOPED_TOKEN to be an environment token 2026-03-09 19:55:36 +01:00
Matthias 186e547ce1 chore(ci): fix wrong version in upload-artifact 2026-03-09 19:45:37 +01:00
Matthias 555f653440 Merge pull request #12906 from freqtrade/dependabot/pip/develop/sqlalchemy-2.0.47
chore(deps): bump sqlalchemy from 2.0.46 to 2.0.47
2026-03-09 07:23:35 +01:00
Matthias 8ef5f54e61 chore: bump sqlalchemy in pre-commit config 2026-03-09 07:07:27 +01:00
dependabot[bot] 6576528aad chore(deps): bump sqlalchemy from 2.0.46 to 2.0.47
Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 2.0.46 to 2.0.47.
- [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases)
- [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst)
- [Commits](https://github.com/sqlalchemy/sqlalchemy/commits)

---
updated-dependencies:
- dependency-name: sqlalchemy
  dependency-version: 2.0.47
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 06:01:07 +00:00
Matthias 052e6f7865 Merge pull request #12904 from freqtrade/dependabot/pip/develop/scipy-9cda224771
chore(deps-dev): bump scipy-stubs from 1.17.0.2 to 1.17.1.0 in the scipy group
2026-03-09 06:57:11 +01:00
Matthias 560cb49d66 chore: bump scipy-stubs in pre-commit config 2026-03-09 06:33:30 +01:00
Matthias c93ca48d17 Merge pull request #12907 from freqtrade/dependabot/pip/develop/ccxt-4.5.42
chore(deps): bump ccxt from 4.5.40 to 4.5.42
2026-03-09 06:28:36 +01:00
Matthias c2d682a5ed Merge pull request #12908 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-7.3.1
chore(deps): bump astral-sh/setup-uv from 7.3.0 to 7.3.1
2026-03-09 06:28:10 +01:00
Matthias 1e7c9cc285 Merge pull request #12905 from freqtrade/dependabot/github_actions/develop/actions-1a3042a095
chore(deps): bump the actions group with 2 updates
2026-03-09 06:27:57 +01:00
Matthias f0a9a6a7c0 Merge pull request #12913 from freqtrade/dependabot/pip/develop/filelock-3.25.0
chore(deps): bump filelock from 3.24.3 to 3.25.0
2026-03-09 06:27:09 +01:00
Matthias 47433ebe67 Merge pull request #12912 from freqtrade/dependabot/pip/develop/isort-8.0.1
chore(deps-dev): bump isort from 8.0.0 to 8.0.1
2026-03-09 06:26:56 +01:00
Matthias e2034ed286 Merge pull request #12911 from freqtrade/dependabot/pip/develop/certifi-2026.2.25
chore(deps): bump certifi from 2026.1.4 to 2026.2.25
2026-03-09 06:26:46 +01:00
Matthias cd5b9a0d56 Merge pull request #12910 from freqtrade/dependabot/pip/develop/ruff-0.15.4
chore(deps-dev): bump ruff from 0.15.2 to 0.15.4
2026-03-09 06:26:31 +01:00
Matthias 8dd3fdafa9 Merge pull request #12903 from freqtrade/dependabot/pip/develop/mkdocs-007c418a98
chore(deps): bump mkdocs-material from 9.7.2 to 9.7.3 in the mkdocs group
2026-03-09 06:25:54 +01:00
Matthias 6d6a9619a3 Merge pull request #12909 from freqtrade/dependabot/pip/develop/fastapi-0.135.1
chore(deps): bump fastapi from 0.131.0 to 0.135.1
2026-03-09 06:24:29 +01:00
dependabot[bot] a097727e32 chore(deps): bump filelock from 3.24.3 to 3.25.0
Bumps [filelock](https://github.com/tox-dev/py-filelock) from 3.24.3 to 3.25.0.
- [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.24.3...3.25.0)

---
updated-dependencies:
- dependency-name: filelock
  dependency-version: 3.25.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 03:04:50 +00:00
dependabot[bot] 14f3d7c819 chore(deps-dev): bump isort from 8.0.0 to 8.0.1
Bumps [isort](https://github.com/PyCQA/isort) from 8.0.0 to 8.0.1.
- [Release notes](https://github.com/PyCQA/isort/releases)
- [Changelog](https://github.com/PyCQA/isort/blob/main/CHANGELOG.md)
- [Commits](https://github.com/PyCQA/isort/compare/8.0.0...8.0.1)

---
updated-dependencies:
- dependency-name: isort
  dependency-version: 8.0.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 03:04:44 +00:00
dependabot[bot] 7492f6d34e chore(deps): bump certifi from 2026.1.4 to 2026.2.25
Bumps [certifi](https://github.com/certifi/python-certifi) from 2026.1.4 to 2026.2.25.
- [Commits](https://github.com/certifi/python-certifi/compare/2026.01.04...2026.02.25)

---
updated-dependencies:
- dependency-name: certifi
  dependency-version: 2026.2.25
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 03:04:40 +00:00
dependabot[bot] 7a69e85cd6 chore(deps-dev): bump ruff from 0.15.2 to 0.15.4
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.2 to 0.15.4.
- [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.2...0.15.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 03:04:28 +00:00
dependabot[bot] 27a39a4ec6 chore(deps): bump fastapi from 0.131.0 to 0.135.1
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.131.0 to 0.135.1.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.131.0...0.135.1)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.135.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 03:04:06 +00:00
dependabot[bot] 5e520136be chore(deps): bump ccxt from 4.5.40 to 4.5.42
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.40 to 4.5.42.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.40...v4.5.42)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.42
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 03:03:56 +00:00
dependabot[bot] c6c30135c3 chore(deps): bump astral-sh/setup-uv from 7.3.0 to 7.3.1
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 7.3.0 to 7.3.1.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/eac588ad8def6316056a12d4907a9d4d84ff7a3b...5a095e7a2014a4212f075830d4f7277575a9d098)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 7.3.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 03:03:56 +00:00
dependabot[bot] 6f06569a11 chore(deps): bump the actions group with 2 updates
Bumps the actions group with 2 updates: [actions/upload-artifact](https://github.com/actions/upload-artifact) and [actions/download-artifact](https://github.com/actions/download-artifact).


Updates `actions/upload-artifact` from 6.0.0 to 7.0.0
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/b7c566a772e6b6bfb58ed0dc250532a479d7789f...bbbca2ddaa5d8feaa63e36b76fdaad77386f024f)

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

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: actions/download-artifact
  dependency-version: 8.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 03:03:35 +00:00
dependabot[bot] f3f6c7b73c 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.0.2 to 1.17.1.0
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.17.0.2...v1.17.1.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 03:03:29 +00:00
dependabot[bot] 958a9307fc 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.2 to 9.7.3
- [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.2...9.7.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 03:03:21 +00:00
Matthias c49dc36a23 docs: hyperliquid unified accounts documentation 2026-03-08 15:45:10 +01:00
Matthias 6cf73786e3 feat: Be verbose on init 2026-03-08 15:17:19 +01:00
Matthias 71f03ffbc6 feat: support hyperliquid unified account 2026-03-08 15:15:46 +01:00
Matthias b57a7f207e test: simplify ccxt_order_parse test (but improve it at the same time) 2026-03-06 21:07:59 +01:00
Matthias b283cabbcd refactor: rely on parent class "needstickers" property 2026-03-06 18:32:14 +01:00
Matthias 38e64e06d1 refactor: use default "needstickers" function
most pairlists use False - so we can use this default and omit tons of lines.
2026-03-06 18:31:40 +01:00
Matthias b35082e45e docs: update brightness of discord badge 2026-03-06 06:38:58 +01:00
Matthias 02475ebcce Merge pull request #12899 from stash86/main-stash
fix typo
2026-03-05 09:54:47 +01:00
Stefano d584544a6a fix typo 2026-03-05 17:36:22 +09:00
Matthias 428d1397a7 Merge pull request #12874 from stash86/main-stash
Add CrossMarketPairList
2026-03-05 06:57:31 +01:00
Matthias aabda8d4f1 test: simplify test 2026-03-05 06:40:04 +01:00
Matthias 9cee5cc4d0 chore: fix pairlist docstring 2026-03-05 06:39:51 +01:00
Matthias 9dd2a9e5f5 Merge pull request #12898 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-03-05 06:33:51 +01:00
Freqtrade Bot 2832c6b858 chore: update pre-commit hooks 2026-03-05 04:12:28 +00:00
Matthias bc0aeb367a Merge pull request #12876 from freqtrade/fix/chinese_char_pairs
Allow non-ascii characters in pair names
2026-03-04 07:11:01 +01:00
Matthias 1e33ea0059 Merge pull request #12890 from hamadbinghalib/fix/download-data-convert-log-format
fix(configuration): avoid format-string IndexError for --convert in download-data
2026-03-04 07:01:38 +01:00
Stefano 0ca49bf1d3 Merge branch 'freqtrade:develop' into main-stash 2026-03-04 10:03:14 +09:00
Stefano c1c2d24bdc fix docs 2026-03-04 10:02:52 +09:00
Stefano bbba9579dc switch "mode" into "pairs_exist_on" 2026-03-04 09:57:11 +09:00
Matthias f92c66db56 Merge pull request #12891 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-03-03 09:54:36 +01:00
Freqtrade Bot f08874d9b8 chore: update pre-commit hooks 2026-03-03 03:46:52 +00:00
hamadbinghalib da0e3912c6 fix(configuration): avoid IndexError with --convert in download-data 2026-03-03 07:08:16 +04:00
Matthias e15cd81383 Merge pull request #12885 from freqtrade/dependabot/pip/develop/filelock-3.24.3
chore(deps): bump filelock from 3.24.2 to 3.24.3
2026-03-02 10:51:11 +01:00
Matthias d1a17a2508 Merge pull request #12886 from freqtrade/dependabot/pip/develop/pyarrow-23.0.1
chore(deps): bump pyarrow from 23.0.0 to 23.0.1
2026-03-02 09:22:56 +01:00
Matthias da3c44137a Merge pull request #12887 from freqtrade/dependabot/pip/develop/ast-comments-1.3.0
chore(deps): bump ast-comments from 1.2.3 to 1.3.0
2026-03-02 09:03:35 +01:00
Matthias 192bd754df chore: add armhf wheel for pyarrow 23.0.1 2026-03-02 06:53:13 +01:00
dependabot[bot] ec46299ec0 chore(deps): bump pyarrow from 23.0.0 to 23.0.1
Bumps [pyarrow](https://github.com/apache/arrow) from 23.0.0 to 23.0.1.
- [Release notes](https://github.com/apache/arrow/releases)
- [Commits](https://github.com/apache/arrow/compare/apache-arrow-23.0.0...apache-arrow-23.0.1)

---
updated-dependencies:
- dependency-name: pyarrow
  dependency-version: 23.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 05:39:01 +00:00
Matthias f1bc324eb3 Merge pull request #12884 from freqtrade/dependabot/pip/develop/uvicorn-0.41.0
chore(deps): bump uvicorn from 0.40.0 to 0.41.0
2026-03-02 06:37:54 +01:00
Matthias f5189f8846 Merge pull request #12888 from freqtrade/dependabot/pip/develop/rich-14.3.3
chore(deps): bump rich from 14.3.2 to 14.3.3
2026-03-02 06:34:52 +01:00
Matthias 29d24c7a9d Merge pull request #12883 from freqtrade/dependabot/pip/develop/ccxt-4.5.40
chore(deps): bump ccxt from 4.5.39 to 4.5.40
2026-03-02 06:34:22 +01:00
Matthias c360f8fe04 Merge pull request #12882 from freqtrade/dependabot/pip/develop/isort-8.0.0
chore(deps-dev): bump isort from 7.0.0 to 8.0.0
2026-03-02 06:34:02 +01:00
Matthias 539b7a3a22 Merge pull request #12880 from freqtrade/dependabot/pip/develop/fastapi-0.131.0
chore(deps): bump fastapi from 0.129.0 to 0.131.0
2026-03-02 06:33:38 +01:00
dependabot[bot] 8a67eee960 chore(deps): bump filelock from 3.24.2 to 3.24.3
Bumps [filelock](https://github.com/tox-dev/py-filelock) from 3.24.2 to 3.24.3.
- [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.24.2...3.24.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 05:32:46 +00:00
Matthias de0c275832 Merge pull request #12879 from freqtrade/dependabot/pip/develop/ruff-0.15.2
chore(deps-dev): bump ruff from 0.15.1 to 0.15.2
2026-03-02 06:31:48 +01:00
Matthias 97062ef4b8 Merge pull request #12878 from freqtrade/dependabot/pip/develop/scipy-3a2038e1d7
chore(deps): bump scipy from 1.17.0 to 1.17.1 in the scipy group
2026-03-02 06:30:49 +01:00
Matthias ac5491bf6d Merge pull request #12877 from freqtrade/dependabot/pip/develop/mkdocs-ec1788883e
chore(deps): bump mkdocs-material from 9.7.1 to 9.7.2 in the mkdocs group
2026-03-02 06:30:22 +01:00
dependabot[bot] d49075b4e2 chore(deps): bump rich from 14.3.2 to 14.3.3
Bumps [rich](https://github.com/Textualize/rich) from 14.3.2 to 14.3.3.
- [Release notes](https://github.com/Textualize/rich/releases)
- [Changelog](https://github.com/Textualize/rich/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Textualize/rich/compare/v14.3.2...v14.3.3)

---
updated-dependencies:
- dependency-name: rich
  dependency-version: 14.3.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 03:04:49 +00:00
dependabot[bot] e9f3543040 chore(deps): bump ast-comments from 1.2.3 to 1.3.0
Bumps [ast-comments](https://github.com/t3rn0/ast-comments) from 1.2.3 to 1.3.0.
- [Release notes](https://github.com/t3rn0/ast-comments/releases)
- [Commits](https://github.com/t3rn0/ast-comments/compare/1.2.3...1.3.0)

---
updated-dependencies:
- dependency-name: ast-comments
  dependency-version: 1.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 03:04:45 +00:00
dependabot[bot] 022134a652 chore(deps): bump uvicorn from 0.40.0 to 0.41.0
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.40.0 to 0.41.0.
- [Release notes](https://github.com/Kludex/uvicorn/releases)
- [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/uvicorn/compare/0.40.0...0.41.0)

---
updated-dependencies:
- dependency-name: uvicorn
  dependency-version: 0.41.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 03:04:14 +00:00
dependabot[bot] e551cb0bfe chore(deps): bump ccxt from 4.5.39 to 4.5.40
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.39 to 4.5.40.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.39...v4.5.40)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.40
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 03:04:05 +00:00
dependabot[bot] 2731decf60 chore(deps-dev): bump isort from 7.0.0 to 8.0.0
Bumps [isort](https://github.com/PyCQA/isort) from 7.0.0 to 8.0.0.
- [Release notes](https://github.com/PyCQA/isort/releases)
- [Changelog](https://github.com/PyCQA/isort/blob/main/CHANGELOG.md)
- [Commits](https://github.com/PyCQA/isort/compare/7.0.0...8.0.0)

---
updated-dependencies:
- dependency-name: isort
  dependency-version: 8.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 03:03:54 +00:00
dependabot[bot] 5dad681ab6 chore(deps): bump fastapi from 0.129.0 to 0.131.0
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.129.0 to 0.131.0.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.129.0...0.131.0)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.131.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 03:03:44 +00:00
dependabot[bot] 96f7c1e37b chore(deps-dev): bump ruff from 0.15.1 to 0.15.2
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.1 to 0.15.2.
- [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.1...0.15.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 03:03:35 +00:00
dependabot[bot] bab787efb1 chore(deps): bump scipy from 1.17.0 to 1.17.1 in the scipy group
Bumps the scipy group with 1 update: [scipy](https://github.com/scipy/scipy).


Updates `scipy` from 1.17.0 to 1.17.1
- [Release notes](https://github.com/scipy/scipy/releases)
- [Commits](https://github.com/scipy/scipy/compare/v1.17.0...v1.17.1)

---
updated-dependencies:
- dependency-name: scipy
  dependency-version: 1.17.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: scipy
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 03:03:24 +00:00
dependabot[bot] 2601be0777 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.1 to 9.7.2
- [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.1...9.7.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 03:03:12 +00:00
Stefano e487b76d1e Merge branch 'main-stash' of https://github.com/stash86/freqtrade into main-stash 2026-03-02 10:24:52 +09:00
Stefano 5788a75acc add tests to satisfy codecov 2026-03-02 10:24:45 +09:00
Stefano 64f87fe187 Update freqtrade/plugins/pairlist/CrossMarketPairList.py
Co-authored-by: Matthias <xmatthias@outlook.com>
2026-03-01 08:28:56 +09:00
Matthias 84a680d6c3 fix: improve non-matching pairs filter 2026-02-28 13:32:01 +01:00
Matthias 56d73e0d74 test: update tests for new, simplified scenarios 2026-02-28 13:03:48 +01:00
Matthias b8220a0a46 fix: Support non-utf8 characters in pair filenames 2026-02-28 13:03:19 +01:00
Matthias 31bec6b65e fix: allow chinese names as pair names 2026-02-28 13:03:19 +01:00
Matthias a73028796c chore: bump version to 2026.3-dev 2026-02-28 08:07:35 +01:00
Stefano 3b59616cbe add to checma 2026-02-28 11:03:24 +09:00
Stefano 818162b630 fix letters' case 2026-02-28 11:01:45 +09:00
Stefano 991a1b1ab7 add tests 2026-02-28 10:58:34 +09:00
Stefano b94b0926a7 Merge branch 'freqtrade:develop' into main-stash 2026-02-27 16:53:10 +09:00
Matthias f7b11c5166 Merge pull request #12863 from ABSllk/fix-pairlock-expiration
fix: align pairlock backtesting expiration condition with live/dry run
2026-02-27 07:02:04 +01:00
Matthias 2e92fccd7b Merge pull request #12865 from stash86/develop-copy
move pair prefixes to constants, update prefixes
2026-02-27 06:38:40 +01:00
Stefano 09c60b9543 remove M 2026-02-27 14:17:46 +09:00
Matthias 166476b21c refactor: remove unused method 2026-02-26 20:17:35 +01:00
ABS 3a775a5b65 test: align backtest_pricecontours expected trades with correctly fixed pairlock expiry duration 2026-02-26 14:23:42 +08:00
Matthias ab9b6989be fix: historic precision must also workf or big numbers 2026-02-26 07:14:37 +01:00
Matthias 1f69cafd16 Merge pull request #12867 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-02-26 06:35:22 +01:00
Freqtrade Bot 7030b0bfcc chore: update pre-commit hooks 2026-02-26 04:13:10 +00:00
Stefano 8fb21e8f50 change into pairlist plugin 2026-02-25 17:17:26 +09:00
Stefano f0dd3e4ab8 move pair prefixes to constants 2026-02-25 16:17:35 +09:00
Stefano 9719f28795 add crossmarketfilter 2026-02-25 15:51:56 +09:00
Matthias 402ef216c3 chore: bump dockerfile from 3.13.11 to 3.13.12 2026-02-25 07:24:36 +01:00
Matthias 5f585e330f docs: Add discord server Badge 2026-02-25 07:20:25 +01:00
Matthias 6d04874e26 docs: update coverage badge 2026-02-24 23:14:53 +01:00
Matthias 4b45e3f3d2 chore(ci): bump pester version in Ci 2026-02-24 22:34:25 +01:00
Matthias 4359de7cc5 test: fix exchange.close test warnings 2026-02-24 22:01:50 +01:00
Matthias 48015a9b1b fix: path traversal in web_ui 2026-02-24 21:52:37 +01:00
Matthias 34df7b1793 test: add test for path traversal fix 2026-02-24 21:50:23 +01:00
Matthias 429276cac6 test: add tests for base64 strategy verification 2026-02-24 21:20:48 +01:00
Matthias e7154c93a9 fix: disallow base64 strategies through rpc endpoints 2026-02-24 21:20:34 +01:00
Matthias 523a9d644b test: update test for new error message 2026-02-24 21:12:00 +01:00
Matthias 3a6311b7fc refactor: extract check for base64 strategies 2026-02-24 21:11:52 +01:00
Matthias f6dbca35f3 fix: safe_value_dict on a non-iterable object 2026-02-24 20:33:20 +01:00
Matthias 07e1088839 test: improve safe_value_nested test 2026-02-24 20:31:05 +01:00
Matthias 74d373e37d docs: improve contributing formatting 2026-02-24 18:51:22 +01:00
Matthias 6ce4d1a7c5 docs: update contributing about AI usage 2026-02-24 18:24:34 +01:00
ABS 402a3bb2c2 Merge branch 'freqtrade:develop' into fix-pairlock-expiration 2026-02-24 15:21:22 +08:00
ABS 961eaef2a5 fix: align pairlock backtesting expiration condition with live/dry run 2026-02-24 15:19:09 +08:00
Matthias 6e49a90730 docs: improve some doc formatting/wording 2026-02-24 06:44:24 +01:00
Matthias 246a9049e6 Merge pull request #12862 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-02-24 06:38:39 +01:00
Freqtrade Bot 816f81e5b4 chore: update pre-commit hooks 2026-02-24 03:48:10 +00:00
Matthias 49e32b2600 Merge pull request #12835 from ABSllk/feat/fix-max-drawdown-protection
Change max drawdown protection calculation
2026-02-23 20:32:44 +01:00
Matthias b6993f0b24 test: fix random test failure due to missing mandatory key 2026-02-23 20:14:20 +01:00
ABS 58079a8b50 refactor: fetch starting_balance only once at backtest initialization 2026-02-23 16:15:43 +08:00
Matthias bdf080155d Merge pull request #12855 from freqtrade/dependabot/pip/develop/xgboost-3.2.0
chore(deps): bump xgboost from 3.1.3 to 3.2.0
2026-02-23 06:37:24 +01:00
Matthias 52fede6307 Merge pull request #12854 from freqtrade/dependabot/pip/develop/ccxt-4.5.39
chore(deps): bump ccxt from 4.5.38 to 4.5.39
2026-02-23 06:34:39 +01:00
Matthias 7d6c80fa7c Merge pull request #12853 from freqtrade/dependabot/pip/develop/cachetools-7.0.1
chore(deps): bump cachetools from 7.0.0 to 7.0.1
2026-02-23 06:33:48 +01:00
Matthias 814111adb9 Merge pull request #12852 from freqtrade/dependabot/pip/develop/fastapi-0.129.0
chore(deps): bump fastapi from 0.128.5 to 0.129.0
2026-02-23 06:33:33 +01:00
Matthias f0f4191dcf Merge pull request #12851 from freqtrade/dependabot/pip/develop/filelock-3.24.2
chore(deps): bump filelock from 3.20.3 to 3.24.2
2026-02-23 06:33:11 +01:00
Matthias 9a80a11577 Merge pull request #12850 from freqtrade/dependabot/pip/develop/ruff-0.15.1
chore(deps-dev): bump ruff from 0.15.0 to 0.15.1
2026-02-23 06:32:39 +01:00
Matthias 5551a287a8 Merge pull request #12857 from freqtrade/dependabot/pip/develop/markdown-3.10.2
chore(deps): bump markdown from 3.10.1 to 3.10.2
2026-02-23 06:32:06 +01:00
Matthias b0f7c91548 Merge pull request #12856 from freqtrade/dependabot/pip/develop/pymdown-extensions-10.21
chore(deps): bump pymdown-extensions from 10.20.1 to 10.21
2026-02-23 06:31:49 +01:00
dependabot[bot] 9232e17af4 chore(deps): bump markdown from 3.10.1 to 3.10.2
Bumps [markdown](https://github.com/Python-Markdown/markdown) from 3.10.1 to 3.10.2.
- [Release notes](https://github.com/Python-Markdown/markdown/releases)
- [Changelog](https://github.com/Python-Markdown/markdown/blob/master/docs/changelog.md)
- [Commits](https://github.com/Python-Markdown/markdown/compare/3.10.1...3.10.2)

---
updated-dependencies:
- dependency-name: markdown
  dependency-version: 3.10.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-23 03:04:11 +00:00
dependabot[bot] d962137d24 chore(deps): bump pymdown-extensions from 10.20.1 to 10.21
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.20.1 to 10.21.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/commits/10.21)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-version: '10.21'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-23 03:04:07 +00:00
dependabot[bot] 22c91137bb chore(deps): bump xgboost from 3.1.3 to 3.2.0
Bumps [xgboost](https://github.com/dmlc/xgboost) from 3.1.3 to 3.2.0.
- [Release notes](https://github.com/dmlc/xgboost/releases)
- [Changelog](https://github.com/dmlc/xgboost/blob/master/NEWS.md)
- [Commits](https://github.com/dmlc/xgboost/compare/v3.1.3...v3.2.0)

---
updated-dependencies:
- dependency-name: xgboost
  dependency-version: 3.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-23 03:04:04 +00:00
dependabot[bot] 92b8bdd113 chore(deps): bump ccxt from 4.5.38 to 4.5.39
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.38 to 4.5.39.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.38...v4.5.39)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.39
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-23 03:03:55 +00:00
dependabot[bot] 3c5178b002 chore(deps): bump cachetools from 7.0.0 to 7.0.1
Bumps [cachetools](https://github.com/tkem/cachetools) from 7.0.0 to 7.0.1.
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tkem/cachetools/compare/v7.0.0...v7.0.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-23 03:03:43 +00:00
dependabot[bot] 8231005225 chore(deps): bump fastapi from 0.128.5 to 0.129.0
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.128.5 to 0.129.0.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.128.5...0.129.0)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.129.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-23 03:03:36 +00:00
dependabot[bot] 2646313c11 chore(deps): bump filelock from 3.20.3 to 3.24.2
Bumps [filelock](https://github.com/tox-dev/py-filelock) from 3.20.3 to 3.24.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.20.3...3.24.2)

---
updated-dependencies:
- dependency-name: filelock
  dependency-version: 3.24.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-23 03:03:31 +00:00
dependabot[bot] 12b4875e24 chore(deps-dev): bump ruff from 0.15.0 to 0.15.1
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.0 to 0.15.1.
- [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.0...0.15.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-23 03:03:13 +00:00
ABS 6a98df1c71 Merge branch 'freqtrade:develop' into feat/fix-max-drawdown-protection 2026-02-23 10:36:08 +08:00
ABS a5d24f14cb docs: clarify MaxDrawdown calculation modes and update example 2026-02-23 10:34:59 +08:00
ABS 50f914d6d5 fix: pass starting_balance to protection manager in backtest 2026-02-23 10:34:41 +08:00
Matthias b4422131fb chore: move show_sensitive warning
out of datadir options
2026-02-22 19:51:51 +01:00
Matthias f61b50dbfc chore: improved docstring 2026-02-21 20:35:50 +01:00
Matthias ce590cced7 chore: clarify --export-filename Deprecation messages
part of #12846
2026-02-21 20:20:14 +01:00
Matthias a417af1ff0 chore: add note to todo about still running jobs 2026-02-21 16:56:55 +01:00
Matthias d2e650d188 chore: remove missleading comment in help 2026-02-21 16:34:04 +01:00
Matthias 088516b2ed chore: Update help to clarify backtest-filename deprecation
closes #12846
2026-02-21 13:19:38 +01:00
Matthias 797ea46bb3 Merge pull request #12840 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-02-19 06:49:54 +01:00
Freqtrade Bot 96c0a6296f chore: update pre-commit hooks 2026-02-19 04:13:39 +00:00
ABS e524e030ef docs: clarify mode behavior and sample config in MaxDrawdown protection 2026-02-19 04:21:32 +08:00
ABS e19d96f85c test: improve MaxDrawdown mode coverage and naming 2026-02-19 04:20:21 +08:00
ABS 0672d8f094 refactor: limit pre-window balance aggregation to equity mode 2026-02-19 04:19:27 +08:00
ABS 780858f538 Merge branch 'freqtrade:develop' into feat/fix-max-drawdown-protection 2026-02-19 04:15:09 +08:00
Matthias 7ec495be67 Merge pull request #12839 from dux-helektra/develop
`/ping` endpoint support HEAD request method
2026-02-18 18:27:57 +01:00
ABS d27aef2063 fix: correct parameter naming 2026-02-18 20:59:02 +08:00
dux-helektra d7d07bde75 /ping route support HEAD request method
Allow services like Uptimerobot to monitor the WebUI which uses `HEAD` request method because it is lighter whereas in order to use `GET` method, payment is required.

There's no significant impact for this changes.
2026-02-18 11:16:21 +08:00
ABS f54ccde5fc Merge branch 'freqtrade:develop' into feat/fix-max-drawdown-protection 2026-02-17 15:20:40 +08:00
ABS e1d7c7a081 test: update MaxDrawdown protection tests for starting_balance and calculation modes 2026-02-17 15:20:12 +08:00
ABS d593384219 docs: update MaxDrawdown protections documentation with new calculation methods 2026-02-17 15:19:26 +08:00
ABS 5c737d977d refactor: optimize performance and remove redundant logic in protections 2026-02-17 15:18:22 +08:00
Matthias 22c0af9bb1 Merge pull request #12837 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-02-17 06:35:21 +01:00
Freqtrade Bot 1c21b092e6 chore: update pre-commit hooks 2026-02-17 03:48:08 +00:00
Matthias 2325e5f535 chore: reduce binance futures candle count to 499
closes #12751
2026-02-16 19:54:36 +01:00
ABS dbaece9462 docs: update MaxDrawdown description to reflect equity-based logic 2026-02-16 20:43:39 +08:00
ABS edd33ab77e Test: update MaxDrawdown tests to match new equity-based logic 2026-02-16 20:32:18 +08:00
ABS 38934ddda2 Feat: implement accurate drawdown calculation in MaxDrawdown protection 2026-02-16 20:32:02 +08:00
ABS 5c9455c32a Refactor: update IProtection interface to support starting_balance 2026-02-16 20:31:43 +08:00
Matthias 9e2eca3b8b Merge pull request #12829 from freqtrade/dependabot/pip/develop/ccxt-4.5.38
chore(deps): bump ccxt from 4.5.36 to 4.5.38
2026-02-16 06:40:21 +01:00
Matthias 82a487ec50 Merge pull request #12832 from freqtrade/dependabot/pip/develop/fastapi-0.128.5
chore(deps): bump fastapi from 0.128.0 to 0.128.5
2026-02-16 06:38:30 +01:00
Matthias 466db15ccb Merge pull request #12831 from freqtrade/dependabot/pip/develop/tqdm-4.67.3
chore(deps): bump tqdm from 4.67.2 to 4.67.3
2026-02-16 06:38:01 +01:00
Matthias c7dfb005ba Merge pull request #12833 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-7.3.0
chore(deps): bump astral-sh/setup-uv from 7.2.0 to 7.3.0
2026-02-16 06:37:37 +01:00
Matthias 82ae8b64e4 Merge pull request #12830 from freqtrade/dependabot/pip/develop/orjson-3.11.7
chore(deps): bump orjson from 3.11.6 to 3.11.7
2026-02-16 06:37:21 +01:00
dependabot[bot] 1ffc2e47a1 chore(deps): bump astral-sh/setup-uv from 7.2.0 to 7.3.0
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 7.2.0 to 7.3.0.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/61cb8a9741eeb8a550a1b8544337180c0fc8476b...eac588ad8def6316056a12d4907a9d4d84ff7a3b)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 7.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-16 03:03:57 +00:00
dependabot[bot] a5c392e176 chore(deps): bump fastapi from 0.128.0 to 0.128.5
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.128.0 to 0.128.5.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.128.0...0.128.5)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.128.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-16 03:03:50 +00:00
dependabot[bot] 8f9754dd54 chore(deps): bump tqdm from 4.67.2 to 4.67.3
Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.67.2 to 4.67.3.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](https://github.com/tqdm/tqdm/compare/v4.67.2...v4.67.3)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-version: 4.67.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-16 03:03:35 +00:00
dependabot[bot] b3b3b1d134 chore(deps): bump orjson from 3.11.6 to 3.11.7
Bumps [orjson](https://github.com/ijl/orjson) from 3.11.6 to 3.11.7.
- [Release notes](https://github.com/ijl/orjson/releases)
- [Changelog](https://github.com/ijl/orjson/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ijl/orjson/compare/3.11.6...3.11.7)

---
updated-dependencies:
- dependency-name: orjson
  dependency-version: 3.11.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-16 03:03:28 +00:00
dependabot[bot] 26fd70ce4b chore(deps): bump ccxt from 4.5.36 to 4.5.38
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.36 to 4.5.38.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.36...v4.5.38)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.38
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-16 03:03:15 +00:00
Matthias 18aed385f9 fix: increment latest ID by 1 on migration
part of  #12825
2026-02-15 19:28:11 +01:00
Matthias e6db0ab00d fix: pairlocks table migration on postgres 2026-02-15 18:27:22 +01:00
Matthias 8ed1e6c394 chore: refactor get_last_sequence_ids 2026-02-15 18:24:02 +01:00
Matthias da62e614d7 chore: improve typesafety for migrations 2026-02-15 18:10:42 +01:00
Matthias ca94909ccc test: improve test for migrate_set_sequence_id's 2026-02-15 18:09:05 +01:00
Matthias 131c1aaf13 chore: clarify set_sequence_id's docstring 2026-02-15 18:08:26 +01:00
Matthias 5f06b1d43e test: update dry_order_fill test 2026-02-15 16:14:00 +01:00
Matthias c999de6291 feat: immediately triggering stoploss orders should cause emergency exits
closes #12824
2026-02-15 16:12:13 +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 6b86214ca8 fix: random hangs in CI 2026-02-14 18:09:33 +01:00
Matthias df6f53ba30 test: update set_sequence_ids test 2026-02-14 16:08:35 +01:00
Matthias 0888f6dba0 feat: add db migration functionality for custom-data and kv store
closes #12825
2026-02-14 16:08:26 +01:00
Matthias 5d3c798dfd fix: further improve exchange.close fix 2026-02-14 13:22:46 +01:00
Matthias 93d2397f72 fix: improved shutdown loop fix for tests 2026-02-14 08:29:08 +01:00
Matthias 05e759a38c fix: check if loop exists
avoids errors if exchange init shuts down before the loop is created

closes #12822
2026-02-14 08:11:13 +01:00
Matthias 67eaa4ac49 fix: prevent warnings in online tests 2026-02-13 21:03:49 +01:00
Matthias e8aeebb123 fix: use safe_value_nested for features 2026-02-13 20:22:32 +01:00
Matthias d121e97067 test: add test for safe_value_nested 2026-02-13 20:14:01 +01:00
Matthias bdf5c4de8e feat: add safe_value_nested function 2026-02-13 20:13:49 +01:00
Matthias 7492cf8bf5 docs: update doc links from latest to stable 2026-02-12 19:03:08 +01:00
Matthias d29d4cba66 chore: update doc links from latest to stable 2026-02-12 19:01:42 +01:00
Matthias 655d61e560 docs: Have readme links point to the documentation 2026-02-12 07:03:58 +01:00
Matthias ba6d210662 Merge pull request #12811 from stash86/main-stash
Add note about different pair naming for HIP-3
2026-02-12 07:03:44 +01:00
Matthias aff46acdd0 Merge pull request #12816 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-02-12 06:36:40 +01:00
Freqtrade Bot 5a16cbe602 chore: update pre-commit hooks 2026-02-12 04:14:36 +00:00
Matthias 519f2d93ba test: update tests for new stoploss_from_absolute behavior 2026-02-11 07:15:29 +01:00
Matthias 646c091e02 fix: don't bracked stoploss to 1
it's problematic for short trades - especially if they move past the 100% profit  margin - as price starts to trail.
2026-02-11 07:15:29 +01:00
Matthias 12c3698480 Merge pull request #12813 from freqtrade/dependabot/pip/cryptography-46.0.5
chore(deps): bump cryptography from 46.0.4 to 46.0.5
2026-02-11 06:57:43 +01:00
dependabot[bot] c86acd20d6 chore(deps): bump cryptography from 46.0.4 to 46.0.5
Bumps [cryptography](https://github.com/pyca/cryptography) from 46.0.4 to 46.0.5.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/46.0.4...46.0.5)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 46.0.5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-11 03:01:11 +00:00
Matthias 60b787edc9 chore: extract schema.json 2026-02-10 20:34:03 +01:00
Matthias eec33190d2 chore: jwt_secret_key is guaranteed to be in the schema now 2026-02-10 20:33:39 +01:00
Matthias 6e38759bd1 chore: add new randomDefault value 2026-02-10 20:22:48 +01:00
Matthias 6a242356a0 docs: update docs about jwt_secret_key 2026-02-10 20:20:29 +01:00
Matthias 04d2ea8773 chore: update sample configs with longer jwt_secret key 2026-02-10 20:19:00 +01:00
Matthias d78ffd7a05 test: use longer JWT_Secret_key for tests 2026-02-10 20:15:35 +01:00
Matthias 3f21a18f46 Merge pull request #12810 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-02-10 19:56:09 +01:00
Matthias c4514f94cf feat: show supported python versions in windows script
closes #12812
2026-02-10 19:50:06 +01:00
Matthias af39ec1e07 fix: improve setup.ps1 stability 2026-02-10 19:50:06 +01:00
Matthias c02530759d feat: show supported versions for setup.sh script
as proposed in #12812
2026-02-10 19:50:06 +01:00
Matthias 6df42502ac chore: simplify MarginMode init 2026-02-10 19:01:08 +01:00
Stefano fea13d1d3d revert wrong markdownlint "fix" 2026-02-10 16:40:41 +09:00
Matthias c7685febcf Merge pull request #12808 from freqtrade/feat/strategy_params
add Strategy parameters  to api
2026-02-10 07:21:05 +01:00
Matthias abf5f2b49a test: update test for strEnum 2026-02-10 07:20:01 +01:00
Matthias 24319585b4 refactor: switch SignalTypes to StrEnum 2026-02-10 07:16:01 +01:00
Matthias 812f357d7e refactor: Update to StrEnum where possible 2026-02-10 07:14:16 +01:00
Matthias 51431d9533 chore: update ruff version 0.15.0 2026-02-10 07:09:40 +01:00
Matthias eb81c70523 chore: format according to 2026 styleguide 2026-02-10 07:05:06 +01:00
Matthias b52805cd96 chore: split Decimal and RealParameters 2026-02-10 06:49:45 +01:00
Matthias cb1266225e chore: fix unused imports 2026-02-10 06:48:47 +01:00
Matthias 33ba2ad17c chore: don't use empty iterable 2026-02-10 06:43:40 +01:00
Matthias 2f2b36f648 chore: cleanup web_ui definition 2026-02-10 06:42:03 +01:00
Matthias aa1de750e9 test: update test for new response code 2026-02-10 06:41:41 +01:00
Stefano 68410f2f37 add note about HIP-3 pair naming 2026-02-10 14:23:30 +09:00
Freqtrade Bot 1f00c9d680 chore: update pre-commit hooks 2026-02-10 03:57:12 +00:00
Matthias a91fd66abc fix: improve openAPI schema definition 2026-02-09 20:02:09 +01:00
Matthias 4036375759 test: remove pointless test calculation 2026-02-09 20:02:09 +01:00
Matthias 9eb668d08a chore: improve response security 2026-02-09 20:02:09 +01:00
Matthias ed22b4e09b Merge pull request #12796 from onerobotband/develop
Fix regex pattern for model folder matching
2026-02-09 08:33:35 +01:00
Matthias 52090d7b8e Merge pull request #12804 from freqtrade/dependabot/github_actions/develop/zizmorcore/zizmor-action-0.5.0
chore(deps): bump zizmorcore/zizmor-action from 0.4.1 to 0.5.0
2026-02-09 07:11:12 +01:00
Matthias 3a065c27e8 Merge pull request #12805 from freqtrade/dependabot/pip/develop/cryptography-46.0.4
chore(deps): bump cryptography from 46.0.3 to 46.0.4
2026-02-09 07:11:03 +01:00
Matthias a14f54735c Merge pull request #12799 from freqtrade/dependabot/pip/develop/pyjwt-2.11.0
chore(deps): bump pyjwt from 2.10.1 to 2.11.0
2026-02-09 07:03:00 +01:00
Matthias c5697c7d68 Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-09 06:52:56 +01:00
Matthias 6381a32685 Merge pull request #12807 from freqtrade/dependabot/pip/develop/cachetools-7.0.0
chore(deps): bump cachetools from 6.2.5 to 7.0.0
2026-02-09 06:37:39 +01:00
dependabot[bot] 42230fdd0e chore(deps): bump pyjwt from 2.10.1 to 2.11.0
Bumps [pyjwt](https://github.com/jpadilla/pyjwt) from 2.10.1 to 2.11.0.
- [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.10.1...2.11.0)

---
updated-dependencies:
- dependency-name: pyjwt
  dependency-version: 2.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 05:36:20 +00:00
dependabot[bot] 4934a83a2d chore(deps): bump cryptography from 46.0.3 to 46.0.4
Bumps [cryptography](https://github.com/pyca/cryptography) from 46.0.3 to 46.0.4.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/46.0.3...46.0.4)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 46.0.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 05:35:32 +00:00
Matthias 0ef0ff2a78 Merge pull request #12797 from freqtrade/dependabot/pip/develop/tqdm-4.67.2
chore(deps): bump tqdm from 4.67.1 to 4.67.2
2026-02-09 06:35:32 +01:00
Matthias 80d23f1ba1 Merge pull request #12803 from freqtrade/dependabot/pip/develop/numpy-2.4.2
chore(deps): bump numpy from 2.4.1 to 2.4.2
2026-02-09 06:34:58 +01:00
Matthias 59b05ece77 Merge pull request #12801 from freqtrade/dependabot/pip/develop/psutil-7.2.2
chore(deps): bump psutil from 7.2.1 to 7.2.2
2026-02-09 06:34:42 +01:00
Matthias e467405e60 Merge pull request #12806 from freqtrade/dependabot/github_actions/develop/docker/login-action-3.7.0
chore(deps): bump docker/login-action from 3.6.0 to 3.7.0
2026-02-09 06:34:25 +01:00
Matthias 1f92c3fd70 Merge pull request #12802 from freqtrade/dependabot/pip/develop/ccxt-4.5.36
chore(deps): bump ccxt from 4.5.35 to 4.5.36
2026-02-09 06:33:11 +01:00
Matthias 74e8875280 Merge pull request #12800 from freqtrade/dependabot/pip/develop/orjson-3.11.6
chore(deps): bump orjson from 3.11.5 to 3.11.6
2026-02-09 06:31:26 +01:00
Matthias 3c44a013e5 Merge pull request #12798 from freqtrade/dependabot/pip/develop/rich-14.3.2
chore(deps): bump rich from 14.3.1 to 14.3.2
2026-02-09 06:30:29 +01:00
dependabot[bot] 8546542a16 chore(deps): bump cachetools from 6.2.5 to 7.0.0
Bumps [cachetools](https://github.com/tkem/cachetools) from 6.2.5 to 7.0.0.
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tkem/cachetools/compare/v6.2.5...v7.0.0)

---
updated-dependencies:
- dependency-name: cachetools
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 03:04:21 +00:00
dependabot[bot] f56460cc1f chore(deps): bump docker/login-action from 3.6.0 to 3.7.0
Bumps [docker/login-action](https://github.com/docker/login-action) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/5e57cd118135c172c3672efd75eb46360885c0ef...c94ce9fb468520275223c153574b00df6fe4bcc9)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 3.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 03:04:12 +00:00
dependabot[bot] 54f25b5b8f chore(deps): bump zizmorcore/zizmor-action from 0.4.1 to 0.5.0
Bumps [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) from 0.4.1 to 0.5.0.
- [Release notes](https://github.com/zizmorcore/zizmor-action/releases)
- [Commits](https://github.com/zizmorcore/zizmor-action/compare/135698455da5c3b3e55f73f4419e481ab68cdd95...0dce2577a4760a2749d8cfb7a84b7d5585ebcb7d)

---
updated-dependencies:
- dependency-name: zizmorcore/zizmor-action
  dependency-version: 0.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 03:04:02 +00:00
dependabot[bot] 541b976b8e chore(deps): bump numpy from 2.4.1 to 2.4.2
Bumps [numpy](https://github.com/numpy/numpy) from 2.4.1 to 2.4.2.
- [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.1...v2.4.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 03:03:58 +00:00
dependabot[bot] b6c7e24cad chore(deps): bump ccxt from 4.5.35 to 4.5.36
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.35 to 4.5.36.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.35...v4.5.36)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.36
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 03:03:51 +00:00
dependabot[bot] 22d624a25d chore(deps): bump psutil from 7.2.1 to 7.2.2
Bumps [psutil](https://github.com/giampaolo/psutil) from 7.2.1 to 7.2.2.
- [Changelog](https://github.com/giampaolo/psutil/blob/master/HISTORY.rst)
- [Commits](https://github.com/giampaolo/psutil/compare/release-7.2.1...release-7.2.2)

---
updated-dependencies:
- dependency-name: psutil
  dependency-version: 7.2.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 03:03:40 +00:00
dependabot[bot] d482117fd1 chore(deps): bump orjson from 3.11.5 to 3.11.6
Bumps [orjson](https://github.com/ijl/orjson) from 3.11.5 to 3.11.6.
- [Release notes](https://github.com/ijl/orjson/releases)
- [Changelog](https://github.com/ijl/orjson/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ijl/orjson/compare/3.11.5...3.11.6)

---
updated-dependencies:
- dependency-name: orjson
  dependency-version: 3.11.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 03:03:35 +00:00
dependabot[bot] 835f00b106 chore(deps): bump rich from 14.3.1 to 14.3.2
Bumps [rich](https://github.com/Textualize/rich) from 14.3.1 to 14.3.2.
- [Release notes](https://github.com/Textualize/rich/releases)
- [Changelog](https://github.com/Textualize/rich/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Textualize/rich/compare/v14.3.1...v14.3.2)

---
updated-dependencies:
- dependency-name: rich
  dependency-version: 14.3.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 03:03:22 +00:00
dependabot[bot] 55c3b83fa8 chore(deps): bump tqdm from 4.67.1 to 4.67.2
Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.67.1 to 4.67.2.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](https://github.com/tqdm/tqdm/compare/v4.67.1...v4.67.2)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-version: 4.67.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 03:03:14 +00:00
Matthias 348afa46f0 chore: update api_version to 2.47 2026-02-08 19:41:59 +01:00
Matthias a7890a964f test: add test for /strategy live mode 2026-02-08 13:52:33 +01:00
Matthias ba57ab9a1b feat: add trade mode /strategy endpoint 2026-02-08 13:36:26 +01:00
Matthias ac6b396ed3 chore: improve type-safety 2026-02-08 13:30:23 +01:00
Matthias 570bfef4b3 test: /strategy/ includes random spaces 2026-02-08 13:30:23 +01:00
Matthias 100babc056 test: improve api-strategy test 2026-02-08 13:30:23 +01:00
Matthias 5ab8338c3e feat: add strategy-parameters to /strategy endpoint 2026-02-08 13:30:23 +01:00
Matthias 600b6a7d23 refactor: rename "decimal" variable in Decimal parameter 2026-02-08 13:30:23 +01:00
Matthias f6e465a0ba test: add test for paramType property 2026-02-08 13:30:23 +01:00
Matthias bea006880b feat: add paramType to Strategy Parameters 2026-02-08 13:30:23 +01:00
Matthias a7e35f5d78 chore: cleanup web_ui definition 2026-02-08 13:30:14 +01:00
onerobotband 5fb963abbf Fix regex pattern for model folder matching
Allows freqai to purge model train folders with non-alphanumeric characters in them (eg. hip3 pairs with hyphen)
2026-02-08 11:42:31 +00:00
Matthias 351fe62d18 feat: add prepend_data to download_data endpoint
part of freqtrade/frequi#2743
2026-02-07 13:51:31 +01:00
Matthias 65a713a569 fix: don't break list-strategies if one strategy has invalid parameters 2026-02-07 13:40:51 +01:00
Matthias 646531cbfc test: type ccxt_online test setups 2026-02-06 14:07:39 +01:00
Matthias 8233ca67bb chore: update timing in hopes to improve runtime 2026-02-06 13:00:16 +01:00
Matthias d991069efc Merge pull request #12793 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-02-06 12:58:57 +01:00
Freqtrade Bot d86bca9f00 chore: update pre-commit hooks 2026-02-06 07:03:20 +00:00
Matthias 82f71d8e4b chore(ci): update lev-tier-update to use UV and python 3.14 2026-02-06 08:02:36 +01:00
Matthias 315a1baf2c test: simplified test setup for compat tests 2026-02-05 20:19:06 +01:00
Matthias e5bd33061b test: limit live futures tests to actual futures exchanges 2026-02-05 19:56:04 +01:00
Matthias 06ed6e6b23 test: fix candle-limit live test 2026-02-05 19:42:23 +01:00
Robert Caulk 6814bc84aa fix: Try to fix linting 2026-02-05 17:24:17 +01:00
Robert Caulk 783c365c10 fix: Avoid circular import 2026-02-05 17:15:00 +01:00
Matthias 4a578148e2 Merge pull request #12789 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-02-05 09:15:12 +01:00
Matthias 2c0a029187 feat: add markpoint rotate support
closes #12787
2026-02-05 07:09:07 +01:00
Freqtrade Bot a3b83afa84 chore: update pre-commit hooks 2026-02-05 03:51:21 +00:00
Matthias 6c2a5b460e feat: use extra="forbid" in annotation Validations
this can be problematic if many users have additional data in their annotations.
2026-02-04 07:14:03 +01:00
Matthias aa302fe531 docs: improve plot-annotation example 2026-02-04 07:11:39 +01:00
Matthias f2c2e84a74 docs: update point annotation documentation
closes #12784
2026-02-04 06:55:00 +01:00
Matthias d73a173c6e fix: avoid warning for dry stoploss orders 2026-02-03 20:38:05 +01:00
Matthias 110b50a3cb test: improve test_exchangews_ohlcv test setup 2026-02-02 20:30:02 +01:00
Matthias 36f5afe910 chore: bump nbconvert to 7.17.0 2026-02-02 20:09:35 +01:00
Matthias 15f79c19a0 Merge pull request #12766 from freqtrade/dependabot/pip/develop/scipy-d123495ba6
chore(deps-dev): bump scipy-stubs from 1.17.0.1 to 1.17.0.2 in the scipy group
2026-02-02 14:40:56 +01:00
Matthias 7135466092 chore: bump scipy-stubs in pre-commit config 2026-02-02 14:25:06 +01:00
dependabot[bot] e4c25ed07e 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.0.1 to 1.17.0.2
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.17.0.1...v1.17.0.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 13:20:39 +00:00
Matthias 273ac9a9c0 Merge pull request #12777 from freqtrade/dependabot/pip/develop/sqlalchemy-2.0.46
chore(deps): bump sqlalchemy from 2.0.45 to 2.0.46
2026-02-02 11:23:35 +01:00
Matthias 7007e71dcf chore: bump sqlalchemy in pre-commit config 2026-02-02 10:32:49 +01:00
dependabot[bot] 14247854ce chore(deps): bump sqlalchemy from 2.0.45 to 2.0.46
Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 2.0.45 to 2.0.46.
- [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases)
- [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst)
- [Commits](https://github.com/sqlalchemy/sqlalchemy/commits)

---
updated-dependencies:
- dependency-name: sqlalchemy
  dependency-version: 2.0.46
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 07:13:53 +00:00
Matthias d863adc8af Merge pull request #12772 from freqtrade/dependabot/pip/develop/ccxt-4.5.35
chore(deps): bump ccxt from 4.5.34 to 4.5.35
2026-02-02 08:11:38 +01:00
Matthias 2e33b1dc56 Merge pull request #12765 from freqtrade/dependabot/pip/develop/types-a0ed531c1e
chore(deps-dev): bump types-python-dateutil from 2.9.0.20251115 to 2.9.0.20260124 in the types group
2026-02-02 07:27:07 +01:00
Matthias d56ae991c2 Merge pull request #12774 from freqtrade/dependabot/pip/develop/packaging-26.0
chore(deps): bump packaging from 25.0 to 26.0
2026-02-02 07:20:47 +01:00
Matthias 2913af90ca Merge pull request #12776 from freqtrade/dependabot/pip/develop/rich-14.3.1
chore(deps): bump rich from 14.2.0 to 14.3.1
2026-02-02 07:10:19 +01:00
Matthias 553e45c948 Merge pull request #12773 from freqtrade/dependabot/pip/develop/torch-2.10.0
chore(deps): bump torch from 2.9.1 to 2.10.0
2026-02-02 06:48:05 +01:00
dependabot[bot] 2364a08fd6 chore(deps): bump ccxt from 4.5.34 to 4.5.35
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.34 to 4.5.35.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.34...v4.5.35)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.35
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 05:43:06 +00:00
Matthias eed5de4045 Merge pull request #12771 from freqtrade/dependabot/github_actions/develop/peter-evans/create-pull-request-8.1.0
chore(deps): bump peter-evans/create-pull-request from 8.0.0 to 8.1.0
2026-02-02 06:41:01 +01:00
Matthias 71a4f88c8b Merge pull request #12768 from freqtrade/dependabot/pip/develop/optuna-4.7.0
chore(deps): bump optuna from 4.6.0 to 4.7.0
2026-02-02 06:38:06 +01:00
Matthias db1162e0a1 Merge pull request #12775 from freqtrade/dependabot/pip/develop/markdown-3.10.1
chore(deps): bump markdown from 3.10 to 3.10.1
2026-02-02 06:36:29 +01:00
Matthias 40a791985e Merge pull request #12767 from freqtrade/dependabot/pip/develop/pymdown-extensions-10.20.1
chore(deps): bump pymdown-extensions from 10.20 to 10.20.1
2026-02-02 06:36:11 +01:00
Matthias 157669b775 Merge pull request #12769 from freqtrade/dependabot/pip/develop/cachetools-6.2.5
chore(deps): bump cachetools from 6.2.4 to 6.2.5
2026-02-02 06:35:57 +01:00
Matthias 3d8d101bfc chore: bump types-python-dateutil in pre-commit config 2026-02-02 06:35:22 +01:00
Matthias 7e3c8fc8ab Merge pull request #12779 from freqtrade/dependabot/pip/develop/ruff-0.14.14
chore(deps-dev): bump ruff from 0.14.13 to 0.14.14
2026-02-02 06:34:30 +01:00
Matthias c58ac19adf Merge pull request #12778 from freqtrade/dependabot/pip/develop/python-telegram-bot-22.6
chore(deps): bump python-telegram-bot from 22.5 to 22.6
2026-02-02 06:34:19 +01:00
Matthias 35d038cbf7 Merge pull request #12770 from freqtrade/dependabot/github_actions/develop/actions-f50382bc57
chore(deps): bump actions/setup-python from 6.1.0 to 6.2.0 in the actions group
2026-02-02 06:33:31 +01:00
dependabot[bot] 13a5c54338 chore(deps-dev): bump ruff from 0.14.13 to 0.14.14
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.13 to 0.14.14.
- [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.14.13...0.14.14)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 03:04:58 +00:00
dependabot[bot] c0a439fb5f chore(deps): bump python-telegram-bot from 22.5 to 22.6
Bumps [python-telegram-bot](https://github.com/python-telegram-bot/python-telegram-bot) from 22.5 to 22.6.
- [Release notes](https://github.com/python-telegram-bot/python-telegram-bot/releases)
- [Commits](https://github.com/python-telegram-bot/python-telegram-bot/compare/v22.5...v22.6)

---
updated-dependencies:
- dependency-name: python-telegram-bot
  dependency-version: '22.6'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 03:04:48 +00:00
dependabot[bot] 5ce2203786 chore(deps): bump rich from 14.2.0 to 14.3.1
Bumps [rich](https://github.com/Textualize/rich) from 14.2.0 to 14.3.1.
- [Release notes](https://github.com/Textualize/rich/releases)
- [Changelog](https://github.com/Textualize/rich/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Textualize/rich/compare/v14.2.0...v14.3.1)

---
updated-dependencies:
- dependency-name: rich
  dependency-version: 14.3.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 03:04:32 +00:00
dependabot[bot] f3931c8587 chore(deps): bump markdown from 3.10 to 3.10.1
Bumps [markdown](https://github.com/Python-Markdown/markdown) from 3.10 to 3.10.1.
- [Release notes](https://github.com/Python-Markdown/markdown/releases)
- [Changelog](https://github.com/Python-Markdown/markdown/blob/master/docs/changelog.md)
- [Commits](https://github.com/Python-Markdown/markdown/compare/3.10.0...3.10.1)

---
updated-dependencies:
- dependency-name: markdown
  dependency-version: 3.10.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 03:04:22 +00:00
dependabot[bot] 828abf6326 chore(deps): bump packaging from 25.0 to 26.0
Bumps [packaging](https://github.com/pypa/packaging) from 25.0 to 26.0.
- [Release notes](https://github.com/pypa/packaging/releases)
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/packaging/compare/25.0...26.0)

---
updated-dependencies:
- dependency-name: packaging
  dependency-version: '26.0'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 03:04:16 +00:00
dependabot[bot] 33ebbab6a8 chore(deps): bump torch from 2.9.1 to 2.10.0
Bumps [torch](https://github.com/pytorch/pytorch) from 2.9.1 to 2.10.0.
- [Release notes](https://github.com/pytorch/pytorch/releases)
- [Changelog](https://github.com/pytorch/pytorch/blob/main/RELEASE.md)
- [Commits](https://github.com/pytorch/pytorch/compare/v2.9.1...v2.10.0)

---
updated-dependencies:
- dependency-name: torch
  dependency-version: 2.10.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 03:04:12 +00:00
dependabot[bot] 0a49816b24 chore(deps): bump peter-evans/create-pull-request from 8.0.0 to 8.1.0
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 8.0.0 to 8.1.0.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/98357b18bf14b5342f975ff684046ec3b2a07725...c0f553fe549906ede9cf27b5156039d195d2ece0)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-version: 8.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 03:04:00 +00:00
dependabot[bot] c77ac9f101 chore(deps): bump actions/setup-python in the actions group
Bumps the actions group with 1 update: [actions/setup-python](https://github.com/actions/setup-python).


Updates `actions/setup-python` from 6.1.0 to 6.2.0
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/83679a892e2d95755f2dac6acb0bfd1e9ac5d548...a309ff8b426b58ec0e2a45f0f869d46889d02405)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: 6.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 03:03:50 +00:00
dependabot[bot] 820a13f37a chore(deps): bump cachetools from 6.2.4 to 6.2.5
Bumps [cachetools](https://github.com/tkem/cachetools) from 6.2.4 to 6.2.5.
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tkem/cachetools/compare/v6.2.4...v6.2.5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 03:03:48 +00:00
dependabot[bot] 2a29fccd1d chore(deps): bump optuna from 4.6.0 to 4.7.0
Bumps [optuna](https://github.com/optuna/optuna) from 4.6.0 to 4.7.0.
- [Release notes](https://github.com/optuna/optuna/releases)
- [Commits](https://github.com/optuna/optuna/compare/v4.6.0...v4.7.0)

---
updated-dependencies:
- dependency-name: optuna
  dependency-version: 4.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 03:03:40 +00:00
dependabot[bot] b857e19392 chore(deps): bump pymdown-extensions from 10.20 to 10.20.1
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.20 to 10.20.1.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/commits)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-version: 10.20.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 03:03:36 +00:00
dependabot[bot] b4bdc66c39 chore(deps-dev): bump types-python-dateutil in the types group
Bumps the types group with 1 update: [types-python-dateutil](https://github.com/typeshed-internal/stub_uploader).


Updates `types-python-dateutil` from 2.9.0.20251115 to 2.9.0.20260124
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: types-python-dateutil
  dependency-version: 2.9.0.20260124
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 03:02:51 +00:00
Matthias 98b56a49c8 Merge pull request #12315 from x-mass/develop
fix: align _get_close_rate_for_roi with calc_profit_ratio logic in backtesting
2026-02-01 17:23:13 +01:00
Matthias 791fbe8054 Merge branch 'develop' into pr/x-mass/12315 2026-02-01 16:51:01 +01:00
Matthias cedfb2a51f chore: slightly improve docstring 2026-02-01 16:50:57 +01:00
Matthias 93b6c52aad test: Improved test setup 2026-02-01 16:44:10 +01:00
Robert Caulk 455954e0e3 feat: Add tensorboard callback to lightgbm 2026-02-01 15:14:48 +01:00
Matthias 0ef85e161e fix: problem in ohlcv_with_cache 2026-01-31 19:55:03 +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 beec9123d4 chore: bump dev version to 2026.2-dev 2026-01-31 08:29:45 +01:00
Matthias 360f294f45 Merge pull request #12755 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-01-29 06:49:02 +01:00
Freqtrade Bot a64ab2629b chore: update pre-commit hooks 2026-01-29 03:45:25 +00:00
Matthias 5d88923e03 Merge pull request #12752 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-01-27 06:55:08 +01:00
Freqtrade Bot 84cbb1eb01 chore: update pre-commit hooks 2026-01-27 03:33:04 +00:00
Matthias 1c764d622d Merge pull request #12744 from freqtrade/dependabot/pip/develop/scipy-33c3de7653
chore(deps-dev): bump scipy-stubs from 1.17.0.0 to 1.17.0.1 in the scipy group
2026-01-26 07:32:01 +01:00
Matthias fb6627335b Merge pull request #12749 from freqtrade/dependabot/pip/develop/ccxt-4.5.34
chore(deps): bump ccxt from 4.5.33 to 4.5.34
2026-01-26 07:25:24 +01:00
Matthias 436d3b1bbc fix: binance.us should not use data.vision
closes #12743
2026-01-26 07:19:25 +01:00
Matthias 308c80c7b2 test: add test to skip download-data for binanceus 2026-01-26 07:19:24 +01:00
Matthias a4a69bd16d Merge pull request #12748 from freqtrade/dependabot/pip/develop/pyarrow-23.0.0
chore(deps): bump pyarrow from 22.0.0 to 23.0.0
2026-01-26 06:53:00 +01:00
Matthias 9bd68dd63a Merge pull request #12745 from freqtrade/dependabot/pip/develop/ruff-0.14.13
chore(deps-dev): bump ruff from 0.14.11 to 0.14.13
2026-01-26 06:44:07 +01:00
Matthias 670cfa2087 chore: bump scipy-stubs in pre-commit config 2026-01-26 06:19:13 +01:00
Matthias 7a69cfa62b chore: update pre-built pyarrlw armhf wheel 2026-01-26 06:16:45 +01:00
Matthias 142dd3fd25 Merge pull request #12746 from freqtrade/dependabot/pip/develop/plotly-6.5.2
chore(deps): bump plotly from 6.5.1 to 6.5.2
2026-01-26 06:14:44 +01:00
Matthias d102d3cac8 Merge pull request #12750 from freqtrade/dependabot/github_actions/develop/zizmorcore/zizmor-action-0.4.1
chore(deps): bump zizmorcore/zizmor-action from 0.3.0 to 0.4.1
2026-01-26 06:14:27 +01:00
Matthias 2b7bcdb594 Merge pull request #12747 from freqtrade/dependabot/github_actions/develop/actions-e6ee9d7de3
chore(deps): bump actions/checkout from 6.0.1 to 6.0.2 in the actions group
2026-01-26 06:13:48 +01:00
dependabot[bot] 9ccbf15080 chore(deps): bump zizmorcore/zizmor-action from 0.3.0 to 0.4.1
Bumps [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) from 0.3.0 to 0.4.1.
- [Release notes](https://github.com/zizmorcore/zizmor-action/releases)
- [Commits](https://github.com/zizmorcore/zizmor-action/compare/e639db99335bc9038abc0e066dfcd72e23d26fb4...135698455da5c3b3e55f73f4419e481ab68cdd95)

---
updated-dependencies:
- dependency-name: zizmorcore/zizmor-action
  dependency-version: 0.4.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-26 03:04:25 +00:00
dependabot[bot] 16717f06e9 chore(deps): bump ccxt from 4.5.33 to 4.5.34
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.33 to 4.5.34.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.33...v4.5.34)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.34
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-26 03:04:23 +00:00
dependabot[bot] 7d77e16271 chore(deps): bump pyarrow from 22.0.0 to 23.0.0
Bumps [pyarrow](https://github.com/apache/arrow) from 22.0.0 to 23.0.0.
- [Release notes](https://github.com/apache/arrow/releases)
- [Commits](https://github.com/apache/arrow/compare/apache-arrow-22.0.0...apache-arrow-23.0.0)

---
updated-dependencies:
- dependency-name: pyarrow
  dependency-version: 23.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-26 03:04:03 +00:00
dependabot[bot] f501619434 chore(deps): bump actions/checkout in the actions group
Bumps the actions group with 1 update: [actions/checkout](https://github.com/actions/checkout).


Updates `actions/checkout` from 6.0.1 to 6.0.2
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/8e8c483db84b4bee98b60c0593521ed34d9990e8...de0fac2e4500dabe0009e67214ff5f5447ce83dd)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-26 03:03:59 +00:00
dependabot[bot] 7c9a618c72 chore(deps): bump plotly from 6.5.1 to 6.5.2
Bumps [plotly](https://github.com/plotly/plotly.py) from 6.5.1 to 6.5.2.
- [Release notes](https://github.com/plotly/plotly.py/releases)
- [Changelog](https://github.com/plotly/plotly.py/blob/main/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.py/compare/v6.5.1...v6.5.2)

---
updated-dependencies:
- dependency-name: plotly
  dependency-version: 6.5.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-26 03:03:53 +00:00
dependabot[bot] 16374ef7f1 chore(deps-dev): bump ruff from 0.14.11 to 0.14.13
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.11 to 0.14.13.
- [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.14.11...0.14.13)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-26 03:03:45 +00:00
dependabot[bot] bb4d2f8f1a 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.0.0 to 1.17.0.1
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.17.0.0...v1.17.0.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-26 03:03:23 +00:00
Matthias 52fc180c75 feat: add typedDict for LeverageTiers - fix unbound upper bound for get_max_leverage 2026-01-25 11:12:20 +01:00
Matthias 87b313cd53 test: add Test case for get_max_leverage with open maxNotional 2026-01-25 11:09:05 +01:00
Matthias 74c88f77c0 test: allow maxNotional to be None 2026-01-25 10:56:58 +01:00
Matthias 6cb459f37b docs: update windows error link description 2026-01-25 10:28:45 +01:00
Matthias 00848c9a96 docs: fix typos in install docs 2026-01-25 10:02:44 +01:00
Matthias e8adf01b18 docs: improve ordering of script installation 2026-01-25 10:01:28 +01:00
Matthias d28fce7ed8 docs: combine installation guides 2026-01-25 09:59:54 +01:00
Matthias 390d504cf2 docs: add "updating" notes to install sections 2026-01-25 08:27:06 +01:00
Matthias 1799aa33f9 docs: add "why update?" section 2026-01-25 08:24:55 +01:00
Matthias dcff1c4317 docs: update problems updating wording, include promised links 2026-01-25 08:24:51 +01:00
Matthias 121bdab8fe docs: remove "experimental" from futures functionality 2026-01-25 08:08:07 +01:00
Matthias 9a48feea35 fix: use list for _OPENAPI_TAGS 2026-01-22 19:47:54 +01:00
Matthias 0955ccadfe feat: Describe all tags explicitly 2026-01-22 19:33:24 +01:00
Matthias c778e44e80 chore: improved tag namings 2026-01-22 07:09:26 +01:00
Matthias 18933a6e20 chore: rename info to Info 2026-01-22 07:04:27 +01:00
Matthias 182bdaceb5 feat: more openAPI tag description 2026-01-22 07:04:27 +01:00
Matthias 6ae4394628 feat: improved tags for openapi specs 2026-01-22 07:04:27 +01:00
Matthias 1bdb1539b1 refactor: move trading related API's to separate file 2026-01-22 07:04:27 +01:00
Matthias 2765277cd0 refactor: /freqaimodels to webserver section 2026-01-22 07:04:27 +01:00
Matthias 085a9be186 feat: add is_trading_mode api Depends 2026-01-22 07:04:27 +01:00
Matthias e279c0333f chore: add download-data tag to available-pairs 2026-01-22 07:04:27 +01:00
Matthias 5e7246d23b refactor: available_pairs is for webserver only 2026-01-22 07:04:27 +01:00
Matthias fe86163730 test: update test to use webserver only mode 2026-01-22 07:04:27 +01:00
Matthias b5d467c943 refactor: move some webserver-exclusive functions behind webserver gate 2026-01-22 07:04:27 +01:00
Matthias c9fd8a619a test: re-enable htx online tests 2026-01-22 06:55:35 +01:00
Matthias 690080e180 docs: add FAQ entry about sandbox accounts
closes #12733
2026-01-22 06:49:05 +01:00
Matthias 583431e9d5 Merge pull request #12734 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-01-22 06:34:30 +01:00
Freqtrade Bot 4b82f82d9c chore: update pre-commit hooks 2026-01-22 03:36:25 +00:00
Matthias 63d6001415 Merge pull request #12729 from alisalama/develop
Freqtrade Downloader - don't drop latest candle for Funding Rates
2026-01-21 18:05:34 +01:00
Ali Salama ad6cf90037 Applied ruff formatting 2026-01-21 10:56:25 +00:00
Ali Salama 558c65a85c Amend linting issues 2026-01-21 10:51:40 +00:00
Ali Salama 8cb72e1fa3 Fixed linting line length issue 2026-01-21 10:25:35 +00:00
Matthias 4870d45b04 Merge pull request #12731 from Cosica/fix_typo
Fix a typo in doc
2026-01-20 19:32:28 +01:00
Matthias 4436acea68 docs: Fix a few more markdown "gotchas" in advanced-bt 2026-01-20 18:19:21 +01:00
Matthias e8eb6d7018 docs: correct header indentation in advanced-hyperopt 2026-01-20 18:08:02 +01:00
Cosica f1a6e61dbd Fix typo in doc 2026-01-20 14:03:19 +08:00
Matthias 4abb871c16 Merge pull request #12730 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-01-20 06:27:08 +01:00
Freqtrade Bot a6eccaec69 chore: update pre-commit hooks 2026-01-20 03:32:09 +00:00
Ali Salama 1747724206 Always download latest candle for Funding Rates 2026-01-19 14:08:20 +00:00
Matthias 616900330b Merge pull request #12718 from freqtrade/dependabot/pip/develop/types-1b6322021f
chore(deps-dev): bump types-requests from 2.32.4.20250913 to 2.32.4.20260107 in the types group
2026-01-19 08:33:41 +01:00
Matthias bbe5e22730 Merge pull request #12720 from freqtrade/dependabot/pip/develop/jsonschema-4.26.0
chore(deps): bump jsonschema from 4.25.1 to 4.26.0
2026-01-19 07:29:48 +01:00
Matthias 8b396ae3a2 fix: set LogginMixin in reset_backtest for hyperopt silence 2026-01-19 07:22:33 +01:00
Matthias 7f511cbe82 chore: bump type-requests in pre-commit config 2026-01-19 07:19:57 +01:00
dependabot[bot] 12f5b9bc5b chore(deps-dev): bump types-requests in the types group
Bumps the types group with 1 update: [types-requests](https://github.com/typeshed-internal/stub_uploader).


Updates `types-requests` from 2.32.4.20250913 to 2.32.4.20260107
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: types-requests
  dependency-version: 2.32.4.20260107
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-19 06:10:31 +00:00
Matthias d152e3e47d Merge pull request #12719 from freqtrade/dependabot/pip/develop/scipy-48bf9b4f29
chore(deps): bump the scipy group with 2 updates
2026-01-19 07:09:05 +01:00
Matthias 39908c60e2 Merge pull request #12723 from freqtrade/dependabot/pip/develop/numpy-2.4.1
chore(deps): bump numpy from 2.4.0 to 2.4.1
2026-01-19 07:02:53 +01:00
Matthias 74a1e48a1c Merge pull request #12724 from freqtrade/dependabot/pip/develop/xgboost-3.1.3
chore(deps): bump xgboost from 3.1.2 to 3.1.3
2026-01-19 06:50:21 +01:00
Matthias b507aebf1c chore: bump scipy-stubs in pre-commit config 2026-01-19 06:40:20 +01:00
Matthias ad293c28d0 Merge pull request #12726 from freqtrade/dependabot/pip/develop/websockets-16.0
chore(deps): bump websockets from 15.0.1 to 16.0
2026-01-19 06:37:24 +01:00
Matthias e4c7b5511a Merge pull request #12722 from freqtrade/dependabot/pip/develop/ccxt-4.5.33
chore(deps): bump ccxt from 4.5.32 to 4.5.33
2026-01-19 06:34:22 +01:00
Matthias 85fd070899 Merge pull request #12725 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-7.2.0
chore(deps): bump astral-sh/setup-uv from 7.1.6 to 7.2.0
2026-01-19 06:33:05 +01:00
Matthias e658490593 Merge pull request #12727 from freqtrade/dependabot/pip/develop/ruff-0.14.11
chore(deps-dev): bump ruff from 0.14.10 to 0.14.11
2026-01-19 06:32:47 +01:00
Matthias 621e78e7ce Merge pull request #12721 from freqtrade/dependabot/pip/develop/plotly-6.5.1
chore(deps): bump plotly from 6.5.0 to 6.5.1
2026-01-19 06:31:44 +01:00
dependabot[bot] fc5801a0b7 chore(deps-dev): bump ruff from 0.14.10 to 0.14.11
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.10 to 0.14.11.
- [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.14.10...0.14.11)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-19 03:14:02 +00:00
dependabot[bot] 22cd1357f8 chore(deps): bump websockets from 15.0.1 to 16.0
Bumps [websockets](https://github.com/python-websockets/websockets) from 15.0.1 to 16.0.
- [Release notes](https://github.com/python-websockets/websockets/releases)
- [Commits](https://github.com/python-websockets/websockets/compare/15.0.1...16.0)

---
updated-dependencies:
- dependency-name: websockets
  dependency-version: '16.0'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-19 03:13:48 +00:00
dependabot[bot] ead68e0a51 chore(deps): bump astral-sh/setup-uv from 7.1.6 to 7.2.0
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 7.1.6 to 7.2.0.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/681c641aba71e4a1c380be3ab5e12ad51f415867...61cb8a9741eeb8a550a1b8544337180c0fc8476b)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 7.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-19 03:13:46 +00:00
dependabot[bot] 80b87d2592 chore(deps): bump xgboost from 3.1.2 to 3.1.3
Bumps [xgboost](https://github.com/dmlc/xgboost) from 3.1.2 to 3.1.3.
- [Release notes](https://github.com/dmlc/xgboost/releases)
- [Changelog](https://github.com/dmlc/xgboost/blob/master/NEWS.md)
- [Commits](https://github.com/dmlc/xgboost/compare/v3.1.2...v3.1.3)

---
updated-dependencies:
- dependency-name: xgboost
  dependency-version: 3.1.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-19 03:13:43 +00:00
dependabot[bot] 0ac43042cc chore(deps): bump numpy from 2.4.0 to 2.4.1
Bumps [numpy](https://github.com/numpy/numpy) from 2.4.0 to 2.4.1.
- [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.0...v2.4.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-19 03:13:37 +00:00
dependabot[bot] 590a69ca42 chore(deps): bump ccxt from 4.5.32 to 4.5.33
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.32 to 4.5.33.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.32...v4.5.33)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.33
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-19 03:13:29 +00:00
dependabot[bot] e44a36cedd chore(deps): bump plotly from 6.5.0 to 6.5.1
Bumps [plotly](https://github.com/plotly/plotly.py) from 6.5.0 to 6.5.1.
- [Release notes](https://github.com/plotly/plotly.py/releases)
- [Changelog](https://github.com/plotly/plotly.py/blob/main/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.py/compare/v6.5.0...v6.5.1)

---
updated-dependencies:
- dependency-name: plotly
  dependency-version: 6.5.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-19 03:13:20 +00:00
dependabot[bot] 131ab77085 chore(deps): bump jsonschema from 4.25.1 to 4.26.0
Bumps [jsonschema](https://github.com/python-jsonschema/jsonschema) from 4.25.1 to 4.26.0.
- [Release notes](https://github.com/python-jsonschema/jsonschema/releases)
- [Changelog](https://github.com/python-jsonschema/jsonschema/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/python-jsonschema/jsonschema/compare/v4.25.1...v4.26.0)

---
updated-dependencies:
- dependency-name: jsonschema
  dependency-version: 4.26.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-19 03:13:14 +00:00
dependabot[bot] ba07de8d00 chore(deps): bump the scipy group with 2 updates
Bumps the scipy group with 2 updates: [scipy](https://github.com/scipy/scipy) and [scipy-stubs](https://github.com/scipy/scipy-stubs).


Updates `scipy` from 1.16.3 to 1.17.0
- [Release notes](https://github.com/scipy/scipy/releases)
- [Commits](https://github.com/scipy/scipy/compare/v1.16.3...v1.17.0)

Updates `scipy-stubs` from 1.16.3.3 to 1.17.0.0
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.16.3.3...v1.17.0.0)

---
updated-dependencies:
- dependency-name: scipy
  dependency-version: 1.17.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: scipy
- dependency-name: scipy-stubs
  dependency-version: 1.17.0.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: scipy
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-19 03:12:58 +00:00
Matthias 6ee34aa482 fix: disable freqtrade logging in hyperopt subprocesses
closes #12717
2026-01-18 20:12:31 +01:00
Matthias d5686d548c chore: use dt_now to get the current date 2026-01-18 19:44:47 +01:00
Matthias 4917a0abe5 chore: add "package cleanup" step to devcontainer 2026-01-15 19:51:43 +01:00
Matthias 93f2cf5db7 test: update test startup time for mac
CI is slower than we thought it is.
2026-01-15 19:50:04 +01:00
Matthias 38a470098f test: shorten explanatory comment 2026-01-15 19:27:52 +01:00
Matthias b0eb5c77ec test: add additional test case for rpc_balance 2026-01-15 18:17:53 +01:00
Matthias 0d5bd94f43 test: switch futures position to ADA 2026-01-15 18:17:53 +01:00
Matthias 735284dccd test: extend rpc_balance test for short and long positions 2026-01-15 18:17:53 +01:00
Matthias deb0dd80c8 fix: futures balance calculation for shorts 2026-01-15 18:17:53 +01:00
Matthias 12f815e157 Merge pull request #12715 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-01-15 06:50:57 +01:00
Freqtrade Bot 059636f1ea chore: update pre-commit hooks 2026-01-15 03:33:01 +00:00
Matthias 793ca9c3da Merge pull request #12713 from freqtrade/dependabot/pip/filelock-3.20.3
chore(deps): bump filelock from 3.20.2 to 3.20.3
2026-01-14 06:32:03 +01:00
dependabot[bot] 323a28c0bc chore(deps): bump filelock from 3.20.2 to 3.20.3
Bumps [filelock](https://github.com/tox-dev/py-filelock) from 3.20.2 to 3.20.3.
- [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.20.2...3.20.3)

---
updated-dependencies:
- dependency-name: filelock
  dependency-version: 3.20.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-13 21:02:58 +00:00
Matthias 77567f6315 Merge pull request #12712 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-01-13 06:29:45 +01:00
Freqtrade Bot dda448c10d chore: update pre-commit hooks 2026-01-13 03:31:02 +00:00
Matthias b7df0de33c Merge pull request #12708 from freqtrade/dependabot/pip/develop/ccxt-4.5.32
chore(deps): bump ccxt from 4.5.31 to 4.5.32
2026-01-12 06:48:47 +01:00
Matthias a89ef23407 Merge pull request #12709 from freqtrade/dependabot/pip/develop/pymdown-extensions-10.20
chore(deps): bump pymdown-extensions from 10.19.1 to 10.20
2026-01-12 06:31:43 +01:00
Matthias b90538f47d Merge pull request #12710 from freqtrade/dependabot/pip/develop/filelock-3.20.2
chore(deps): bump filelock from 3.20.1 to 3.20.2
2026-01-12 06:31:22 +01:00
Matthias ee6b7f2f95 Merge pull request #12711 from freqtrade/dependabot/pip/develop/certifi-2026.1.4
chore(deps): bump certifi from 2025.11.12 to 2026.1.4
2026-01-12 06:31:04 +01:00
dependabot[bot] b4aa6231e0 chore(deps): bump certifi from 2025.11.12 to 2026.1.4
Bumps [certifi](https://github.com/certifi/python-certifi) from 2025.11.12 to 2026.1.4.
- [Commits](https://github.com/certifi/python-certifi/compare/2025.11.12...2026.01.04)

---
updated-dependencies:
- dependency-name: certifi
  dependency-version: 2026.1.4
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-12 03:04:46 +00:00
dependabot[bot] 6bd57cc3b5 chore(deps): bump filelock from 3.20.1 to 3.20.2
Bumps [filelock](https://github.com/tox-dev/py-filelock) from 3.20.1 to 3.20.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.20.1...3.20.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-12 03:04:33 +00:00
dependabot[bot] 26db014782 chore(deps): bump pymdown-extensions from 10.19.1 to 10.20
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.19.1 to 10.20.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.19.1...10.20)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-version: '10.20'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-12 03:04:28 +00:00
dependabot[bot] 8e3ca302b0 chore(deps): bump ccxt from 4.5.31 to 4.5.32
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.31 to 4.5.32.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.31...v4.5.32)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.32
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-12 03:04:15 +00:00
Matthias 14aeb56ff9 test: update tests for new log message format 2026-01-10 18:15:22 +01:00
Matthias 9cbb8ec1c2 chore: improve incompatibility errors 2026-01-10 18:15:04 +01:00
Matthias faa5c4be39 docs: update Documentation to include point annotation 2026-01-09 20:00:33 +01:00
Matthias 45b6ec95a4 test: add tests for point annotations 2026-01-09 20:00:33 +01:00
Matthias 91b921cc88 feat: update types to support annotation point
part of #12698
2026-01-09 20:00:33 +01:00
Matthias 123897ea89 Merge pull request #12701 from freqtrade/fix/better_futures_wallets
Enhance futures wallet calculations
2026-01-09 19:43:17 +01:00
Matthias 31cf2dd46d test: improve rpc_balance handle error test 2026-01-09 06:49:17 +01:00
Matthias 06a53924d7 test: improve balance rpc test 2026-01-08 20:53:29 +01:00
Matthias 993771c5d3 chore: ensure alphabetical sort order for object loading
Attempts to fix random test failures ...
2026-01-08 20:39:22 +01:00
Matthias f08f19d1cb test: Change test to ADA (it's in markets)
Mock trades for balance test
2026-01-08 20:37:12 +01:00
Matthias 515912f14d chore: add explaining comment 2026-01-08 07:24:20 +01:00
Matthias df8465a9f3 chore: fix typo in docstring 2026-01-08 07:14:26 +01:00
Matthias 1333cb3181 feat: allow converstation rate without caching 2026-01-08 07:14:08 +01:00
Matthias 18fa981690 Merge pull request #12699 from stash86/main-stash
fix typo on example
2026-01-08 06:49:00 +01:00
Matthias 60425e6237 test: update rpc tests to new calculation mode 2026-01-08 06:47:17 +01:00
Matthias 3b5f1d52cd feat: Futures wallets should consider open PnL 2026-01-08 06:47:17 +01:00
Matthias 519721b58b Merge pull request #12700 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-01-08 06:31:42 +01:00
Freqtrade Bot 3ae7823983 chore: update pre-commit hooks 2026-01-08 03:33:00 +00:00
Stefano 7182e6960e fix typo on example 2026-01-08 08:49:16 +09:00
Matthias 8596042065 Merge pull request #12697 from freqtrade/dependabot/pip/urllib3-2.6.3
chore(deps): bump urllib3 from 2.6.2 to 2.6.3
2026-01-07 21:37:51 +01:00
dependabot[bot] c2e92250b5 chore(deps): bump urllib3 from 2.6.2 to 2.6.3
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.6.2 to 2.6.3.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.6.2...2.6.3)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.6.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-07 19:47:04 +00:00
Matthias d2ed5c6736 Merge pull request #12695 from freqtrade/dependabot/pip/develop/psutil-7.2.1
chore(deps): bump psutil from 7.2.0 to 7.2.1
2026-01-07 20:19:30 +01:00
Matthias 8e023a7bf3 Merge pull request #12696 from freqtrade/dependabot/pip/develop/ccxt-4.5.31
chore(deps): bump ccxt from 4.5.30 to 4.5.31
2026-01-07 19:46:36 +01:00
dependabot[bot] b3711fdf6c chore(deps): bump ccxt from 4.5.30 to 4.5.31
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.30 to 4.5.31.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.30...v4.5.31)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.31
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-07 16:04:28 +00:00
dependabot[bot] 681876e0e5 chore(deps): bump psutil from 7.2.0 to 7.2.1
Bumps [psutil](https://github.com/giampaolo/psutil) from 7.2.0 to 7.2.1.
- [Changelog](https://github.com/giampaolo/psutil/blob/master/HISTORY.rst)
- [Commits](https://github.com/giampaolo/psutil/compare/release-7.2.0...release-7.2.1)

---
updated-dependencies:
- dependency-name: psutil
  dependency-version: 7.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-07 16:04:13 +00:00
Matthias c3502991d3 chore: use instance attribute throughout 2026-01-07 07:17:12 +01:00
Matthias 6cc22fcf74 fix: ensure defaults are applied to exchange configuration
closes #12694
2026-01-07 07:00:40 +01:00
Matthias 2f011e5421 docs: remove mentions of "isolated only" for futures 2026-01-07 06:33:19 +01:00
Matthias 4322acbbb8 refactor: rename wallets position variable 2026-01-06 20:00:04 +01:00
Matthias 50cba51008 chore: remove pointless exception handler 2026-01-06 19:05:32 +01:00
Matthias 7498f20baa feat: improve telegram balance output (remove trailing zeros) 2026-01-06 13:41:02 +01:00
Matthias a1b3e59491 fix: ensure wallet position leverage is always set 2026-01-06 13:00:11 +01:00
Matthias 4fcbce2ce5 Merge pull request #12685 from CutieCat6778/patch-1
Skip loop iteration if train_queue is empty
2026-01-06 10:15:50 +01:00
Matthias 22699ee6ed Merge pull request #12693 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2026-01-06 09:50:51 +01:00
Matthias aec5450036 chore: fix whitespace issue 2026-01-06 09:36:33 +01:00
Matthias 2c5a150a7b maint: remove non-needed permission 2026-01-06 09:35:22 +01:00
Matthias f845dc71b1 maint: fix pedantic zizmor problems 2026-01-06 09:33:00 +01:00
Matthias 61274252af maint: rename zizmor CI workflow
this will avoid schema collision with the zizmor.yml config file
2026-01-06 09:21:04 +01:00
Matthias 00d903cb3f maint: add explanatory comment for permission 2026-01-06 09:19:03 +01:00
Matthias 29f235441b maint: set base permissions for all workflows 2026-01-06 09:17:08 +01:00
Matthias 872b59c9cd maint: pin all actions by hash 2026-01-06 09:13:13 +01:00
Freqtrade Bot be7f5f4e26 chore: update pre-commit hooks 2026-01-06 08:36:01 +01:00
Matthias 82c1f096de maint: skip pip-audit in github actions 2026-01-06 08:35:40 +01:00
Matthias ed7887c426 Merge pull request #12692 from freqtrade/dependabot/pip/aiohttp-3.13.3
chore(deps): bump aiohttp from 3.13.2 to 3.13.3
2026-01-06 08:23:46 +01:00
dependabot[bot] e58f7b0344 chore(deps): bump aiohttp from 3.13.2 to 3.13.3
---
updated-dependencies:
- dependency-name: aiohttp
  dependency-version: 3.13.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-06 00:48:17 +00:00
Matthias 32eaae5dcf feat: add __repr__ to Wallets object 2026-01-05 18:06:05 +01:00
Matthias 38c74e5d1a docs: remove unnecessary `"-" in command 2026-01-05 13:09:18 +01:00
Matthias e89a31c6d1 Merge pull request #12688 from freqtrade/dependabot/pip/develop/technical-1.5.4
chore(deps): bump technical from 1.5.3 to 1.5.4
2026-01-05 08:25:25 +01:00
Matthias 3eb8de633c Merge pull request #12687 from freqtrade/dependabot/pip/develop/psutil-7.2.0
chore(deps): bump psutil from 7.1.3 to 7.2.0
2026-01-05 08:10:07 +01:00
Matthias 0ee3e4304f Merge pull request #12689 from freqtrade/dependabot/pip/develop/fastapi-0.128.0
chore(deps): bump fastapi from 0.127.0 to 0.128.0
2026-01-05 08:09:54 +01:00
dependabot[bot] 228dfe8ab2 chore(deps): bump fastapi from 0.127.0 to 0.128.0
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.127.0 to 0.128.0.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.127.0...0.128.0)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.128.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-05 03:29:12 +00:00
dependabot[bot] bfcc2aa153 chore(deps): bump technical from 1.5.3 to 1.5.4
Bumps [technical](https://github.com/freqtrade/technical) from 1.5.3 to 1.5.4.
- [Release notes](https://github.com/freqtrade/technical/releases)
- [Commits](https://github.com/freqtrade/technical/compare/1.5.3...1.5.4)

---
updated-dependencies:
- dependency-name: technical
  dependency-version: 1.5.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-05 03:28:55 +00:00
dependabot[bot] 39e2ecb6a2 chore(deps): bump psutil from 7.1.3 to 7.2.0
Bumps [psutil](https://github.com/giampaolo/psutil) from 7.1.3 to 7.2.0.
- [Changelog](https://github.com/giampaolo/psutil/blob/master/HISTORY.rst)
- [Commits](https://github.com/giampaolo/psutil/compare/release-7.1.3...release-7.2.0)

---
updated-dependencies:
- dependency-name: psutil
  dependency-version: 7.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-05 03:28:42 +00:00
Thinh Nguyen 0fcfd933ea Skip loop iteration if train_queue is empty
Added a check to continue the loop if the training queue is empty.
2026-01-03 23:32:38 +01:00
Matthias b9a4918d61 test: reset converter before and after fiat conversions 2026-01-03 14:33:08 +01:00
Matthias 0d7127bb6a refactor: use metaclass for Singleton in FiatConverter 2026-01-03 14:06:17 +01:00
Matthias cfd048e74e test: mock fiat_convert entry method 2026-01-03 14:02:18 +01:00
Matthias c911332da3 test: simplify telegram fiat_convert mocking 2026-01-03 13:51:39 +01:00
Matthias 43a849d45d test: remove pointless mocks 2026-01-03 13:46:37 +01:00
Matthias 3ad502b073 test: mock object instead of global mock 2026-01-03 13:40:18 +01:00
Matthias 6d4ad393d5 test: cleanup unneeded mocks from test_rpc 2026-01-03 13:18:23 +01:00
Matthias 69cc238700 Merge pull request #12560 from stash86/main-stash
add more metrics on profit stat
2026-01-03 12:51:18 +01:00
Matthias 9a9b4e15f3 test: pandas warning tests to show warnings 2026-01-02 17:12:48 +01:00
Matthias fcab9460fb test: reduce startup time failure rates 2026-01-02 16:58:10 +01:00
Matthias 58130572a9 fix: use "triggered order" id where necessary
closes  #12680
2026-01-02 16:37:12 +01:00
Matthias f82d2fe796 chore: simplify conversion rate usage 2026-01-02 16:24:37 +01:00
Matthias 577464c12d Merge pull request #12506 from dev-starlight/develop
fix, Add UTF-8 encoding to read_text method
2026-01-02 13:56:25 +01:00
Matthias 00bd3e5a5c fix: strategy-updater should support non-english characters on windows 2026-01-02 12:42:12 +00:00
Matthias bc2be74b36 fix: further fixes for utf8 reading on windows 2026-01-02 12:20:09 +00:00
Matthias 3543437fc5 test: add test chinese comment to strategy_test file 2026-01-02 12:10:06 +00:00
Matthias 4b278941b8 test: small improvements to test clarity 2026-01-02 11:41:18 +01:00
Matthias 8a33b71351 test: update exchange api test 2026-01-02 11:40:10 +01:00
Matthias a09ca38de2 feat: list-exchanges to show futures "has" problematics 2026-01-02 11:05:02 +01:00
Matthias 4d4fee9874 feat: add futures validation to validate_exchange 2026-01-02 11:02:26 +01:00
Matthias f2dfe1788a feat: split futures "has" parameters to a separate variable 2026-01-02 10:40:57 +01:00
Matthias 0e82c0458a feat: improve output of list-exchanges 2026-01-02 10:33:12 +01:00
Matthias 2ec2626277 feat: blacklist kraken-futures - it's futures only
we know it won't work at the moment, and current exclusion is accidental
which could change with a ccxt update.
2026-01-02 10:33:12 +01:00
Matthias 04f4f327df refactor: improve punctuation handling on bad exchanges 2026-01-02 10:33:12 +01:00
Matthias 34ad58e2da feat: enable fetch_orders optional check 2026-01-02 10:33:12 +01:00
Matthias f78aa7b39a feat: has_optional should check for replacement methods 2026-01-02 10:33:12 +01:00
Matthias a174461952 test: add test for exchange_has validation 2026-01-02 10:33:12 +01:00
Matthias 6c164683b7 refactor: extract "has" checking logic to separate function 2026-01-02 10:33:12 +01:00
Matthias 9cdd8659ec fix: "missing" condition when no replacemet items are available 2026-01-02 10:33:12 +01:00
Matthias 795df94817 Merge pull request #12679 from freqtrade/maint/binance_mig
Remove binance futures pair naming migration
2026-01-02 10:18:57 +01:00
Matthias 40f87c0d30 test: remove binance pair naming tests 2026-01-02 08:42:25 +01:00
Matthias 1380940565 chore: remove binance pair naming migration 2026-01-02 08:42:14 +01:00
Matthias 595309c9ed chore: improve type-safety for Volumepairlist 2026-01-01 14:42:00 +01:00
Matthias 78dde7d1bc chore: don't use bitwise comparisons for bool comparisons 2026-01-01 14:41:49 +01:00
Matthias 2a0da08413 fix: double-space in log message 2026-01-01 14:01:25 +01:00
Matthias fd7aff6063 Merge pull request #12678 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2026-01-01 07:14:27 +01:00
Freqtrade Bot c41584a548 chore: update pre-commit hooks 2026-01-01 03:35:01 +00:00
Stefano 1e6d832f71 fix test 2025-12-31 10:40:09 +09:00
Stefano 6f2ba13b0c add to api schemas 2025-12-31 10:05:18 +09:00
Stefano 78141c7216 Merge branch 'freqtrade:develop' into main-stash 2025-12-31 10:02:04 +09:00
Matthias 8e91fea11f Merge pull request #12584 from igi01/feature/hyperliquid-hip3-support
Hyperliquid HIP3 support
2025-12-30 21:03:13 +01:00
Matthias 0f8c6d456e fix: only matching quote currencies should be tradable 2025-12-30 20:37:48 +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 70834b6491 chore: update release template structure 2025-12-30 08:46:19 +01:00
Matthias 31269c7ce0 docs: Update docs date to 2025 2025-12-30 08:46:19 +01:00
Matthias f0a5bbe511 Merge pull request #12674 from freqtrade/dependabot/pip/develop/ccxt-4.5.30
chore(deps): bump ccxt from 4.5.29 to 4.5.30
2025-12-29 16:44:42 +01:00
dependabot[bot] 863124d67e chore(deps): bump ccxt from 4.5.29 to 4.5.30
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.29 to 4.5.30.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.29...v4.5.30)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.30
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-29 15:28:15 +00:00
Matthias 6d1e4d8f45 Merge pull request #12665 from freqtrade/ci/docker_trixie
bump dockerfile base from bookworm to trixie
2025-12-29 14:40:47 +01:00
Matthias 5f12c81768 chore: bump version to 2026.1-dev 2025-12-29 13:35:51 +01:00
Matthias 31341afcef Merge branch 'stable' into develop 2025-12-29 12:56:03 +01:00
Matthias 383b305b74 Merge pull request #12671 from freqtrade/dependabot/pip/develop/humanize-4.15.0
chore(deps): bump humanize from 4.14.0 to 4.15.0
2025-12-29 12:26:06 +01:00
Matthias 84244e7ca7 Merge pull request #12669 from freqtrade/dependabot/pip/develop/numpy-2.4.0
chore(deps): bump numpy from 2.3.5 to 2.4.0
2025-12-29 12:01:25 +01:00
Matthias cc06e9baec Merge pull request #12672 from freqtrade/dependabot/pip/develop/uvicorn-0.40.0
chore(deps): bump uvicorn from 0.38.0 to 0.40.0
2025-12-29 08:11:33 +01:00
Matthias d5ac8a5b0b test: update test for new humanize behavior 2025-12-29 08:01:48 +01:00
Matthias 00a4a743d2 Merge pull request #12668 from freqtrade/dependabot/pip/develop/ruff-0.14.10
chore(deps-dev): bump ruff from 0.14.9 to 0.14.10
2025-12-29 06:52:35 +01:00
Matthias 650cb1ef8c Merge pull request #12667 from freqtrade/dependabot/pip/develop/gymnasium-1.2.3
chore(deps): bump gymnasium from 1.2.2 to 1.2.3
2025-12-29 06:46:15 +01:00
dependabot[bot] 76ea4ea14f chore(deps): bump uvicorn from 0.38.0 to 0.40.0
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.38.0 to 0.40.0.
- [Release notes](https://github.com/Kludex/uvicorn/releases)
- [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/uvicorn/compare/0.38.0...0.40.0)

---
updated-dependencies:
- dependency-name: uvicorn
  dependency-version: 0.40.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-29 05:42:07 +00:00
Matthias 90502a6ac0 Merge pull request #12666 from freqtrade/dependabot/pip/develop/mkdocs-5f79d4b5c7
chore(deps): bump mkdocs-material from 9.7.0 to 9.7.1 in the mkdocs group
2025-12-29 06:41:02 +01:00
Matthias f9fe909847 Merge pull request #12670 from freqtrade/dependabot/pip/develop/fastapi-0.127.0
chore(deps): bump fastapi from 0.125.0 to 0.127.0
2025-12-29 06:38:45 +01:00
dependabot[bot] 7085103e43 chore(deps): bump humanize from 4.14.0 to 4.15.0
Bumps [humanize](https://github.com/python-humanize/humanize) from 4.14.0 to 4.15.0.
- [Release notes](https://github.com/python-humanize/humanize/releases)
- [Commits](https://github.com/python-humanize/humanize/compare/4.14.0...4.15.0)

---
updated-dependencies:
- dependency-name: humanize
  dependency-version: 4.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-29 03:27:49 +00:00
dependabot[bot] c5ee96b66a chore(deps): bump fastapi from 0.125.0 to 0.127.0
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.125.0 to 0.127.0.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.125.0...0.127.0)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.127.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-29 03:27:46 +00:00
dependabot[bot] d454a10dea chore(deps): bump numpy from 2.3.5 to 2.4.0
Bumps [numpy](https://github.com/numpy/numpy) from 2.3.5 to 2.4.0.
- [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.3.5...v2.4.0)

---
updated-dependencies:
- dependency-name: numpy
  dependency-version: 2.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-29 03:27:37 +00:00
dependabot[bot] e3d03f586d chore(deps-dev): bump ruff from 0.14.9 to 0.14.10
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.9 to 0.14.10.
- [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.14.9...0.14.10)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-29 03:27:22 +00:00
dependabot[bot] e8d748535f chore(deps): bump gymnasium from 1.2.2 to 1.2.3
Bumps [gymnasium](https://github.com/Farama-Foundation/Gymnasium) from 1.2.2 to 1.2.3.
- [Release notes](https://github.com/Farama-Foundation/Gymnasium/releases)
- [Commits](https://github.com/Farama-Foundation/Gymnasium/compare/v1.2.2...v1.2.3)

---
updated-dependencies:
- dependency-name: gymnasium
  dependency-version: 1.2.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-29 03:27:13 +00:00
dependabot[bot] 1cdb386374 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.0 to 9.7.1
- [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.0...9.7.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-29 03:27:02 +00:00
Matthias 8205cb25b8 chore: bump dockerfile base from bookworm to trixie 2025-12-28 14:16:02 +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
Matthias 6e9b60c0b0 fix: use ConfigurationError instead of OperationalException 2025-12-28 13:24:43 +01:00
Matthias b8cf38cb6f test: fix a couple hyperliquid tests 2025-12-27 20:15:19 +01:00
Matthias b394705545 fix: improve check tightness in hyperliquid hip3 config 2025-12-27 20:10:19 +01:00
Matthias 9b99c5b3f3 chore: Add explanation for get_balances 2025-12-27 20:10:03 +01:00
Matthias e77e901df1 fix: don't ignore regular tradability rules 2025-12-27 18:25:19 +01:00
Matthias b26c37af62 test: test online to ensure HIP3 pairs are in the markets object 2025-12-27 17:33:39 +01:00
Matthias 414fe81b27 test: reduce test position data 2025-12-27 17:18:43 +01:00
Matthias 00de8077f7 test: fix hyperliquid positions test 2025-12-27 17:18:15 +01:00
Matthias 1dde1ad0ed test: fix and improve hip3 config validation test 2025-12-27 17:10:28 +01:00
Matthias 2708343a2d fix: only validate HIP3 in futures mode 2025-12-27 17:07:35 +01:00
Matthias 61eb3306dd docs: fix documentation formatting and wording 2025-12-27 16:59:32 +01:00
Matthias e71329c82b fix: DEX's are isolated margin only 2025-12-27 16:50:21 +01:00
Matthias dc4adccaaf feat: don't limit pairs in "list-pairs" mode 2025-12-27 16:48:53 +01:00
Matthias 45b9c8c53f chore: use parent methods for proper error handling 2025-12-27 16:48:25 +01:00
Matthias 5c02ce934d test: remove outdated TODO 2025-12-27 09:53:46 +01:00
Matthias 260512d678 chore: remove outdated todo, replaced with comment 2025-12-27 09:53:46 +01:00
Matthias 8b1b16cb08 test: cleanup unnecessary test fixture 2025-12-27 09:53:46 +01:00
Matthias cacd52db1c chore: remove unnecessary todo 2025-12-27 09:53:42 +01:00
Matthias 4e809947c7 chore: improve create_command_partials runtime by not calling subprocess several times 2025-12-26 20:02:24 +01:00
Matthias 89c4aa23f3 docs: update docs with new --eps helpstring 2025-12-26 14:03:30 +01:00
Matthias 1bd043a912 chore: improve cli docstring to clarify "--eps" 2025-12-26 13:37:52 +01:00
Matthias 3ce23f99de Merge pull request #12655 from freqtrade/dependabot/pip/develop/time-machine-3.2.0
chore(deps-dev): bump time-machine from 3.1.0 to 3.2.0
2025-12-25 10:00:00 +01:00
Matthias c5fa5c5c69 chore: be more specific in dependabot schedule 2025-12-25 08:52:43 +01:00
Matthias 21d0b60168 Merge pull request #12660 from freqtrade/dependabot/pip/develop/cachetools-6.2.4
chore(deps): bump cachetools from 6.2.3 to 6.2.4
2025-12-25 08:20:22 +01:00
Matthias ba3925cdcd Merge pull request #12657 from freqtrade/dependabot/pip/develop/ccxt-4.5.29
chore(deps): bump ccxt from 4.5.28 to 4.5.29
2025-12-25 08:20:02 +01:00
Matthias 9cf6d47a43 Merge pull request #12656 from freqtrade/dependabot/github_actions/develop/docker/setup-buildx-action-3.12.0
chore(deps): bump docker/setup-buildx-action from 3.11.1 to 3.12.0
2025-12-25 08:19:29 +01:00
Matthias e01993b9c1 Merge pull request #12659 from freqtrade/dependabot/pip/develop/pre-commit-4.5.1
chore(deps-dev): bump pre-commit from 4.5.0 to 4.5.1
2025-12-25 08:19:15 +01:00
Matthias c354a76ae2 Merge pull request #12658 from freqtrade/dependabot/pip/develop/fastapi-0.125.0
chore(deps): bump fastapi from 0.124.4 to 0.125.0
2025-12-25 08:18:56 +01:00
Matthias f296213088 Merge pull request #12661 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-12-25 08:18:24 +01:00
Freqtrade Bot d80dbc1644 chore: update pre-commit hooks 2025-12-25 03:32:57 +00:00
dependabot[bot] 91ee8652ef chore(deps): bump cachetools from 6.2.3 to 6.2.4
Bumps [cachetools](https://github.com/tkem/cachetools) from 6.2.3 to 6.2.4.
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tkem/cachetools/compare/v6.2.3...v6.2.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-25 03:02:10 +00:00
dependabot[bot] 75dfc95221 chore(deps-dev): bump pre-commit from 4.5.0 to 4.5.1
Bumps [pre-commit](https://github.com/pre-commit/pre-commit) from 4.5.0 to 4.5.1.
- [Release notes](https://github.com/pre-commit/pre-commit/releases)
- [Changelog](https://github.com/pre-commit/pre-commit/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pre-commit/pre-commit/compare/v4.5.0...v4.5.1)

---
updated-dependencies:
- dependency-name: pre-commit
  dependency-version: 4.5.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-25 03:02:07 +00:00
dependabot[bot] 05fe35ce57 chore(deps): bump fastapi from 0.124.4 to 0.125.0
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.124.4 to 0.125.0.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.124.4...0.125.0)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.125.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-25 03:02:01 +00:00
dependabot[bot] 95e36013db chore(deps): bump ccxt from 4.5.28 to 4.5.29
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.28 to 4.5.29.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.28...v4.5.29)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.29
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-25 03:01:56 +00:00
dependabot[bot] c5c96d9610 chore(deps): bump docker/setup-buildx-action from 3.11.1 to 3.12.0
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.11.1 to 3.12.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/e468171a9de216ec08956ac3ada2f0791b6bd435...8d2750c68a42422c14e847fe6c8ac0403b4cbd6f)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: 3.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-25 03:01:43 +00:00
dependabot[bot] ad9a7279be chore(deps-dev): bump time-machine from 3.1.0 to 3.2.0
Bumps [time-machine](https://github.com/adamchainz/time-machine) from 3.1.0 to 3.2.0.
- [Changelog](https://github.com/adamchainz/time-machine/blob/main/docs/changelog.rst)
- [Commits](https://github.com/adamchainz/time-machine/compare/3.1.0...3.2.0)

---
updated-dependencies:
- dependency-name: time-machine
  dependency-version: 3.2.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-25 03:01:41 +00:00
Matthias dafb2fda7b Merge pull request #12505 from freqtrade/maint/python_3.14
CI against python 3.14
2025-12-24 15:36:55 +01:00
Matthias 04fea4ac29 Merge branch 'develop' into maint/python_3.14 2025-12-24 13:30:22 +01:00
Matthias 896250fe88 chore: add debugging output to debug psgallery error 2025-12-24 13:29:01 +01:00
Matthias 8485abc9b8 Merge pull request #12652 from freqtrade/maint/pip-audit
Add pip-audit
2025-12-24 13:17:43 +01:00
Matthias 2013a2edda chore: add recognition to the original tests author 2025-12-24 12:04:30 +01:00
Matthias 11eb0c0802 fix: re-add latest tag for docker hub - which aligns to the :devleop tag 2025-12-24 11:58:44 +01:00
Matthias 78709a9d76 test: properly wrap line 2025-12-24 11:39:00 +01:00
Matthias f55a90d98c chore: add pip-audit as dependency and test 2025-12-24 11:35:25 +01:00
Matthias 4b3ff02d49 chore: Add pip-audit action 2025-12-24 11:06:49 +01:00
Matthias ea52deb98e Merge pull request #12648 from hippocritical/develop
adjusted the error message of "more than 5 queries needed for exchange"
2025-12-23 13:22:58 +01:00
hippocritical 7b33242aa0 fixed tests according to failed tests on github 2025-12-23 10:57:47 +01:00
Matthias 46ee092119 Merge pull request #12638 from freqtrade/dependabot/pip/develop/scikit-learn-1.8.0
chore(deps): bump scikit-learn from 1.7.2 to 1.8.0
2025-12-23 07:05:37 +01:00
Matthias 931cd2e7ba chore: bump Dockerfile to latest python release 2025-12-23 07:01:50 +01:00
Matthias b6899264a8 chore: update classifiers to 3.14 2025-12-23 06:59:50 +01:00
dependabot[bot] ca47882fa9 chore(deps): bump scikit-learn from 1.7.2 to 1.8.0
Bumps [scikit-learn](https://github.com/scikit-learn/scikit-learn) from 1.7.2 to 1.8.0.
- [Release notes](https://github.com/scikit-learn/scikit-learn/releases)
- [Commits](https://github.com/scikit-learn/scikit-learn/compare/1.7.2...1.8.0)

---
updated-dependencies:
- dependency-name: scikit-learn
  dependency-version: 1.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-23 05:42:22 +00:00
Matthias c21ce5ef94 Merge branch 'develop' into maint/python_3.14 2025-12-23 06:38:25 +01:00
Matthias 9baa6eebbe Merge pull request #12649 from freqtrade/maint/remove_catboost
Remove catboost dependency
2025-12-23 06:32:30 +01:00
Matthias 0feec257e3 Merge pull request #12650 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-12-23 06:31:49 +01:00
Freqtrade Bot 802d42cc00 chore: update pre-commit hooks 2025-12-23 03:30:45 +00:00
hippocritical f546146d40 changed the wording in
if required_candle_call_count > 5:
as per matthias suggestion.

adjusted the elif part too, since this would have to be worded similarly.

If a native speaker thinks there is a better wording, be our guest.
2025-12-23 00:44:45 +01:00
Matthias d2c4bd1b50 docs: update formatting of link 2025-12-22 20:00:50 +01:00
Matthias 5e5495e050 docs: Add deprecation notice for Catboost models 2025-12-22 19:56:41 +01:00
Matthias 51f3f0d65a test: Remove catboost tests 2025-12-22 19:53:02 +01:00
hippocritical 0019867da8 didn't make a space in the end ... you can book that under typo ...
added a . at the end of another warning since all other messages do have the same structure.
2025-12-22 12:53:01 +01:00
hippocritical 335e632bbc adjusted the error message of "more than 5 queries needed for exchange" to be more verbose to the user.
Now they don't have to guess what the limit actually is to then work towards, helping to better understand the error message.
2025-12-22 12:45:31 +01:00
Matthias d0ac462dd3 Merge pull request #12647 from freqtrade/dependabot/pip/develop/mypy-1.19.1
chore(deps-dev): bump mypy from 1.19.0 to 1.19.1
2025-12-22 07:54:03 +01:00
dependabot[bot] fc113f7bbf chore(deps-dev): bump mypy from 1.19.0 to 1.19.1
Bumps [mypy](https://github.com/python/mypy) from 1.19.0 to 1.19.1.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.19.0...v1.19.1)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 1.19.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 06:32:34 +00:00
Matthias 4f6b1b6fd0 Merge pull request #12633 from freqtrade/dependabot/pip/develop/scipy-e8974a44ab
chore(deps-dev): bump scipy-stubs from 1.16.3.2 to 1.16.3.3 in the scipy group
2025-12-22 07:31:21 +01:00
Matthias 006d2305af chore: update samples and comments to use lightgbm / xgboost
instead of catboost
2025-12-22 07:16:24 +01:00
Matthias 5c9f140c5d feat: remove catboost models and dependency 2025-12-22 07:11:11 +01:00
Matthias c6f3b00819 chore: combine updates on actions from the actions/* org 2025-12-22 07:02:01 +01:00
Matthias 1780d2db23 chore: bump scipy-stubs in pre-commit-config 2025-12-22 06:59:35 +01:00
dependabot[bot] 78d602f7b4 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.16.3.2 to 1.16.3.3
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.16.3.2...v1.16.3.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 05:58:11 +00:00
Matthias 4823f66c4e Merge pull request #12635 from freqtrade/dependabot/pip/develop/sqlalchemy-2.0.45
chore(deps): bump sqlalchemy from 2.0.44 to 2.0.45
2025-12-22 06:56:47 +01:00
Matthias a3c19d10f7 chore: bump sqlalchemy in pre-commit-config 2025-12-22 06:38:34 +01:00
Matthias ebb318a0f0 Merge pull request #12645 from freqtrade/dependabot/pip/develop/ccxt-4.5.28
chore(deps): bump ccxt from 4.5.27 to 4.5.28
2025-12-22 06:37:37 +01:00
Matthias 35d6e6e832 Merge pull request #12643 from freqtrade/dependabot/pip/develop/ruff-0.14.9
chore(deps-dev): bump ruff from 0.14.8 to 0.14.9
2025-12-22 06:37:05 +01:00
Matthias 37bc93e0d3 Merge pull request #12642 from freqtrade/dependabot/github_actions/develop/codecov/codecov-action-5.5.2
chore(deps): bump codecov/codecov-action from 5.5.1 to 5.5.2
2025-12-22 06:36:50 +01:00
Matthias 2cd30b0604 Merge pull request #12636 from freqtrade/dependabot/github_actions/develop/peter-evans/create-pull-request-8.0.0
chore(deps): bump peter-evans/create-pull-request from 7.0.9 to 8.0.0
2025-12-22 06:35:48 +01:00
Matthias 2f30cda9d7 Merge pull request #12640 from freqtrade/dependabot/github_actions/develop/actions/upload-artifact-6
chore(deps): bump actions/upload-artifact from 5 to 6
2025-12-22 06:34:41 +01:00
Matthias 9e1c760222 Merge pull request #12641 from freqtrade/dependabot/pip/develop/urllib3-2.6.2
chore(deps): bump urllib3 from 2.6.0 to 2.6.2
2025-12-22 06:33:53 +01:00
Matthias 53884cae2f Merge pull request #12637 from freqtrade/dependabot/pip/develop/fastapi-0.124.4
chore(deps): bump fastapi from 0.124.0 to 0.124.4
2025-12-22 06:33:35 +01:00
Matthias 1b16b450b7 Merge pull request #12634 from freqtrade/dependabot/pip/develop/cachetools-6.2.3
chore(deps): bump cachetools from 6.2.2 to 6.2.3
2025-12-22 06:32:15 +01:00
Matthias 18ba3241ce Merge pull request #12639 from freqtrade/dependabot/github_actions/develop/actions/download-artifact-7
chore(deps): bump actions/download-artifact from 6 to 7
2025-12-22 06:31:56 +01:00
Matthias 6f8ad595b7 Merge pull request #12646 from freqtrade/dependabot/pip/develop/pymdown-extensions-10.19.1
chore(deps): bump pymdown-extensions from 10.18 to 10.19.1
2025-12-22 06:31:23 +01:00
Matthias 5479f204b5 Merge pull request #12644 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-7.1.6
chore(deps): bump astral-sh/setup-uv from 7.1.4 to 7.1.6
2025-12-22 06:31:09 +01:00
dependabot[bot] c54b94b5a4 chore(deps): bump pymdown-extensions from 10.18 to 10.19.1
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.18 to 10.19.1.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.18...10.19.1)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-version: 10.19.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 03:02:39 +00:00
dependabot[bot] 5ed590d862 chore(deps): bump ccxt from 4.5.27 to 4.5.28
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.27 to 4.5.28.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.27...v4.5.28)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.28
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 03:02:35 +00:00
dependabot[bot] 3f5ed399b5 chore(deps): bump astral-sh/setup-uv from 7.1.4 to 7.1.6
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 7.1.4 to 7.1.6.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/1e862dfacbd1d6d858c55d9b792c756523627244...681c641aba71e4a1c380be3ab5e12ad51f415867)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 7.1.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 03:02:26 +00:00
dependabot[bot] a9a686c64e chore(deps-dev): bump ruff from 0.14.8 to 0.14.9
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.8 to 0.14.9.
- [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.14.8...0.14.9)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 03:02:24 +00:00
dependabot[bot] 978ca8f852 chore(deps): bump codecov/codecov-action from 5.5.1 to 5.5.2
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 5.5.1 to 5.5.2.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/5a1091511ad55cbe89839c7260b706298ca349f7...671740ac38dd9b0130fbe1cec585b89eea48d3de)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 5.5.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 03:02:16 +00:00
dependabot[bot] ea30f906f9 chore(deps): bump urllib3 from 2.6.0 to 2.6.2
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.6.0 to 2.6.2.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.6.0...2.6.2)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.6.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 03:02:10 +00:00
dependabot[bot] 811112f0ce chore(deps): bump actions/upload-artifact from 5 to 6
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 5 to 6.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 03:02:08 +00:00
dependabot[bot] 5ebffb27aa chore(deps): bump actions/download-artifact from 6 to 7
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 6 to 7.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 03:02:03 +00:00
dependabot[bot] 0cb676a677 chore(deps): bump fastapi from 0.124.0 to 0.124.4
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.124.0 to 0.124.4.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.124.0...0.124.4)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.124.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 03:01:57 +00:00
dependabot[bot] 6a6dce323d chore(deps): bump peter-evans/create-pull-request from 7.0.9 to 8.0.0
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 7.0.9 to 8.0.0.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/84ae59a2cdc2258d6fa0732dd66352dddae2a412...98357b18bf14b5342f975ff684046ec3b2a07725)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-version: 8.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 03:01:51 +00:00
dependabot[bot] 0d62fab367 chore(deps): bump sqlalchemy from 2.0.44 to 2.0.45
Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 2.0.44 to 2.0.45.
- [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases)
- [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst)
- [Commits](https://github.com/sqlalchemy/sqlalchemy/commits)

---
updated-dependencies:
- dependency-name: sqlalchemy
  dependency-version: 2.0.45
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 03:01:42 +00:00
dependabot[bot] a1b4a4dbfb chore(deps): bump cachetools from 6.2.2 to 6.2.3
Bumps [cachetools](https://github.com/tkem/cachetools) from 6.2.2 to 6.2.3.
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tkem/cachetools/compare/v6.2.2...v6.2.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 03:01:32 +00:00
Ingo bcd033bd0d remove HIP3 dex quantity restrictions 2025-12-21 19:55:35 +01:00
Matthias 092da6aee5 chore(ci): Try to cleanup docker build host 2025-12-21 13:43:16 +01:00
Matthias 13c63c0bf5 fix: exception when backtesting in webserver mode
Running a futures backtest more than once without cache caused
the process to crash due to detail data not being loaded.
2025-12-21 13:31:10 +01:00
Matthias aa38a36b56 docs: add override_exchange_check to documentation 2025-12-21 12:58:13 +01:00
Ingo ce8732b0cd modified tests for hip3 assets + add new tests for hip3 assets 2025-12-21 08:03:51 +01:00
Ingo bcf6c244b0 Add config validation + market tradable checks 2025-12-21 08:03:51 +01:00
igi01 9023ca4f56 Merge branch 'freqtrade:develop' into feature/hyperliquid-hip3-support 2025-12-21 07:30:20 +01:00
Matthias e9847d9549 Merge pull request #12627 from freqtrade/unify/algo_stop_orders
refactor stoploss methods for exchanges with algo orders
2025-12-19 06:27:12 +01:00
Matthias 0beb76ce48 fix: function signature mismatch 2025-12-18 07:11:45 +01:00
Matthias 21d723b35d chore(ci): visualize disk sizes for docker build 2025-12-18 07:06:34 +01:00
Matthias f002ce67b1 chore: bump version to 2025.11.2 2025-12-18 07:02:17 +01:00
Matthias 5fdc8acbe9 test: switch to BTC/USDC in tests for now 2025-12-18 07:02:17 +01:00
Matthias 1811f9581f fix: allow set-leverage failures on followup orders 2025-12-18 06:56:07 +01:00
Matthias 66235f3198 fix: improve binance stoploss "triggered" behavior 2025-12-18 06:55:47 +01:00
Matthias 6c8b8f642a Merge pull request #12629 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-12-18 06:29:05 +01:00
Ingo 29b7cbbb12 HIP3 dexes now fetched by market info of specific pairs 2025-12-18 05:31:55 +01:00
Ingo b2d5343a4e accidentaly deleted file and not the diff 2025-12-18 05:31:07 +01:00
Freqtrade Bot 6905b8059d chore: update pre-commit hooks 2025-12-18 03:28:09 +00:00
Ingo 301aff141a HIP3 dexes now fetched by market info of specific pairs 2025-12-17 21:58:10 +01:00
Ingo 245ca4bc2a accidentaly deleted file and not the diff 2025-12-17 21:56:59 +01:00
Ingo f32d25daac accidentaly deleted file and not the diff 2025-12-17 21:56:07 +01:00
Matthias 1143aba671 test: simplify test call 2025-12-17 07:18:19 +01:00
Matthias 278bd0e97d chore: improve variable naming 2025-12-17 07:18:19 +01:00
Matthias d5b296c75c test: fix gate stoploss test 2025-12-17 07:18:19 +01:00
Matthias c63fba2e57 chore: rename flag to better match what it does 2025-12-17 07:18:19 +01:00
Matthias c8d74baaa1 refactor: unify fetch_stoploss_order 2025-12-17 07:18:19 +01:00
Matthias a9ebff3965 Merge pull request #12628 from freqtrade/dependabot/pip/filelock-3.20.1
chore(deps): bump filelock from 3.20.0 to 3.20.1
2025-12-17 06:31:43 +01:00
dependabot[bot] 8859b9009a chore(deps): bump filelock from 3.20.0 to 3.20.1
Bumps [filelock](https://github.com/tox-dev/py-filelock) from 3.20.0 to 3.20.1.
- [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.20.0...3.20.1)

---
updated-dependencies:
- dependency-name: filelock
  dependency-version: 3.20.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-16 22:56:31 +00:00
Matthias d4aee7e433 test: add autospec=True to just changed tests 2025-12-16 20:48:15 +01:00
Matthias f0908a1043 test: adapt test to new call logic 2025-12-16 20:32:26 +01:00
Matthias cf6bf1b7b5 refactor: reduce code duplication for cancel_stop_orders 2025-12-16 20:32:26 +01:00
Matthias 84e9251fcd test: use object patching instead of direct assignment 2025-12-16 20:32:26 +01:00
Matthias 5800002d42 feat: add stoploss_fetch_requires_stop_param property 2025-12-16 20:32:26 +01:00
Matthias 6a98c19dab fix: improve binance stoploss "triggered" behavior 2025-12-16 20:12:34 +01:00
Matthias 025707d9ad chore: bump joblib to 1.5.3 2025-12-16 17:44:15 +01:00
Matthias 4540e2ceea Merge branch 'develop' into maint/python_3.14 2025-12-16 17:39:55 +01:00
Matthias eb3e8b82f9 Merge pull request #12626 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-12-16 06:28:58 +01:00
Freqtrade Bot 98da54ae82 chore: update pre-commit hooks 2025-12-16 03:30:35 +00:00
Matthias fa5210aa4b fix: function signature mismatch 2025-12-15 20:35:05 +01:00
Matthias 289e53ed5a fix: allow set-leverage failures on followup orders 2025-12-15 20:23:11 +01:00
igi01 789f4aa4f8 Delete requirements.txt
Accidentally pushed Version, which was used for testing
2025-12-15 19:01:24 +01:00
igi01 2045fa6427 Delete freqtrade/configuration/config_validation.py
validation will be included in hyperliquid.py
2025-12-15 18:59:54 +01:00
Matthias 8c62816972 Merge pull request #12619 from freqtrade/dependabot/pip/develop/python-rapidjson-1.23
chore(deps): bump python-rapidjson from 1.22 to 1.23
2025-12-15 07:11:04 +01:00
dependabot[bot] c0d40a03aa chore(deps): bump python-rapidjson from 1.22 to 1.23
Bumps [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) from 1.22 to 1.23.
- [Changelog](https://github.com/python-rapidjson/python-rapidjson/blob/master/CHANGES.rst)
- [Commits](https://github.com/python-rapidjson/python-rapidjson/compare/v1.22...v1.23)

---
updated-dependencies:
- dependency-name: python-rapidjson
  dependency-version: '1.23'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 05:50:08 +00:00
Matthias 551831c901 Merge pull request #12620 from freqtrade/dependabot/pip/develop/fastapi-0.124.0
chore(deps): bump fastapi from 0.123.0 to 0.124.0
2025-12-15 06:49:45 +01:00
Matthias 67850fd2a2 Merge pull request #12623 from freqtrade/dependabot/pip/develop/orjson-3.11.5
chore(deps): bump orjson from 3.11.4 to 3.11.5
2025-12-15 06:49:00 +01:00
Matthias 715ef21da0 Merge pull request #12621 from freqtrade/dependabot/github_actions/develop/actions/checkout-6.0.1
chore(deps): bump actions/checkout from 6.0.0 to 6.0.1
2025-12-15 06:43:44 +01:00
Matthias b8defa5d45 Merge pull request #12622 from freqtrade/dependabot/pip/develop/stable-baselines3-2.7.1
chore(deps): bump stable-baselines3 from 2.7.0 to 2.7.1
2025-12-15 06:27:06 +01:00
Matthias 6d3dac828a Merge pull request #12618 from freqtrade/dependabot/pip/develop/pytest-80f5f76e78
chore(deps-dev): bump pytest from 9.0.1 to 9.0.2 in the pytest group
2025-12-15 06:25:26 +01:00
Matthias 968a9a3750 Merge pull request #12625 from freqtrade/dependabot/pip/develop/ruff-0.14.8
chore(deps-dev): bump ruff from 0.14.7 to 0.14.8
2025-12-15 06:24:26 +01:00
Matthias 03b5cdb240 Merge pull request #12624 from freqtrade/dependabot/pip/develop/pymdown-extensions-10.18
chore(deps): bump pymdown-extensions from 10.17.2 to 10.18
2025-12-15 06:24:14 +01:00
dependabot[bot] 7dc0d5d146 chore(deps-dev): bump ruff from 0.14.7 to 0.14.8
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.7 to 0.14.8.
- [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.14.7...0.14.8)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:02:48 +00:00
dependabot[bot] c20f511418 chore(deps): bump pymdown-extensions from 10.17.2 to 10.18
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.17.2 to 10.18.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.17.2...10.18)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-version: '10.18'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:02:20 +00:00
dependabot[bot] 484b3ff2f3 chore(deps): bump orjson from 3.11.4 to 3.11.5
Bumps [orjson](https://github.com/ijl/orjson) from 3.11.4 to 3.11.5.
- [Release notes](https://github.com/ijl/orjson/releases)
- [Changelog](https://github.com/ijl/orjson/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ijl/orjson/compare/3.11.4...3.11.5)

---
updated-dependencies:
- dependency-name: orjson
  dependency-version: 3.11.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:02:15 +00:00
dependabot[bot] 5d25adfc42 chore(deps): bump stable-baselines3 from 2.7.0 to 2.7.1
Bumps [stable-baselines3](https://github.com/DLR-RM/stable-baselines3) from 2.7.0 to 2.7.1.
- [Release notes](https://github.com/DLR-RM/stable-baselines3/releases)
- [Commits](https://github.com/DLR-RM/stable-baselines3/compare/v2.7.0...v2.7.1)

---
updated-dependencies:
- dependency-name: stable-baselines3
  dependency-version: 2.7.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:02:07 +00:00
dependabot[bot] 1099fd2525 chore(deps): bump actions/checkout from 6.0.0 to 6.0.1
Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.0 to 6.0.1.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v6.0.0...v6.0.1)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:02:03 +00:00
dependabot[bot] 293989f019 chore(deps): bump fastapi from 0.123.0 to 0.124.0
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.123.0 to 0.124.0.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.123.0...0.124.0)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.124.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:01:59 +00:00
dependabot[bot] 57d1e24275 chore(deps-dev): bump pytest from 9.0.1 to 9.0.2 in the pytest group
Bumps the pytest group with 1 update: [pytest](https://github.com/pytest-dev/pytest).


Updates `pytest` from 9.0.1 to 9.0.2
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/9.0.1...9.0.2)

---
updated-dependencies:
- dependency-name: pytest
  dependency-version: 9.0.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: pytest
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:01:39 +00:00
Matthias e52b5aef45 Merge pull request #12617 from freqtrade/feat/exit_price
Add price parameter to force-exit API
2025-12-14 19:34:25 +01:00
Matthias 28517085ca chore: bump version to 2025.11.1 2025-12-14 19:29:21 +01:00
Matthias a16d2a1ef9 chore: fix typo 2025-12-14 18:29:43 +01:00
Matthias 13c86452e9 refactor: only assign order_type once 2025-12-14 18:29:37 +01:00
Matthias fe18731057 test: slightly improve custom_exit_rate test 2025-12-14 17:58:11 +01:00
Matthias e26529b695 feat: Don't run custom_exit_price callback when exiting with price 2025-12-14 17:58:11 +01:00
Matthias bac6219cc1 feat: add price to force-exit 2025-12-14 17:58:11 +01:00
Matthias 0ed3bdc747 test: add test for force exit API logic 2025-12-14 17:57:52 +01:00
Matthias 8af0631ff0 Merge pull request #12599 from freqtrade/fix/dynamic_funding_fees
Adjust to dynamic funding fees
2025-12-14 17:56:34 +01:00
Matthias 2e3d276304 docs: Add strategy docs to migrate funding fees 2025-12-14 17:13:03 +01:00
Matthias bd5630a104 test: simplify test mock 2025-12-14 16:19:37 +01:00
Matthias b406219515 test: add candle_types test 2025-12-14 15:51:06 +01:00
Matthias 31d3a19836 feat: support candle_type parameter via API download 2025-12-14 13:49:39 +01:00
Matthias 83b372a32d docs: add "Funding fee adjustment" to deprecated docs 2025-12-13 19:30:21 +01:00
Matthias 51e0b204b6 docs: improve download data docs 2025-12-13 18:30:30 +01:00
Matthias c9ed79d2c8 chore: bump ccxt to 4.5.27 2025-12-13 13:51:30 +01:00
Matthias 043574f558 fix: support binance algo orders
closes #12610
2025-12-13 13:48:02 +01:00
Matthias fc5680d95c test: further test simplifications 2025-12-13 13:47:50 +01:00
Matthias eabb7c98ce test: simplify some stoploss test setups 2025-12-13 13:43:37 +01:00
Matthias 6848f9197e Merge pull request #12613 from freqtrade/fix/binance
Fix binance futures stoploss Order handling
2025-12-13 08:28:21 +01:00
Matthias 6d2c30abca chore: bump ccxt to 4.5.27 2025-12-12 06:54:29 +01:00
Matthias 93bde7dc46 fix: support binance algo orders
closes #12610
2025-12-12 06:52:11 +01:00
Matthias 97e2e0a405 chore: remove hard-pin of pycares 2025-12-11 18:23:58 +01:00
Matthias 12206f028b chore: comment wording improvements 2025-12-11 07:16:36 +01:00
Matthias 4c7944ac77 chore: update comment wording 2025-12-11 07:09:23 +01:00
Matthias d4ced7b416 docs: improve doc wording 2025-12-11 07:05:58 +01:00
Matthias 451eef5c99 test: further test simplifications 2025-12-11 06:49:56 +01:00
Matthias ae8f059de0 Merge pull request #12611 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-12-11 06:49:18 +01:00
Matthias 878bd7cbc7 chore: pin pycares for now 2025-12-11 06:35:27 +01:00
Freqtrade Bot 6d017c9a6c chore: update pre-commit hooks 2025-12-11 03:29:24 +00:00
Matthias 4c3d9b8c70 test: simplify some stoploss test setups 2025-12-10 19:28:30 +01:00
Matthias 23a4260859 chore: simplify okx cancel stoploss method 2025-12-10 17:23:10 +01:00
Matthias d15d08a2d5 test: Improve refresh_backtest test 2025-12-09 20:18:12 +01:00
Matthias 6aeab16ce4 test: improve candle type verification test 2025-12-09 20:13:10 +01:00
Matthias 46538d9a5b fix: verify prog actually exists before using it 2025-12-09 19:34:58 +01:00
Matthias f0f48395c5 chore: update download-data help text 2025-12-09 18:25:54 +01:00
Matthias b3a1442a69 feat: allow varying help texts for different subcommands 2025-12-09 18:25:11 +01:00
Matthias bbafb1dabd fix: deduplicate list before downloading
This avoids duplicate downloads, for example on hyperliquid, which uses "futures" as mark candle type.
2025-12-09 13:54:05 +01:00
Matthias 645a9159e4 chore: hyperliquid doesn't have mark candles
it uses regular futures candles as multiplicator for funding fees.
2025-12-09 13:43:49 +01:00
Matthias 2d3ff2f8ca test: mark-test should use the candle's defined mark price attribute 2025-12-09 13:42:59 +01:00
Matthias 5919736904 Merge pull request #12607 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-12-09 07:23:50 +01:00
Freqtrade Bot 732610e200 chore: update pre-commit hooks 2025-12-09 03:27:07 +00:00
Matthias 309985503d test: fix funding_rate_history online test 2025-12-08 20:17:10 +01:00
Matthias 072ed705fc test: fix funding_fee online tests 2025-12-08 19:21:48 +01:00
Matthias 3689b52309 docs: add Section about very loose stoploss on exchange
closes #12598
2025-12-08 17:21:51 +01:00
Matthias 01fbf31405 chore: don't suggest binance.us supports futures
it doesn't.
2025-12-08 17:15:41 +01:00
Matthias 00f687f3f5 test: test futures data with online exchanges 2025-12-08 17:07:26 +01:00
Matthias 96849fcafe refactor: provide a non-failing check_candle_support method 2025-12-08 17:01:36 +01:00
Matthias 80d5b6e24c test: minor refactor in online tests 2025-12-08 16:23:43 +01:00
Matthias f33fd98c83 test: Add test for candle type verification 2025-12-08 14:43:12 +01:00
Matthias c7636734de feat: validate supported candle types when downloading data 2025-12-08 14:29:16 +01:00
Matthias 994e61fe42 feat: add (commented) validation for fetch_*_ohlcv methods 2025-12-08 13:47:26 +01:00
Matthias 359eba462b feat: add candle_types argument to download-data 2025-12-08 12:45:41 +01:00
Matthias 38e48c0c5e test: update refresh ohlcv data test 2025-12-08 11:55:58 +01:00
Matthias 1e187e0945 Merge pull request #12604 from freqtrade/dependabot/pip/develop/ccxt-4.5.25
chore(deps): bump ccxt from 4.5.24 to 4.5.26
2025-12-08 11:52:15 +01:00
dependabot[bot] e4fc5df1cf chore(deps): bump ccxt from 4.5.24 to 4.5.25
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.24 to 4.5.25.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.24...v4.5.25)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.25
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-08 09:25:30 +00:00
Matthias cde886b884 chore: use str for safe usage of candle_type 2025-12-08 10:20:00 +01:00
Matthias 9f4e167455 chore: force keyword usage on refresh_backtest_ohlcv 2025-12-08 09:27:48 +01:00
Matthias f5e6504e22 test: add test for funding rate exchange fix 2025-12-08 09:11:49 +01:00
Matthias 0ec1066b34 test: add test for funding_rate fix 2025-12-08 08:48:37 +01:00
Matthias 62d4da3b94 test: add test for get_funding_rate_timeframe 2025-12-08 08:43:50 +01:00
Matthias 253950deb6 Merge pull request #12600 from freqtrade/dependabot/pip/develop/scipy-ea2b5522bf
chore(deps-dev): bump scipy-stubs from 1.16.3.1 to 1.16.3.2 in the scipy group
2025-12-08 08:38:40 +01:00
Matthias ed92d6beb9 Merge pull request #12601 from freqtrade/dependabot/pip/develop/ruff-0.14.7
chore(deps-dev): bump ruff from 0.14.6 to 0.14.7
2025-12-08 08:27:20 +01:00
Matthias ebb362d9fa chore: bump scipy-stubs in pre-commit config 2025-12-08 08:16:30 +01:00
dependabot[bot] f23fad420e chore(deps-dev): bump ruff from 0.14.6 to 0.14.7
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.6 to 0.14.7.
- [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.14.6...0.14.7)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-08 07:11:06 +00:00
Matthias aaf23221ff Merge pull request #12602 from freqtrade/dependabot/pip/develop/fastapi-0.123.0
chore(deps): bump fastapi from 0.122.0 to 0.123.0
2025-12-08 08:10:21 +01:00
Matthias 156c1a99a9 Merge pull request #12603 from freqtrade/dependabot/pip/develop/mypy-1.19.0
chore(deps-dev): bump mypy from 1.18.2 to 1.19.0
2025-12-08 08:09:35 +01:00
dependabot[bot] cb55ef5c59 chore(deps-dev): bump mypy from 1.18.2 to 1.19.0
Bumps [mypy](https://github.com/python/mypy) from 1.18.2 to 1.19.0.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.18.2...v1.19.0)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 1.19.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-08 03:02:14 +00:00
dependabot[bot] 6540fbb8e7 chore(deps): bump fastapi from 0.122.0 to 0.123.0
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.122.0 to 0.123.0.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.122.0...0.123.0)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.123.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-08 03:02:07 +00:00
dependabot[bot] 412392aea9 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.16.3.1 to 1.16.3.2
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.16.3.1...v1.16.3.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-08 03:01:42 +00:00
Matthias e6030b7f59 chore: minor adjustments for clarity 2025-12-07 20:01:08 +01:00
Matthias c1c968666e chore: some minor cleanups 2025-12-07 18:19:22 +01:00
Matthias f8d6363d19 test: update further tests 2025-12-07 16:11:47 +01:00
Matthias acc69e0d2e test: fix a couple more tests 2025-12-07 16:02:30 +01:00
Matthias 5110d0bdde test: update a couple of tests for new behavior 2025-12-07 15:12:42 +01:00
Matthias 597cc0592b test: update funding_rate_migration test 2025-12-06 20:14:22 +01:00
Matthias 01b0a8fa42 fix: 1h should be the default for funding/mark candles 2025-12-06 16:15:32 +01:00
Matthias cf6b7a847b fix: bitget's minimal funding fee interval is 1h 2025-12-06 16:01:05 +01:00
Matthias 4897080827 fix: bybit's minimal funding fee interval to 1h 2025-12-06 15:53:27 +01:00
Matthias 3ca8e0fb5c feat: auto-adjust funding rate timeframe in dataprovider 2025-12-06 15:42:40 +01:00
Matthias 40f4ff04c2 feat: auto-fix invalid funding rate timeframe in informative decorator 2025-12-06 14:16:27 +01:00
Matthias 3bd911982f feat: add get_funding_rate_timeframe to dataprovider 2025-12-06 14:13:53 +01:00
Matthias 730383ab18 feat: auto-download correct funding rate timeframe 2025-12-06 14:13:41 +01:00
Matthias b70f10dca6 chore: simplify warning formatting 2025-12-06 14:06:17 +01:00
Matthias 17009ac59f chore: allow non-matching funding timeframe - as timeframe doesn't actually matter any longer. 2025-12-06 13:53:18 +01:00
Matthias 07fbf2b467 feat: support dynamic funding fees in dry/live mode 2025-12-06 13:46:27 +01:00
Matthias 3f0be5e41f fix: floor timestamp to seconds
no candle has more than second precision.
2025-12-06 13:42:16 +01:00
Matthias 2845568f61 feat: limit funding_fee renaming to rename from low to high. 2025-12-05 20:32:56 +01:00
Matthias e3229935f6 Merge pull request #12594 from stremblayiOS/fix-hyperliquid-fetch-positions
Fix IndexError in fetch_positions for Hyperliquid when no pair specified
2025-12-05 20:16:48 +01:00
Matthias b1ee115b77 Merge pull request #12593 from arawrdn/develop
Update README.md
2025-12-05 19:53:33 +01:00
Matthias d6060f04bc Merge pull request #12595 from freqtrade/dependabot/pip/urllib3-2.6.0
chore(deps): bump urllib3 from 2.5.0 to 2.6.0
2025-12-05 19:43:22 +01:00
dependabot[bot] 1ae5310d2f chore(deps): bump urllib3 from 2.5.0 to 2.6.0
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.5.0 to 2.6.0.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.5.0...2.6.0)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.6.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-05 18:27:27 +00:00
stremblayiOS 417a0817a7 Fix IndexError in fetch_positions for Hyperliquid when no pair specified
## Summary

Fix IndexError crash in fetch_positions() when initializing wallets on Hyperliquid exchange.

## Quick changelog

- Changed fetch_positions to pass None instead of empty list when no specific pair is requested
- Fixes compatibility with Hyperliquid CCXT implementation that expects None for all positions

## What's new?

When fetch_positions() is called without a specific pair parameter, the code was passing an empty list [] to the CCXT API.
For Hyperliquid exchange, this causes an IndexError because the exchange's implementation attempts to access symbols[0]
without checking if the list is empty.

The CCXT standard is to pass None (not an empty list) when requesting all positions. This change aligns the code with
the CCXT API convention and prevents the crash on Hyperliquid during wallet initialization.

Error that was occurring:
```
IndexError: list index out of range
  at /root/freqtrade/.venv/lib/python3.11/site-packages/ccxt/hyperliquid.py:3051
  market = self.market(symbols[0])
```

This change does not use AI-generated code.
2025-12-05 18:33:40 +01:00
Matthias 41a82eff21 fix: don't fill up funding fee data Data
Timeframes are arbitrary and may vary between pairs or
time ranges
2025-12-05 18:20:14 +01:00
Matthias d41acc77f7 fix: floor funding-rate to seconds to account for slight time offset 2025-12-05 18:20:14 +01:00
Matthias 271fc6b585 feat: don't fill up missing funding-fees after merge 2025-12-05 18:20:14 +01:00
Matthias 262f4ffa4c test: update bt tests for new timeout behavior 2025-12-05 07:10:17 +01:00
Matthias 338c1c5424 fix: compare timeout with <= instead of <
closes #12590

Backtesting assumes round dates, so a timeout at "candle length" needs
to timeout at the hour - not after the hour.
otherwise the timeout becomes either double (60 instead of 30) -
or longer by one "timeframe detail" (31 instead of 30).
2025-12-05 07:10:04 +01:00
0xward 8ca25b1757 Update README.md
docs: fix minor typo and inconsistency in README disclaimer (Dry-run to dry-run)
2025-12-05 09:50:16 +07:00
Matthias 68e54248fd fix: calculate meaningful price change properly weighting each pair
closes #12588
2025-12-04 21:28:31 +01:00
Matthias e792bafe21 test: update test to ensure rel_mean is reasonable 2025-12-04 21:28:31 +01:00
Matthias fe95581acd test: update rel_mean test to use USDT Pairs
This will allow highlighting a problem pointed out in #12588
2025-12-04 21:28:31 +01:00
Matthias 7f831f8a9c test: update tests for new test pairs 2025-12-04 21:28:31 +01:00
Matthias 3fb7382cc4 test: update test data to include USDT pairs 2025-12-04 21:28:31 +01:00
Matthias 83f70b3c27 Merge pull request #12585 from LMessi2000/fix/okx-price-type-mapping
fix(okx): correct PriceType.MARK and PriceType.INDEX mapping
2025-12-04 07:24:31 +01:00
Ingo 922d5893f8 newest ccxt 2025-12-04 07:06:52 +01:00
Matthias e6e14ab67f Merge branch 'develop' into fix/okx-price-type-mapping 2025-12-04 07:02:27 +01:00
Matthias 37792e7d86 Merge pull request #12589 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-12-04 07:01:44 +01:00
Matthias a63ea6adb8 test: switch to BTC/USDC in tests for now 2025-12-04 06:56:14 +01:00
Matthias 06a8f3d097 chore: bump ccxt to 4.5.24 2025-12-04 06:36:13 +01:00
Freqtrade Bot e76b9bb64a chore: update pre-commit hooks 2025-12-04 03:27:18 +00:00
LMessi2000 606dbe5db1 Revert "test(okx): add unit test for stop_price_type_value_mapping"
This reverts commit 81e4e0d301.
2025-12-03 22:17:59 +08:00
LMessi2000 81e4e0d301 test(okx): add unit test for stop_price_type_value_mapping 2025-12-03 20:58:12 +08:00
LMessi2000 a3e97527d1 fix(okx): correct PriceType.MARK and PriceType.INDEX mapping 2025-12-03 20:41:01 +08:00
Ingo 3ebc7bfcfc no parsing direct position call 2025-12-03 07:02:30 +01:00
Ingo c892b07eef compatible with HIP3 2025-12-03 06:22:44 +01:00
Ingo 7a23da4deb only use HIP3_dexes with hyperliquid validation 2025-12-03 05:32:31 +01:00
Ingo 670999abda compatible with HIP3 2025-12-03 05:30:36 +01:00
Stefano e2b5e209f6 Merge branch 'freqtrade:develop' into main-stash 2025-12-03 09:10:15 +09:00
Matthias 7137461891 feat: improved download-data logging 2025-12-02 21:16:37 +01:00
Matthias 10e7d279f0 test: improve funding rate combine test 2025-12-02 20:39:34 +01:00
Matthias 971cb94ce4 feat: limit returned columns for merged mark/funding calc to used columns 2025-12-02 20:24:52 +01:00
Matthias 19526f1df2 test: update tests to align to improved formatting 2025-12-02 19:12:24 +01:00
Matthias 9c73c8671e feat: improve format_date with fallback value 2025-12-02 19:12:24 +01:00
Matthias 0f5427f4a0 feat: round_value should support None 2025-12-02 19:12:24 +01:00
Matthias a013793b2f feat: improved trade repr format (used for logs) 2025-12-02 19:12:24 +01:00
Matthias 1a77f1b203 Merge pull request #12581 from freqtrade/fix/sloe_handling
Improve stoploss cancellation logic
2025-12-02 16:18:52 +01:00
Matthias faf552837a test: add test for stoploss cancel skips 2025-12-02 06:48:53 +01:00
Matthias 4b2d099258 fix: ensure stoploss on exchange is canceled once the trade closes. 2025-12-02 06:48:53 +01:00
Matthias 4e6ea1d2ba feat: don't cancel stoploss early if it's not necessary 2025-12-02 06:48:53 +01:00
Matthias 197623839d Merge pull request #12579 from freqtrade/dependabot/github_actions/develop/actions/checkout-6.0.0
chore(deps): bump actions/checkout from 5.0.1 to 6.0.0
2025-12-02 06:47:47 +01:00
Matthias 6d8fa76708 Merge pull request #12580 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-12-02 06:40:25 +01:00
Matthias d7eb49d5d0 chore: align usage of actions/checkout version pin 2025-12-02 06:31:32 +01:00
Freqtrade Bot 659509e085 chore: update pre-commit hooks 2025-12-02 03:26:42 +00:00
Matthias 2b729c2527 test: improve integration test to have proper return value 2025-12-01 20:11:03 +01:00
dependabot[bot] 38151423b8 chore(deps): bump actions/checkout from 5.0.1 to 6.0.0
Bumps [actions/checkout](https://github.com/actions/checkout) from 5.0.1 to 6.0.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](https://github.com/actions/checkout/compare/v5.0.1...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 18:48:43 +00:00
Matthias 2f990b773d chore: increase dependabot cooldown to 7 days 2025-12-01 19:08:50 +01:00
Matthias 20d253dd41 Merge pull request #12574 from freqtrade/dependabot/pip/develop/pre-commit-4.5.0
chore(deps-dev): bump pre-commit from 4.4.0 to 4.5.0
2025-12-01 08:16:40 +01:00
Matthias 6e2165b5e5 Merge pull request #12572 from freqtrade/dependabot/pip/develop/fastapi-0.122.0
chore(deps): bump fastapi from 0.121.3 to 0.122.0
2025-12-01 07:25:23 +01:00
Matthias 6860904bb9 Merge pull request #12573 from freqtrade/dependabot/pip/develop/ccxt-4.5.22
chore(deps): bump ccxt from 4.5.20 to 4.5.22
2025-12-01 07:16:12 +01:00
Matthias 450dc23374 Merge pull request #12571 from freqtrade/dependabot/pip/develop/pymdown-extensions-10.17.2
chore(deps): bump pymdown-extensions from 10.17.1 to 10.17.2
2025-12-01 07:10:42 +01:00
Matthias d781f09b46 Merge pull request #12566 from freqtrade/dependabot/pip/develop/scipy-e647f76feb
chore(deps-dev): bump scipy-stubs from 1.16.3.0 to 1.16.3.1 in the scipy group
2025-12-01 07:10:13 +01:00
dependabot[bot] dbde8332f7 chore(deps): bump fastapi from 0.121.3 to 0.122.0
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.121.3 to 0.122.0.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.121.3...0.122.0)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.122.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 06:00:27 +00:00
Matthias f5f1785b17 Merge pull request #12576 from freqtrade/dependabot/github_actions/develop/zizmorcore/zizmor-action-0.3.0
chore(deps): bump zizmorcore/zizmor-action from 0.2.0 to 0.3.0
2025-12-01 06:59:33 +01:00
Matthias 7d01928df0 Merge pull request #12567 from freqtrade/dependabot/pip/develop/pydantic-2.12.5
chore(deps): bump pydantic from 2.12.4 to 2.12.5
2025-12-01 06:58:53 +01:00
Matthias 31f712749b Merge pull request #12568 from freqtrade/dependabot/pip/develop/time-machine-3.1.0
chore(deps-dev): bump time-machine from 3.0.0 to 3.1.0
2025-12-01 06:58:36 +01:00
Matthias bcdf83100f Merge pull request #12577 from freqtrade/dependabot/github_actions/develop/actions/checkout-6.0.0
chore(deps): bump actions/checkout from 5.0.0 to 6.0.0
2025-12-01 06:58:02 +01:00
dependabot[bot] dc88ea0ed9 chore(deps-dev): bump pre-commit from 4.4.0 to 4.5.0
Bumps [pre-commit](https://github.com/pre-commit/pre-commit) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/pre-commit/pre-commit/releases)
- [Changelog](https://github.com/pre-commit/pre-commit/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pre-commit/pre-commit/compare/v4.4.0...v4.5.0)

---
updated-dependencies:
- dependency-name: pre-commit
  dependency-version: 4.5.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 05:57:42 +00:00
Matthias 543457a1ef Merge pull request #12575 from freqtrade/dependabot/github_actions/develop/peter-evans/create-pull-request-7.0.9
chore(deps): bump peter-evans/create-pull-request from 7.0.8 to 7.0.9
2025-12-01 06:57:05 +01:00
Matthias 5d781d0114 Merge pull request #12570 from freqtrade/dependabot/pip/develop/xgboost-3.1.2
chore(deps): bump xgboost from 3.1.1 to 3.1.2
2025-12-01 06:51:39 +01:00
Matthias 45b1dabe0a chore: bump scipy-stubs in pre-commit config 2025-12-01 06:44:00 +01:00
Matthias ffea373f86 Merge pull request #12578 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-7.1.4
chore(deps): bump astral-sh/setup-uv from 7.1.2 to 7.1.4
2025-12-01 06:41:44 +01:00
Matthias ba650de562 Merge pull request #12569 from freqtrade/dependabot/pip/develop/ruff-0.14.6
chore(deps-dev): bump ruff from 0.14.5 to 0.14.6
2025-12-01 06:41:20 +01:00
dependabot[bot] 39233ff240 chore(deps): bump astral-sh/setup-uv from 7.1.2 to 7.1.4
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 7.1.2 to 7.1.4.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41...1e862dfacbd1d6d858c55d9b792c756523627244)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 7.1.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:30:36 +00:00
dependabot[bot] 8950423418 chore(deps): bump actions/checkout from 5.0.0 to 6.0.0
Bumps [actions/checkout](https://github.com/actions/checkout) from 5.0.0 to 6.0.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:30:21 +00:00
dependabot[bot] 760a2b9ff7 chore(deps): bump zizmorcore/zizmor-action from 0.2.0 to 0.3.0
Bumps [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) from 0.2.0 to 0.3.0.
- [Release notes](https://github.com/zizmorcore/zizmor-action/releases)
- [Commits](https://github.com/zizmorcore/zizmor-action/compare/e673c3917a1aef3c65c972347ed84ccd013ecda4...e639db99335bc9038abc0e066dfcd72e23d26fb4)

---
updated-dependencies:
- dependency-name: zizmorcore/zizmor-action
  dependency-version: 0.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:30:05 +00:00
dependabot[bot] a13f488b84 chore(deps): bump peter-evans/create-pull-request from 7.0.8 to 7.0.9
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 7.0.8 to 7.0.9.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/271a8d0340265f705b14b6d32b9829c1cb33d45e...84ae59a2cdc2258d6fa0732dd66352dddae2a412)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-version: 7.0.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:29:53 +00:00
dependabot[bot] 09b1582704 chore(deps): bump ccxt from 4.5.20 to 4.5.22
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.20 to 4.5.22.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.20...v4.5.22)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.22
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:06:04 +00:00
dependabot[bot] 61ab49a124 chore(deps): bump pymdown-extensions from 10.17.1 to 10.17.2
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.17.1 to 10.17.2.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.17.1...10.17.2)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-version: 10.17.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:05:36 +00:00
dependabot[bot] 1a95b04d79 chore(deps): bump xgboost from 3.1.1 to 3.1.2
Bumps [xgboost](https://github.com/dmlc/xgboost) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/dmlc/xgboost/releases)
- [Changelog](https://github.com/dmlc/xgboost/blob/master/NEWS.md)
- [Commits](https://github.com/dmlc/xgboost/compare/v3.1.1...v3.1.2)

---
updated-dependencies:
- dependency-name: xgboost
  dependency-version: 3.1.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:05:23 +00:00
dependabot[bot] 691a6b0a72 chore(deps-dev): bump ruff from 0.14.5 to 0.14.6
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.5 to 0.14.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.14.5...0.14.6)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:05:16 +00:00
dependabot[bot] 1d0a902251 chore(deps-dev): bump time-machine from 3.0.0 to 3.1.0
Bumps [time-machine](https://github.com/adamchainz/time-machine) from 3.0.0 to 3.1.0.
- [Changelog](https://github.com/adamchainz/time-machine/blob/main/docs/changelog.rst)
- [Commits](https://github.com/adamchainz/time-machine/compare/3.0.0...3.1.0)

---
updated-dependencies:
- dependency-name: time-machine
  dependency-version: 3.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:04:53 +00:00
dependabot[bot] 1de9f5a2fb chore(deps): bump pydantic from 2.12.4 to 2.12.5
Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.12.4 to 2.12.5.
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/v2.12.4...v2.12.5)

---
updated-dependencies:
- dependency-name: pydantic
  dependency-version: 2.12.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:04:45 +00:00
dependabot[bot] 7a5342cc93 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.16.3.0 to 1.16.3.1
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.16.3.0...v1.16.3.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:04:40 +00:00
Matthias 52c73eabeb docs: add missing space in docs 2025-11-30 13:25:12 +01:00
Matthias 6eba5eedbe Merge pull request #12562 from freqtrade/new_release
New release 2025.11
2025-11-30 07:54:30 +01:00
Matthias 02de1f0a1e Merge pull request #12559 from freqtrade/feat/dry_stop
Enhance dry-run stoploss functionality
2025-11-29 13:44:45 +01:00
Matthias 3453bdf607 chore: bump version to 2025.12-dev 2025-11-29 13:10:16 +01:00
Matthias 3b55e577c2 chore: bump version to 2025.11 2025-11-29 13:00:52 +01:00
Matthias 8e031a01e6 Merge branch 'stable' into new_release 2025-11-29 13:00:27 +01:00
Matthias ac2723c3a0 test: add explicit test for dry stoploss order filling 2025-11-29 12:23:15 +01:00
Matthias 1536c09df3 test: improved test naming 2025-11-29 12:07:13 +01:00
Stefano 645f70e216 add None 2025-11-29 15:53:28 +09:00
Stefano b59db3c690 add more metrics on profit stat 2025-11-29 15:43:20 +09:00
Matthias bfe9aac16b fix(hyperliquid): exclude HIP3 pairs for now
part of #12558
2025-11-28 18:16:26 +01:00
Matthias fade66afd9 fix: ensure we always have a price when checking stops 2025-11-28 15:52:30 +01:00
Matthias f63484d0b0 feat: add dry-limit check for stoploss orders 2025-11-28 15:52:30 +01:00
Matthias 3543e96ec5 refactor: extract dry-market order slippage from function 2025-11-28 15:52:30 +01:00
Matthias c83ea0db4f chore: fix default behavior for crossed mode 2025-11-28 15:52:30 +01:00
Matthias ad256367be feat: dry-is-crossed should support stoploss 2025-11-28 15:52:30 +01:00
Matthias 73b427370b test: add tests for dry crossed stoploss 2025-11-28 15:52:30 +01:00
Matthias ca7234e33f test: fix dry-stop tests 2025-11-28 15:52:30 +01:00
Matthias cd7b267171 feat: record dry-run stop_price price separately 2025-11-28 15:52:30 +01:00
Matthias 1770a68457 chore: fix wrongly worded exchange_response endpoint naming 2025-11-28 13:37:31 +01:00
Matthias 57fd455adf fix: Proper fix for plotscript
this time also saving the file ...

closes #12557
2025-11-28 13:29:50 +01:00
Matthias 61ecaa4c41 fix: ensure automatic exportfilename detection works
closes #12557
2025-11-28 13:13:57 +01:00
Matthias 682c4137b4 docs: improved wording 2025-11-27 20:16:38 +01:00
Matthias 759c18df3d docs: improve pre-commit docs wording 2025-11-27 07:04:00 +01:00
Matthias 6cef73947c chore: apply formatting 2025-11-27 06:45:06 +01:00
Matthias 33dbe32e5c Merge branch 'develop' into pr/dev-starlight/12506 2025-11-27 06:37:17 +01:00
Matthias 04fda255de Merge pull request #12529 from mrpabloyeah/fix-backtesting-exception-when-no-data-is-available-for-a-pair
Fix backtesting exception when no data is available for a pair
2025-11-27 06:29:24 +01:00
Matthias 26f23c10b5 Merge pull request #12555 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-11-27 06:13:17 +01:00
Freqtrade Bot 001baa07b1 chore: update pre-commit hooks 2025-11-27 03:21:53 +00:00
mrpabloyeah 72724037af Replaced unsafe loop with a list comprehension & added docstring in refresh_pairlist() 2025-11-26 11:03:18 +01:00
Matthias 1bd60c2afb Merge pull request #12554 from freqtrade/restructure_ci
restructure CI to reliably fail the build step if other ch…
2025-11-25 20:11:49 +01:00
Matthias c0a1911f22 chore(ci): improve zizmor action formatting 2025-11-25 19:47:51 +01:00
Matthias f4920f199c chore(ci): only notify after build. 2025-11-25 19:47:15 +01:00
Matthias 6b8968ed0f chore(ci): restructure CI to reliably fail the build step if other checks failed 2025-11-25 19:47:15 +01:00
Matthias 85a88d3594 Merge pull request #12552 from freqtrade/codecov
Switch from Coveralls to Codecov
2025-11-25 19:18:53 +01:00
Matthias b5e17735a6 chore: use codecov with token 2025-11-25 19:03:48 +01:00
Matthias 67beeb6f26 Merge pull request #12553 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-11-25 06:34:42 +01:00
Freqtrade Bot f94acc9173 chore: update pre-commit hooks 2025-11-25 03:23:56 +00:00
Matthias a7ac957399 chore: implement cleanup for codecov action bug 2025-11-24 20:19:20 +01:00
Matthias b337b075ab chore: limit to appropriate runner 2025-11-24 19:53:55 +01:00
Matthias 3152e97b2f chore: switch from coveralls to codecov 2025-11-24 19:49:44 +01:00
mrpabloyeah 77e8a53572 Fix backtesting exception when no data is available for a pair (new approach) 2025-11-24 10:43:00 +01:00
Matthias 4eea0cca08 Merge pull request #12546 from freqtrade/dependabot/pip/develop/time-machine-3.0.0
chore(deps-dev): bump time-machine from 2.19.0 to 3.0.0
2025-11-24 08:11:34 +01:00
Matthias 8274a6c3a9 chore: update usage of TTLCache to FtTTLCache 2025-11-24 07:07:13 +01:00
Matthias f0a5b95ec0 feat: add FtTTLCache to avoid mocking issues
overrides timer in a central location.
2025-11-24 07:05:49 +01:00
Matthias e4dd3b2821 Merge pull request #12544 from freqtrade/dependabot/pip/develop/types-2e6adcc4ce
chore(deps-dev): bump types-python-dateutil from 2.9.0.20251108 to 2.9.0.20251115 in the types group
2025-11-24 07:02:11 +01:00
Matthias 7698ee9f3d Merge pull request #12549 from freqtrade/dependabot/pip/develop/numpy-2.3.5
chore(deps): bump numpy from 2.3.4 to 2.3.5
2025-11-24 06:50:52 +01:00
Matthias c5127ba522 Merge pull request #12548 from freqtrade/dependabot/pip/develop/ruff-0.14.5
chore(deps-dev): bump ruff from 0.14.4 to 0.14.5
2025-11-24 06:50:13 +01:00
Matthias 024d2db2e2 chore: bump pre-commit config dateutil types 2025-11-24 06:37:39 +01:00
Matthias f2498df99b Merge pull request #12550 from freqtrade/dependabot/pip/develop/plotly-6.5.0
chore(deps): bump plotly from 6.4.0 to 6.5.0
2025-11-24 06:35:18 +01:00
Matthias 37ce645bad Merge pull request #12545 from freqtrade/dependabot/pip/develop/cachetools-6.2.2
chore(deps): bump cachetools from 6.2.1 to 6.2.2
2025-11-24 06:32:43 +01:00
Matthias d4188a093b Merge pull request #12547 from freqtrade/dependabot/pip/develop/fastapi-0.121.3
chore(deps): bump fastapi from 0.121.1 to 0.121.3
2025-11-24 06:32:14 +01:00
dependabot[bot] bc3342b4d2 chore(deps): bump plotly from 6.4.0 to 6.5.0
Bumps [plotly](https://github.com/plotly/plotly.py) from 6.4.0 to 6.5.0.
- [Release notes](https://github.com/plotly/plotly.py/releases)
- [Changelog](https://github.com/plotly/plotly.py/blob/main/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.py/compare/v6.4.0...v6.5.0)

---
updated-dependencies:
- dependency-name: plotly
  dependency-version: 6.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:02:27 +00:00
dependabot[bot] 64cf284c07 chore(deps): bump numpy from 2.3.4 to 2.3.5
Bumps [numpy](https://github.com/numpy/numpy) from 2.3.4 to 2.3.5.
- [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.3.4...v2.3.5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:02:23 +00:00
dependabot[bot] 15b0cc28f8 chore(deps-dev): bump ruff from 0.14.4 to 0.14.5
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.4 to 0.14.5.
- [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.14.4...0.14.5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:02:14 +00:00
dependabot[bot] a647ceb753 chore(deps): bump fastapi from 0.121.1 to 0.121.3
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.121.1 to 0.121.3.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.121.1...0.121.3)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.121.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:01:54 +00:00
dependabot[bot] 54840a3f7e chore(deps-dev): bump time-machine from 2.19.0 to 3.0.0
Bumps [time-machine](https://github.com/adamchainz/time-machine) from 2.19.0 to 3.0.0.
- [Changelog](https://github.com/adamchainz/time-machine/blob/main/docs/changelog.rst)
- [Commits](https://github.com/adamchainz/time-machine/compare/2.19.0...3.0.0)

---
updated-dependencies:
- dependency-name: time-machine
  dependency-version: 3.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:01:50 +00:00
dependabot[bot] 2b1ef1bf59 chore(deps): bump cachetools from 6.2.1 to 6.2.2
Bumps [cachetools](https://github.com/tkem/cachetools) from 6.2.1 to 6.2.2.
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tkem/cachetools/compare/v6.2.1...v6.2.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:01:45 +00:00
dependabot[bot] 757439a594 chore(deps-dev): bump types-python-dateutil in the types group
Bumps the types group with 1 update: [types-python-dateutil](https://github.com/typeshed-internal/stub_uploader).


Updates `types-python-dateutil` from 2.9.0.20251108 to 2.9.0.20251115
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: types-python-dateutil
  dependency-version: 2.9.0.20251115
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:01:12 +00:00
Matthias 73dccb0780 test: Add test case for no parallel on 1 combo 2025-11-23 15:43:17 +01:00
Matthias aa7aac3a14 feat: don't jump into parallel mode for single pair/timeframe downloads 2025-11-23 15:43:17 +01:00
Matthias 2015ccc727 test: update parallel-history test 2025-11-23 15:43:17 +01:00
Matthias 47301830b6 fix: be more selective before activating parallel download 2025-11-23 15:43:17 +01:00
Matthias b7b280de96 Merge pull request #12542 from freqtrade/feat/no_data
Fix telegram crash during exchange downtime and improve percentage formatting
2025-11-23 15:43:07 +01:00
Matthias 7edc2e8c94 fix: improved realized profit telegram condition 2025-11-23 13:23:18 +01:00
Matthias 972e25a6a7 feat: Improve conditions to not exclude 0.0 profits 2025-11-23 08:33:11 +01:00
Matthias 649db69314 test: add tests for N/A when formatting prices 2025-11-23 08:30:24 +01:00
Matthias d0fb4cdc37 feat: use N/A for round value 2025-11-23 08:30:10 +01:00
Matthias efabcef330 feat: use pct formatting helper throughout telegram module 2025-11-23 08:23:05 +01:00
Matthias a4e6ac0c7f test: update test for new status table behavior 2025-11-23 08:18:51 +01:00
Matthias 0ce9149ddd feat: use helper method to format for pct 2025-11-23 08:18:17 +01:00
Matthias 2750643e07 test: add tests for format_pct 2025-11-23 08:14:39 +01:00
Matthias b92535deea feat: Add format_pct helper method 2025-11-23 08:13:48 +01:00
Matthias 2fa0503993 fix: telegram crash during exchange downtime 2025-11-23 08:09:37 +01:00
Matthias 3932470190 Merge pull request #12541 from stash86/main-stash
make sure the strat's startup count don't get replaced
2025-11-23 08:09:25 +01:00
Stefano d901f4b10b make sure the strat's starupt count don't get replaced 2025-11-23 14:01:36 +09:00
Matthias 8269384077 fix: missing space in template
closes #12539
2025-11-22 19:51:16 +01:00
Matthias b364153d02 feat: add nr_of_successful_* to api 2025-11-22 15:46:34 +01:00
Matthias 916d8324cb test: update tests with new fields 2025-11-22 13:48:57 +01:00
Matthias 60309b9e57 chore: move num_entries/exits to trade model 2025-11-22 13:40:57 +01:00
Matthias a05d142af6 chore: remove unneeded formatting 2025-11-22 13:38:33 +01:00
Matthias 1feb11bac0 refactor: use fstring for telegram sending 2025-11-22 13:32:38 +01:00
Matthias 93936c9946 refactor: use fstrings for /order telegram message 2025-11-22 13:29:27 +01:00
Matthias ce78039ea8 refactor: don't do delayed formatting on status message 2025-11-22 13:26:50 +01:00
Matthias 1db871e42d Merge pull request #12536 from stash86/add-liq-price
Add liq price info on telegram message
2025-11-22 13:05:01 +01:00
Matthias 1513ba9af9 chore: Move liquidation up a line 2025-11-22 12:48:51 +01:00
Stefano 22b88249ff Merge branch 'add-liq-price' of https://github.com/stash86/freqtrade into add-liq-price 2025-11-22 16:52:47 +09:00
Stefano 18f73af6e6 use get to return None on trade with no liq price 2025-11-22 16:52:43 +09:00
Stefano b8c835e24e Merge branch 'freqtrade:develop' into add-liq-price 2025-11-22 16:40:25 +09:00
Stefano 2f392b483c add liq line 2025-11-22 16:39:35 +09:00
Matthias 220480327c test: add explicit test for dry_order_filled 2025-11-21 07:11:05 +01:00
Matthias 2c6ff3f018 docs: update supported exchanges for Delist Filter 2025-11-20 20:30:43 +01:00
Matthias 56a8fb4aae Merge pull request #12532 from stash86/bitget-delist
add delisting check for bitget futures
2025-11-20 19:51:05 +01:00
Matthias 3f782fc482 Merge pull request #12531 from stash86/bybit-delist
add delisting check for bybit futures
2025-11-20 19:48:11 +01:00
Matthias d02e5f2b90 chore: simplify imports 2025-11-20 19:34:51 +01:00
Matthias 92fd9411e5 chore: simplify import 2025-11-20 19:31:28 +01:00
Stefano 650cdf5eb3 change to exclude optimize mode 2025-11-20 15:16:11 +09:00
Stefano 060a1543e9 change to exclude optimize mode 2025-11-20 15:13:56 +09:00
Matthias 50402c5cdc test: add explicit tests for price_crossed 2025-11-20 06:54:22 +01:00
Matthias 0835414f24 Merge pull request #12533 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-11-20 06:30:14 +01:00
Freqtrade Bot 6449074658 chore: update pre-commit hooks 2025-11-20 03:20:59 +00:00
Stefano b8d558a455 remove unnecessary check because it will be catch anyway 2025-11-20 09:41:57 +09:00
Stefano 4017b010f4 add test 2025-11-20 09:36:17 +09:00
Stefano 7e178cb032 add test 2025-11-20 09:26:16 +09:00
Stefano e17936c407 use dt_ts 2025-11-19 14:55:31 +09:00
Stefano f437d4a55b use dt_ts 2025-11-19 14:53:57 +09:00
Stefano a731b73457 add delisting check for bitget futures 2025-11-19 12:36:34 +09:00
Stefano b5be462dd1 add delisting check for bybit futures 2025-11-19 12:25:35 +09:00
Matthias b55e7bcf4e chore: Improve fetch_dry_run_order 2025-11-18 19:45:43 +01:00
Matthias d1e71544af test: imrpove testcase 2025-11-18 19:45:32 +01:00
Matthias 6e1367fa94 test: enable gate futures test 2025-11-18 19:16:32 +01:00
Matthias 58452ebc7c chore: bump ccxt to 4.5.20
closes #12516
2025-11-18 19:15:50 +01:00
Matthias 7b1dd61ae4 Merge pull request #12530 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-11-18 06:28:09 +01:00
Freqtrade Bot 1321991fca chore: update pre-commit hooks 2025-11-18 03:22:24 +00:00
Matthias 8ae8b615b2 Merge pull request #12518 from freqtrade/dependabot/pip/develop/pytest-9513a616b5
chore(deps-dev): bump the pytest group with 2 updates
2025-11-17 19:23:24 +01:00
Matthias 1c96dfd58f chore: add TODO comment for pytest migration 2025-11-17 18:24:10 +01:00
mrpabloyeah f98efdbe07 Fix backtesting exception when no data is available for a pair 2025-11-17 13:09:48 +01:00
Matthias e67c2eefff test: live test "get_fee" for futures exchange 2025-11-17 07:20:44 +01:00
Matthias 2ea19f2ab0 Merge pull request #12517 from freqtrade/dependabot/pip/develop/types-ee32193104
chore(deps-dev): bump types-python-dateutil from 2.9.0.20251008 to 2.9.0.20251108 in the types group
2025-11-17 06:57:29 +01:00
Matthias 44a6d2ead7 Merge pull request #12520 from freqtrade/dependabot/pip/develop/fastapi-0.121.1
chore(deps): bump fastapi from 0.121.0 to 0.121.1
2025-11-17 06:57:00 +01:00
Matthias 5fa314e4a8 Merge pull request #12522 from freqtrade/dependabot/pip/develop/certifi-2025.11.12
chore(deps): bump certifi from 2025.10.5 to 2025.11.12
2025-11-17 06:52:58 +01:00
dependabot[bot] 89a8adcbcf chore(deps-dev): bump the pytest group with 2 updates
Bumps the pytest group with 2 updates: [pytest](https://github.com/pytest-dev/pytest) and [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio).


Updates `pytest` from 8.4.2 to 9.0.1
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/8.4.2...9.0.1)

Updates `pytest-asyncio` from 1.2.0 to 1.3.0
- [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases)
- [Commits](https://github.com/pytest-dev/pytest-asyncio/compare/v1.2.0...v1.3.0)

---
updated-dependencies:
- dependency-name: pytest
  dependency-version: 9.0.1
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: pytest
- dependency-name: pytest-asyncio
  dependency-version: 1.3.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: pytest
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 05:39:17 +00:00
Matthias 57f216e9c7 chore: bump dateutil in pre-commit config 2025-11-17 06:32:18 +01:00
Matthias 927a771f2e Merge pull request #12526 from freqtrade/dependabot/pip/develop/optuna-4.6.0
chore(deps): bump optuna from 4.5.0 to 4.6.0
2025-11-17 06:30:19 +01:00
Matthias 3a1fffeeb7 Merge pull request #12521 from freqtrade/dependabot/pip/develop/torch-2.9.1
chore(deps): bump torch from 2.9.0 to 2.9.1
2025-11-17 06:30:00 +01:00
Matthias 9a5622fe33 Merge pull request #12527 from freqtrade/dependabot/pip/develop/ccxt-4.5.19
chore(deps): bump ccxt from 4.5.17 to 4.5.19
2025-11-17 06:29:09 +01:00
Matthias ec51820074 Merge pull request #12519 from freqtrade/dependabot/pip/develop/mkdocs-a50e39aa08
chore(deps): bump mkdocs-material from 9.6.23 to 9.7.0 in the mkdocs group
2025-11-17 06:28:14 +01:00
Matthias 4425e0cd40 Merge pull request #12525 from freqtrade/dependabot/pip/develop/pymdown-extensions-10.17.1
chore(deps): bump pymdown-extensions from 10.16.1 to 10.17.1
2025-11-17 06:27:34 +01:00
Matthias 97a830b4f0 Merge pull request #12523 from freqtrade/dependabot/pip/develop/pre-commit-4.4.0
chore(deps-dev): bump pre-commit from 4.3.0 to 4.4.0
2025-11-17 06:27:20 +01:00
Matthias cb28498890 Merge pull request #12524 from freqtrade/dependabot/pip/develop/ruff-0.14.4
chore(deps-dev): bump ruff from 0.14.3 to 0.14.4
2025-11-17 06:27:09 +01:00
dependabot[bot] 1747114b57 chore(deps): bump ccxt from 4.5.17 to 4.5.19
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.17 to 4.5.19.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/exchanges.cfg)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.17...v4.5.19)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.19
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:02:58 +00:00
dependabot[bot] 1056b2562e chore(deps): bump optuna from 4.5.0 to 4.6.0
Bumps [optuna](https://github.com/optuna/optuna) from 4.5.0 to 4.6.0.
- [Release notes](https://github.com/optuna/optuna/releases)
- [Commits](https://github.com/optuna/optuna/compare/v4.5.0...v4.6.0)

---
updated-dependencies:
- dependency-name: optuna
  dependency-version: 4.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:02:48 +00:00
dependabot[bot] 64f680ed86 chore(deps): bump pymdown-extensions from 10.16.1 to 10.17.1
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.16.1 to 10.17.1.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.16.1...10.17.1)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-version: 10.17.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:02:44 +00:00
dependabot[bot] 028c60ce5a chore(deps-dev): bump ruff from 0.14.3 to 0.14.4
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.3 to 0.14.4.
- [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.14.3...0.14.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:02:36 +00:00
dependabot[bot] d27ee227cb chore(deps-dev): bump pre-commit from 4.3.0 to 4.4.0
Bumps [pre-commit](https://github.com/pre-commit/pre-commit) from 4.3.0 to 4.4.0.
- [Release notes](https://github.com/pre-commit/pre-commit/releases)
- [Changelog](https://github.com/pre-commit/pre-commit/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pre-commit/pre-commit/compare/v4.3.0...v4.4.0)

---
updated-dependencies:
- dependency-name: pre-commit
  dependency-version: 4.4.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:02:21 +00:00
dependabot[bot] 81c49136d1 chore(deps): bump certifi from 2025.10.5 to 2025.11.12
Bumps [certifi](https://github.com/certifi/python-certifi) from 2025.10.5 to 2025.11.12.
- [Commits](https://github.com/certifi/python-certifi/compare/2025.10.05...2025.11.12)

---
updated-dependencies:
- dependency-name: certifi
  dependency-version: 2025.11.12
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:02:18 +00:00
dependabot[bot] 4297207226 chore(deps): bump torch from 2.9.0 to 2.9.1
Bumps [torch](https://github.com/pytorch/pytorch) from 2.9.0 to 2.9.1.
- [Release notes](https://github.com/pytorch/pytorch/releases)
- [Changelog](https://github.com/pytorch/pytorch/blob/main/RELEASE.md)
- [Commits](https://github.com/pytorch/pytorch/compare/v2.9.0...v2.9.1)

---
updated-dependencies:
- dependency-name: torch
  dependency-version: 2.9.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:02:14 +00:00
dependabot[bot] 3877fb46de chore(deps): bump fastapi from 0.121.0 to 0.121.1
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.121.0 to 0.121.1.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.121.0...0.121.1)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.121.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:01:56 +00:00
dependabot[bot] 22707b8664 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.6.23 to 9.7.0
- [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.6.23...9.7.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:01:46 +00:00
dependabot[bot] d2c380c83b chore(deps-dev): bump types-python-dateutil in the types group
Bumps the types group with 1 update: [types-python-dateutil](https://github.com/typeshed-internal/stub_uploader).


Updates `types-python-dateutil` from 2.9.0.20251008 to 2.9.0.20251108
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: types-python-dateutil
  dependency-version: 2.9.0.20251108
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:01:12 +00:00
Matthias bc516db3f8 refactor: add generic "migrate" method 2025-11-16 09:11:02 +01:00
Matthias 5c0cf8f228 chore: prevent execution of command partials on python <3.13 2025-11-16 08:41:14 +01:00
Matthias b753231d3c Merge pull request #12512 from mrpabloyeah/fix-high_value-calculation-in-calculate_max_drawdown
Fix high_value calculation in calculate_max_drawdown()
2025-11-15 16:03:35 +01:00
Matthias af728f8224 chore: update command partial 2025-11-15 15:50:58 +01:00
Matthias 5000927939 test: add tests for new list-timeframes behavior 2025-11-15 15:49:45 +01:00
Matthias 89274bfcdb test: update tests for new timeframe approach 2025-11-15 15:46:09 +01:00
Matthias ef86b4113d feat: add trading-mode to list-timeframes
some exchanges provide different timeframe configurations depending on the market type
2025-11-15 13:11:10 +01:00
Matthias 38ff755533 fix: start drawdown series with a 0 row
This will account for edge-cases with no winning / losing trades
2025-11-15 09:52:24 +01:00
Matthias 70ec376657 test: further expand drawdown test 2025-11-15 09:51:27 +01:00
Matthias 1a506dc4b4 test: add tests for high/low logic 2025-11-14 19:41:52 +01:00
mrpabloyeah 47451dd989 Fix high_value calculation in calculate_max_drawdown() 2025-11-13 20:14:39 +01:00
Matthias 705849db3d Merge pull request #12511 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-11-13 06:55:06 +01:00
Freqtrade Bot 14d3096a22 chore: update pre-commit hooks 2025-11-13 03:22:53 +00:00
dev-starlight 8caf7a888e Add UTF-8 encoding to read_text method 2025-11-11 17:02:36 +08:00
dev-starlight 033050e6cf read text encoding='utf-8' 2025-11-11 17:00:56 +08:00
Matthias 0340d36af2 chore(ci): run ci against python 3.14 2025-11-11 07:02:19 +01:00
Matthias ad7816d51e chore: skip catboost tests on 3.14 for now 2025-11-11 07:01:21 +01:00
Matthias 73127c8179 chore: limit catboost to python < 3.14 2025-11-11 06:52:26 +01:00
Matthias 72889e2edb Merge pull request #12504 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-11-11 06:32:49 +01:00
Freqtrade Bot 0f17b04b2f chore: update pre-commit hooks 2025-11-11 03:23:01 +00:00
Matthias 179a5ba6ed Merge pull request #12498 from freqtrade/dependabot/pip/develop/fastapi-0.121.0
chore(deps): bump fastapi from 0.120.2 to 0.121.0
2025-11-10 07:04:54 +01:00
Matthias ed65b012b8 Merge pull request #12501 from freqtrade/dependabot/pip/develop/ccxt-4.5.17
chore(deps): bump ccxt from 4.5.16 to 4.5.17
2025-11-10 06:59:48 +01:00
dependabot[bot] 625629b9db chore(deps): bump fastapi from 0.120.2 to 0.121.0
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.120.2 to 0.121.0.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.120.2...0.121.0)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.121.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 05:48:14 +00:00
Matthias 9fa9f0860c chore: remove coincurve - ccxt depends directly on it 2025-11-10 06:43:05 +01:00
Matthias 5970881bb8 Merge pull request #12500 from freqtrade/dependabot/pip/develop/markdown-3.10
chore(deps): bump markdown from 3.9 to 3.10
2025-11-10 06:38:31 +01:00
Matthias bed93429cd Merge pull request #12493 from freqtrade/dependabot/pip/develop/plotly-6.4.0
chore(deps): bump plotly from 6.3.1 to 6.4.0
2025-11-10 06:38:11 +01:00
Matthias 3af9089d51 Merge pull request #12499 from freqtrade/dependabot/pip/develop/gymnasium-1.2.2
chore(deps): bump gymnasium from 1.2.1 to 1.2.2
2025-11-10 06:37:56 +01:00
Matthias 3aed562806 Merge pull request #12497 from freqtrade/dependabot/pip/develop/pydantic-2.12.4
chore(deps): bump pydantic from 2.12.3 to 2.12.4
2025-11-10 06:36:58 +01:00
Matthias 7f32ce498b Merge pull request #12496 from freqtrade/dependabot/pip/develop/ruff-0.14.3
chore(deps-dev): bump ruff from 0.14.2 to 0.14.3
2025-11-10 06:36:30 +01:00
Matthias 9e89ba6eed Merge pull request #12495 from freqtrade/dependabot/pip/develop/psutil-7.1.3
chore(deps): bump psutil from 7.1.2 to 7.1.3
2025-11-10 06:36:12 +01:00
Matthias 82309c3f47 Merge pull request #12494 from freqtrade/dependabot/github_actions/develop/docker/setup-qemu-action-3.7.0
chore(deps): bump docker/setup-qemu-action from 3.6.0 to 3.7.0
2025-11-10 06:35:59 +01:00
Matthias d5613cf471 Merge pull request #12492 from freqtrade/dependabot/pip/develop/mkdocs-30218cca00
chore(deps): bump mkdocs-material from 9.6.22 to 9.6.23 in the mkdocs group
2025-11-10 06:35:34 +01:00
dependabot[bot] 73f91eab15 chore(deps): bump ccxt from 4.5.16 to 4.5.17
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.16 to 4.5.17.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/exchanges.cfg)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.16...v4.5.17)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.17
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 03:03:06 +00:00
dependabot[bot] 35fb598017 chore(deps): bump markdown from 3.9 to 3.10
Bumps [markdown](https://github.com/Python-Markdown/markdown) from 3.9 to 3.10.
- [Release notes](https://github.com/Python-Markdown/markdown/releases)
- [Changelog](https://github.com/Python-Markdown/markdown/blob/master/docs/changelog.md)
- [Commits](https://github.com/Python-Markdown/markdown/compare/3.9.0...3.10.0)

---
updated-dependencies:
- dependency-name: markdown
  dependency-version: '3.10'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 03:02:56 +00:00
dependabot[bot] 40b9a836eb chore(deps): bump gymnasium from 1.2.1 to 1.2.2
Bumps [gymnasium](https://github.com/Farama-Foundation/Gymnasium) from 1.2.1 to 1.2.2.
- [Release notes](https://github.com/Farama-Foundation/Gymnasium/releases)
- [Commits](https://github.com/Farama-Foundation/Gymnasium/compare/v1.2.1...v1.2.2)

---
updated-dependencies:
- dependency-name: gymnasium
  dependency-version: 1.2.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 03:02:44 +00:00
dependabot[bot] 7189c0ff35 chore(deps): bump pydantic from 2.12.3 to 2.12.4
Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.12.3 to 2.12.4.
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/v2.12.4/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/v2.12.3...v2.12.4)

---
updated-dependencies:
- dependency-name: pydantic
  dependency-version: 2.12.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 03:02:34 +00:00
dependabot[bot] 0eb206c7b3 chore(deps-dev): bump ruff from 0.14.2 to 0.14.3
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.2 to 0.14.3.
- [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.14.2...0.14.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 03:02:27 +00:00
dependabot[bot] 728d2c9bcb chore(deps): bump psutil from 7.1.2 to 7.1.3
Bumps [psutil](https://github.com/giampaolo/psutil) from 7.1.2 to 7.1.3.
- [Changelog](https://github.com/giampaolo/psutil/blob/master/HISTORY.rst)
- [Commits](https://github.com/giampaolo/psutil/compare/release-7.1.2...release-7.1.3)

---
updated-dependencies:
- dependency-name: psutil
  dependency-version: 7.1.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 03:02:16 +00:00
dependabot[bot] f22feb7dee chore(deps): bump docker/setup-qemu-action from 3.6.0 to 3.7.0
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/29109295f81e9208d7d86ff1c6c12d2833863392...c7c53464625b32c7a7e944ae62b3e17d2b600130)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-version: 3.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 03:02:07 +00:00
dependabot[bot] c6bf0e1843 chore(deps): bump plotly from 6.3.1 to 6.4.0
Bumps [plotly](https://github.com/plotly/plotly.py) from 6.3.1 to 6.4.0.
- [Release notes](https://github.com/plotly/plotly.py/releases)
- [Changelog](https://github.com/plotly/plotly.py/blob/main/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.py/compare/v6.3.1...v6.4.0)

---
updated-dependencies:
- dependency-name: plotly
  dependency-version: 6.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 03:02:04 +00:00
dependabot[bot] 68836cb7be 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.6.22 to 9.6.23
- [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.6.22...9.6.23)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 03:01:51 +00:00
Matthias 706955e5fc Merge pull request #12489 from freqtrade/partials-3.13
Partials with python 3.13
2025-11-09 09:02:37 +01:00
Matthias 9aec10b0f3 docs: update badge link to point to CI workflow directly 2025-11-09 08:43:16 +01:00
Matthias b6b817e051 chore: re-export all command partials 2025-11-09 08:41:02 +01:00
Matthias 40107b9380 feat: format partials codeblock as outputs 2025-11-09 08:40:35 +01:00
Matthias 8804850170 refactor: extract partial-file writing 2025-11-09 08:38:32 +01:00
Matthias d246933c28 refactor: improve partials script 2025-11-09 08:37:39 +01:00
Matthias 777ff1938e feat: extract freqtrade-client to auto-use help 2025-11-09 08:36:42 +01:00
Matthias 2846d9478e chore: fix ci condition 2025-11-09 08:30:38 +01:00
Matthias 5d494eac51 docs: update command partials to be created with python 3.13 2025-11-09 08:07:37 +01:00
Matthias e26c3cbe5a chore: update CI to create partials on 3.13 2025-11-09 08:07:16 +01:00
Matthias 81a5056e1b fix: support ft-client help and ft-client show commands 2025-11-09 08:03:07 +01:00
Matthias 1876656afc Merge pull request #12488 from stash86/main-stash
update docs regarding forceenter endpoint
2025-11-09 07:59:37 +01:00
Stefano 889ab7ea00 update docs regarding forceenter endpoint 2025-11-09 13:33:07 +09:00
Matthias 2d4b02f7e5 refactor: align wording from category to space 2025-11-08 19:24:11 +01:00
Matthias c5a339eaf3 refactor: improve wording from category to space 2025-11-08 16:34:12 +01:00
Matthias 1e50a2da53 refactor: simplify hyperopt-auto 2025-11-08 16:26:05 +01:00
Matthias 7d1c2d3a1b test: Update test mock approach for hyperopt 2025-11-08 16:25:07 +01:00
Matthias a9f9b73a3a Merge pull request #12479 from freqtrade/feat/hyperopt_custom_spaces
Add support for custom hyperopt spaces
2025-11-08 16:01:42 +01:00
Matthias 236df5be6f chore: remove unnecessary pip flag
closes #12487
2025-11-07 19:45:05 +01:00
Matthias 6ea83ba0e7 docs: clarify space naming prevalence 2025-11-06 20:58:12 +01:00
Matthias 992c2f9e3e feat: improve code for list-strategies 2025-11-06 20:51:30 +01:00
Matthias 5e74700e31 chore: don't use conflicting spaces in sample strategy 2025-11-06 20:45:33 +01:00
Matthias 4a225cab23 test: update test for new "conflicting" behavior 2025-11-06 20:43:57 +01:00
Matthias 524ceebcbb fix: don't restrict spaces - explicitly defined space should win 2025-11-06 20:43:46 +01:00
Matthias f93c906614 test: improve tests for new builtin spaces 2025-11-06 20:36:40 +01:00
Matthias b32ba68a6e docs: at enter/exit spaces as builtin spaces 2025-11-06 20:33:09 +01:00
Matthias 649aff8076 feat: add builtin spaces enter and exit 2025-11-06 20:30:38 +01:00
Matthias a3efba019f docs: update documentation for new hyperopt spaces 2025-11-06 20:06:52 +01:00
Matthias ff4230af8a chore: update space parameter docstring 2025-11-06 19:43:35 +01:00
Matthias d1014ce3ce Merge pull request #12448 from stash86/main-stash
Add blacklist mode to MarketcapPairlist
2025-11-06 07:30:37 +01:00
Matthias 3bad6d3341 chore: switch white/blacklist to option 2025-11-06 07:10:05 +01:00
Matthias 7526fd0e0d test: Add additional test
shows the difference between max_rank 2 and max_rank6 in blacklist mode.
2025-11-06 07:05:36 +01:00
Matthias a2ec085dab Merge pull request #12484 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-11-06 06:28:25 +01:00
Freqtrade Bot cce7702e9c chore: update pre-commit hooks 2025-11-06 03:23:16 +00:00
Matthias 1cf7f4f9d8 Merge pull request #12480 from freqtrade/feat/add_coincurve
Add coincurve for faster ECDSA signing
2025-11-05 21:05:45 +01:00
Matthias 1328df772b feat: ensure spaces are valid identifiers 2025-11-05 21:05:15 +01:00
Matthias 68dea691c2 chore: improve help wording 2025-11-05 20:59:39 +01:00
Matthias f214942ff1 fix: improve error message for missing hyperopt parameters 2025-11-05 20:49:32 +01:00
Matthias 91866c1165 refactor: move lookup dictionary outside of loop 2025-11-05 20:46:53 +01:00
Matthias f73cbed843 chore: update ccxt version to 4.5.16 2025-11-05 20:43:36 +01:00
Matthias 5ad817f59e chore: add coincurve to support faster ECDSA signing 2025-11-05 20:41:19 +01:00
Matthias 4a8f487b68 chore: update json schema 2025-11-05 20:38:55 +01:00
Matthias d1b553cecc test: add custom parameter to test strategy 2025-11-05 20:14:28 +01:00
Matthias 1a2f261ee2 feat: support "--spaces all" with custom spaces 2025-11-05 20:12:56 +01:00
Matthias cfd4926f47 chore: fix odd indentation error 2025-11-05 20:03:03 +01:00
Matthias 36593ec593 Merge pull request #12477 from fengyuchuanshen/develop
chore: minor improvement for docs
2025-11-05 19:42:11 +01:00
fengyuchuanshen dc5f646f24 chore: minor improvement for docs
Signed-off-by: fengyuchuanshen <fengyuchuanshen@outlook.com>
2025-11-05 22:32:32 +08:00
Matthias d7e4965cde feat: improve list-strategies command output 2025-11-04 07:21:43 +01:00
Matthias e22bf5c681 chore: non-loaded strategies shouldn't show as hyperoptable 2025-11-04 07:16:57 +01:00
Matthias 007ab1b796 test: some cleanup 2025-11-04 07:14:01 +01:00
Matthias c748ac2aa2 chore: be more precise in type 2025-11-04 07:13:07 +01:00
Matthias c091426c44 feat: improve Auto-space detection logic 2025-11-04 07:07:55 +01:00
Matthias ab28e43050 test: update tests to new behavior 2025-11-04 07:07:55 +01:00
Matthias 74a18bdb11 chore: improve output wording/formatting 2025-11-04 07:07:55 +01:00
Matthias 367b9fa7f6 test: fix failing test 2025-11-04 07:07:55 +01:00
Matthias 8269333d9c feat: improve output wording 2025-11-04 07:07:55 +01:00
Matthias d83f222a13 chore: remove unused imports 2025-11-04 07:07:55 +01:00
Matthias 2ba9172526 feat: Assign all matching parameters 2025-11-04 07:07:55 +01:00
Matthias 465af62c16 feat: further updates 2025-11-04 07:07:55 +01:00
Matthias 231a145716 refactor: improve parameter storage 2025-11-04 07:07:55 +01:00
Matthias 4cabbe4d52 test: remove detect_parameters from tests 2025-11-04 07:07:55 +01:00
Matthias 72c87b7cbd chore: remove no longer used function 2025-11-04 07:07:55 +01:00
Matthias 3da6006a44 feat: improve hyperopt detection logic 2025-11-04 07:07:55 +01:00
Matthias 6f48b82297 test: slight update to test ... 2025-11-04 07:07:55 +01:00
Matthias ac51b41fdf refactor: remove pointless wrapper 2025-11-04 07:07:55 +01:00
Matthias 4b0b306c44 fix: hyperoptable should work whenever there's any space detected. 2025-11-04 07:07:55 +01:00
Matthias fd0acc074c feat: improve parameter detection to detect random named spaces 2025-11-04 07:07:55 +01:00
Matthias 39c37980d5 fix: improve resiliance 2025-11-04 07:07:55 +01:00
Matthias 6dc2547177 feat: Update output for random space names 2025-11-04 07:07:55 +01:00
Matthias d1224367e5 feat: further enable dynamic hyperopt parameters 2025-11-04 07:07:55 +01:00
Matthias c88a92b4f9 feat: allow init of random spaces 2025-11-04 07:07:55 +01:00
Matthias ffab6c3c50 test: Add test for "no hyperopt parameters found" error 2025-11-04 07:07:55 +01:00
Matthias cb7e04bfb0 feat: add explicit scenario testing if any parameter is selected 2025-11-04 07:07:55 +01:00
Matthias c6a7b84684 test: update test for new init sequence 2025-11-04 07:07:55 +01:00
Matthias 97afb4a56a chore: remove no longer used helper methods 2025-11-04 07:07:55 +01:00
Matthias 886c15a7fb test: update test asserting no longer existing metric 2025-11-04 07:07:55 +01:00
Matthias e34e84c5c6 refactor: further refactor of hyperopt spaces 2025-11-04 07:07:55 +01:00
Matthias 4cac68d774 chore: refactor buy/sell spaces slightly 2025-11-04 07:07:55 +01:00
Matthias a792744c0d refactor: improve get_indicator space naming 2025-11-04 07:07:55 +01:00
Matthias 384ed3fafb feat: don't limit spaces to builtin spaces 2025-11-04 07:07:54 +01:00
Matthias 80ea476497 Merge pull request #12461 from freqtrade/feat/stringread_strategyload
improve strategy loading with huge strategy libraries
2025-11-04 06:37:28 +01:00
Matthias 8ddbf4ba08 Merge pull request #12476 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-11-04 06:29:07 +01:00
Freqtrade Bot 041d93a254 chore: update pre-commit hooks 2025-11-04 03:20:44 +00:00
Matthias 167f264bc4 Merge pull request #12470 from freqtrade/dependabot/pip/develop/ccxt-4.5.14
chore(deps): bump ccxt from 4.5.12 to 4.5.14
2025-11-03 17:12:19 +01:00
Matthias 5c036f5fcc Merge pull request #12474 from freqtrade/dependabot/pip/develop/pyarrow-22.0.0
chore(deps): bump pyarrow from 20.0.0 to 22.0.0
2025-11-03 16:54:29 +01:00
Matthias 964ed8099c chore: remove workaround dependency pin for aarch64 2025-11-03 11:59:18 +01:00
Matthias 71b169616f chore: update pyarrow armhf wheel 2025-11-03 11:58:59 +01:00
Matthias d824755597 Merge pull request #12468 from freqtrade/dependabot/github_actions/develop/actions/upload-artifact-5
chore(deps): bump actions/upload-artifact from 4 to 5
2025-11-03 07:15:06 +01:00
Matthias 8e41699348 Merge pull request #12466 from freqtrade/dependabot/pip/develop/scipy-16e6c1b478
chore(deps): bump the scipy group with 2 updates
2025-11-03 07:13:59 +01:00
dependabot[bot] a580ba1903 chore(deps): bump pyarrow from 20.0.0 to 22.0.0
Bumps [pyarrow](https://github.com/apache/arrow) from 20.0.0 to 22.0.0.
- [Release notes](https://github.com/apache/arrow/releases)
- [Commits](https://github.com/apache/arrow/compare/apache-arrow-20.0.0...apache-arrow-22.0.0)

---
updated-dependencies:
- dependency-name: pyarrow
  dependency-version: 22.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 06:04:07 +00:00
Matthias edcb3696f1 Merge pull request #12472 from freqtrade/dependabot/pip/develop/orjson-3.11.4
chore(deps): bump orjson from 3.11.3 to 3.11.4
2025-11-03 07:00:57 +01:00
dependabot[bot] f1f07a1764 chore(deps): bump ccxt from 4.5.12 to 4.5.14
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.12 to 4.5.14.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/exchanges.cfg)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.12...v4.5.14)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 05:38:09 +00:00
Matthias 5139ea4e1c chore: bump scipy-stubs in pre-commit config 2025-11-03 06:35:10 +01:00
dependabot[bot] fdf9d4da81 chore(deps): bump orjson from 3.11.3 to 3.11.4
Bumps [orjson](https://github.com/ijl/orjson) from 3.11.3 to 3.11.4.
- [Release notes](https://github.com/ijl/orjson/releases)
- [Changelog](https://github.com/ijl/orjson/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ijl/orjson/compare/3.11.3...3.11.4)

---
updated-dependencies:
- dependency-name: orjson
  dependency-version: 3.11.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 05:34:32 +00:00
Matthias 65267b2bb7 Merge pull request #12471 from freqtrade/dependabot/pip/develop/psutil-7.1.2
chore(deps): bump psutil from 7.1.1 to 7.1.2
2025-11-03 06:32:12 +01:00
Matthias 420bb720c1 Merge pull request #12473 from freqtrade/dependabot/pip/develop/aiohttp-3.13.2
chore(deps): bump aiohttp from 3.13.1 to 3.13.2
2025-11-03 06:31:54 +01:00
Matthias bfbb6404e6 Merge pull request #12469 from freqtrade/dependabot/pip/develop/ruff-0.14.2
chore(deps-dev): bump ruff from 0.14.1 to 0.14.2
2025-11-03 06:31:39 +01:00
Matthias 6ffc88b3b3 Merge pull request #12464 from freqtrade/dependabot/github_actions/develop/actions/download-artifact-6
chore(deps): bump actions/download-artifact from 5 to 6
2025-11-03 06:31:30 +01:00
Matthias 54501b5c16 Merge pull request #12465 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-7.1.2
chore(deps): bump astral-sh/setup-uv from 7.1.0 to 7.1.2
2025-11-03 06:31:11 +01:00
Matthias d7ef5e8bd2 Merge pull request #12467 from freqtrade/dependabot/pip/develop/fastapi-0.120.2
chore(deps): bump fastapi from 0.119.1 to 0.120.2
2025-11-03 06:30:28 +01:00
dependabot[bot] c7e64360cd chore(deps): bump aiohttp from 3.13.1 to 3.13.2
---
updated-dependencies:
- dependency-name: aiohttp
  dependency-version: 3.13.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 03:03:15 +00:00
dependabot[bot] 55b66ca5e6 chore(deps): bump psutil from 7.1.1 to 7.1.2
Bumps [psutil](https://github.com/giampaolo/psutil) from 7.1.1 to 7.1.2.
- [Changelog](https://github.com/giampaolo/psutil/blob/master/HISTORY.rst)
- [Commits](https://github.com/giampaolo/psutil/compare/release-7.1.1...release-7.1.2)

---
updated-dependencies:
- dependency-name: psutil
  dependency-version: 7.1.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 03:02:52 +00:00
dependabot[bot] 1fc6cf4c89 chore(deps-dev): bump ruff from 0.14.1 to 0.14.2
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.1 to 0.14.2.
- [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.14.1...0.14.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 03:02:33 +00:00
dependabot[bot] 918e7c4bf8 chore(deps): bump actions/upload-artifact from 4 to 5
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 5.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 03:02:20 +00:00
dependabot[bot] cfc406709c chore(deps): bump fastapi from 0.119.1 to 0.120.2
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.119.1 to 0.120.2.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.119.1...0.120.2)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.120.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 03:02:20 +00:00
dependabot[bot] 9f55dac605 chore(deps): bump the scipy group with 2 updates
Bumps the scipy group with 2 updates: [scipy](https://github.com/scipy/scipy) and [scipy-stubs](https://github.com/scipy/scipy-stubs).


Updates `scipy` from 1.16.2 to 1.16.3
- [Release notes](https://github.com/scipy/scipy/releases)
- [Commits](https://github.com/scipy/scipy/compare/v1.16.2...v1.16.3)

Updates `scipy-stubs` from 1.16.2.4 to 1.16.3.0
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.16.2.4...v1.16.3.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 03:02:11 +00:00
dependabot[bot] 00a6575fb4 chore(deps): bump astral-sh/setup-uv from 7.1.0 to 7.1.2
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 7.1.0 to 7.1.2.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/3259c6206f993105e3a61b142c2d97bf4b9ef83d...85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 7.1.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 03:02:01 +00:00
dependabot[bot] c6eb63ab77 chore(deps): bump actions/download-artifact from 5 to 6
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 5 to 6.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 03:01:53 +00:00
Matthias db63d433f7 chore: improve log message 2025-11-02 16:49:07 +01:00
Matthias 635af046bf test: add test for string loading skipping 2025-11-02 16:48:53 +01:00
Matthias 86381955a3 feat: use text-analysis to short-circuit strategy loading 2025-11-02 16:30:38 +01:00
Matthias 3cfa366ec9 fix: validate trading-mode support when downloading data
closes #12458
2025-11-02 09:40:15 +01:00
Matthias baa5b1a58e feat: support validating trading mode only 2025-11-02 09:38:27 +01:00
Matthias 5be0a9c069 test: update test trading-mode validation test 2025-11-02 09:38:10 +01:00
Matthias 8978da7c20 Merge pull request #12457 from luckynick/patch-2
Update exchanges.md - clarify Hyperliquid docs on subaccounts usage
2025-11-02 09:23:05 +01:00
Matthias b3bbb92358 docs: slight rewording of hyperliquid subaccount docs 2025-11-02 09:08:43 +01:00
luckynick 06ac40fdbb Update exchanges.md 2025-11-01 14:05:20 +01:00
Matthias d38d8167d8 chore: update command-partials 2025-11-01 11:49:16 +01:00
Matthias 5684d0de0b chore: improve description formatting 2025-11-01 11:05:08 +01:00
Matthias a2f887aabb chore: update config schema 2025-11-01 09:47:23 +01:00
Matthias f72e708627 chore: move some setting-validations to config-schema 2025-11-01 09:47:23 +01:00
Stefano 781d8501cb update docs 2025-11-01 08:41:47 +09:00
Matthias 4f1e249574 Merge pull request #12452 from freqtrade/new_release
New release 2025.10
2025-10-31 16:53:02 +01:00
Stefano 015f1055a7 add tests 2025-10-31 17:22:46 +09:00
Matthias 2466cf85a1 Merge branch 'new_release' into develop 2025-10-31 07:16:45 +01:00
Matthias e6ddeef07f chore: update version to 2025.11-dev 2025-10-31 07:16:33 +01:00
Matthias e23a211503 chore: bump version to 2025.10 2025-10-31 07:05:04 +01:00
Matthias 2e78440ef1 Merge branch 'stable' into new_release 2025-10-31 07:04:49 +01:00
Matthias cbaba293b5 fix: more complete fix for #12451 2025-10-31 07:02:53 +01:00
Matthias cdd9968831 test: use realistic arguments for tests 2025-10-31 07:02:53 +01:00
Matthias 6b4318a801 fix: trade.id must be checked as int
fixes problem with psycopg3

closes #12451
2025-10-31 07:02:53 +01:00
Matthias 95f2cc0f88 Merge pull request #12449 from stash86/develop-copy
throw error on recursive analysis on 0 startup candle
2025-10-31 06:28:56 +01:00
Stefano 1d652d1284 throw error on recursive analysis on 0 startup candle 2025-10-31 08:51:56 +09:00
Stefano 614b85e833 add blacklist mode 2025-10-30 15:49:48 +09:00
Matthias 758f1eea93 test: consistent use of "spaces" in tests 2025-10-30 06:38:43 +01:00
Matthias f952502af5 Merge pull request #12447 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-10-30 06:37:31 +01:00
Freqtrade Bot b17a274ee8 chore: update pre-commit hooks 2025-10-30 03:21:28 +00:00
Matthias 4adab37b2a test: update test for removal of --hyperopt argument 2025-10-29 17:58:00 +01:00
Matthias ff7b1e0edc chore: remove long-deprecated "--hyperopt" argument 2025-10-29 17:57:51 +01:00
Matthias b2aa392a98 fix: log level setup 2025-10-28 20:00:39 +01:00
Matthias 0c1b892713 chore: add parameter descriptions to load_object 2025-10-28 19:41:35 +01:00
Matthias ee0952a848 chore: simplify iResolver 2025-10-28 19:35:18 +01:00
Matthias a166f452cb chore: move comment to right place 2025-10-28 19:32:57 +01:00
Matthias a458264bc5 fix: improve resilience in strategy wrapper 2025-10-28 19:09:09 +01:00
Matthias 13919054ac Merge pull request #12439 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-10-28 06:20:17 +01:00
Freqtrade Bot 8e4aeb62d3 chore: update pre-commit hooks 2025-10-28 03:19:47 +00:00
Matthias 609ac560fb Merge pull request #12434 from freqtrade/dependabot/pip/develop/ccxt-4.5.12
chore(deps): bump ccxt from 4.5.11 to 4.5.12
2025-10-27 20:06:12 +01:00
Matthias 5ae0328722 chore: fix redundant import 2025-10-27 19:49:49 +01:00
Matthias 89802da1c7 test: update tests for new okx limits 2025-10-27 19:45:21 +01:00
Matthias 43be6eef67 chore: re-align okx limits with ccxt 2025-10-27 19:45:15 +01:00
Matthias dc736da971 Merge pull request #12423 from freqtrade/dependabot/pip/develop/scipy-8c88e3b5d9
chore(deps-dev): bump scipy-stubs from 1.16.2.3 to 1.16.2.4 in the scipy group
2025-10-27 13:35:54 +01:00
Matthias aae1731e3b chore: bump scipy-stubs in pre-commit config 2025-10-27 13:20:37 +01:00
dependabot[bot] f39acd5585 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.16.2.3 to 1.16.2.4
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.16.2.3...v1.16.2.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 08:05:24 +00:00
Matthias 50f32ee56a Merge pull request #12435 from samgermain/cross-docs
cross leverage docs fix
2025-10-27 09:04:07 +01:00
Matthias 7d62e97024 Merge pull request #12425 from freqtrade/dependabot/pip/develop/types-c656cdcffe
chore(deps-dev): bump types-cachetools from 6.2.0.20250827 to 6.2.0.20251022 in the types group
2025-10-27 09:02:44 +01:00
Matthias 15eb454103 Merge pull request #12433 from freqtrade/dependabot/pip/develop/pydantic-2.12.3
chore(deps): bump pydantic from 2.12.2 to 2.12.3
2025-10-27 08:37:21 +01:00
Sam 179cefa89f cross leverage docs fix 2025-10-27 00:33:33 -06:00
dependabot[bot] c251877aba chore(deps): bump ccxt from 4.5.11 to 4.5.12
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.11 to 4.5.12.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/exchanges.cfg)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.11...v4.5.12)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.12
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 06:25:41 +00:00
Matthias 8352b0fe07 Merge pull request #12426 from freqtrade/dependabot/pip/develop/aiohttp-3.13.1
chore(deps): bump aiohttp from 3.13.0 to 3.13.1
2025-10-27 07:23:46 +01:00
Matthias 2a7859b3df Merge pull request #12431 from freqtrade/dependabot/pip/develop/ta-lib-0.6.8
chore(deps): bump ta-lib from 0.6.7 to 0.6.8
2025-10-27 07:18:43 +01:00
dependabot[bot] 4064586d18 chore(deps): bump pydantic from 2.12.2 to 2.12.3
Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.12.2 to 2.12.3.
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/v2.12.2...v2.12.3)

---
updated-dependencies:
- dependency-name: pydantic
  dependency-version: 2.12.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 05:46:12 +00:00
Matthias 7ddb6d3554 Merge pull request #12429 from freqtrade/dependabot/pip/develop/xgboost-3.1.1
chore(deps): bump xgboost from 3.0.5 to 3.1.1
2025-10-27 06:45:15 +01:00
Matthias 9206c0086f chore: add ta-lib armhf wheels 2025-10-27 06:43:22 +01:00
Matthias 0c6e5ace59 chore: bump types-cachetools in pre-commit config 2025-10-27 06:42:10 +01:00
Matthias 47f5b25265 Merge pull request #12430 from freqtrade/dependabot/pip/develop/uvicorn-0.38.0
chore(deps): bump uvicorn from 0.37.0 to 0.38.0
2025-10-27 06:41:13 +01:00
Matthias e3c8ef19c3 Merge pull request #12424 from freqtrade/dependabot/pip/develop/ruff-0.14.1
chore(deps-dev): bump ruff from 0.14.0 to 0.14.1
2025-10-27 06:40:42 +01:00
Matthias 803ef41a75 Merge pull request #12427 from freqtrade/dependabot/pip/develop/psutil-7.1.1
chore(deps): bump psutil from 7.1.0 to 7.1.1
2025-10-27 06:40:30 +01:00
Matthias 984f505fa6 Merge pull request #12428 from freqtrade/dependabot/pip/develop/fastapi-0.119.1
chore(deps): bump fastapi from 0.119.0 to 0.119.1
2025-10-27 06:40:15 +01:00
Matthias b89266225d Merge pull request #12432 from freqtrade/dependabot/pip/develop/python-rapidjson-1.22
chore(deps): bump python-rapidjson from 1.21 to 1.22
2025-10-27 06:39:58 +01:00
dependabot[bot] a45930a5cf chore(deps): bump python-rapidjson from 1.21 to 1.22
Bumps [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) from 1.21 to 1.22.
- [Changelog](https://github.com/python-rapidjson/python-rapidjson/blob/master/CHANGES.rst)
- [Commits](https://github.com/python-rapidjson/python-rapidjson/compare/v1.21...v1.22)

---
updated-dependencies:
- dependency-name: python-rapidjson
  dependency-version: '1.22'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:04:33 +00:00
dependabot[bot] fe06a87aa2 chore(deps): bump ta-lib from 0.6.7 to 0.6.8
Bumps [ta-lib](https://github.com/ta-lib/ta-lib-python) from 0.6.7 to 0.6.8.
- [Release notes](https://github.com/ta-lib/ta-lib-python/releases)
- [Changelog](https://github.com/TA-Lib/ta-lib-python/blob/master/CHANGELOG)
- [Commits](https://github.com/ta-lib/ta-lib-python/compare/v0.6.7...v0.6.8)

---
updated-dependencies:
- dependency-name: ta-lib
  dependency-version: 0.6.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:04:32 +00:00
dependabot[bot] f9940c4f1f chore(deps): bump uvicorn from 0.37.0 to 0.38.0
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.37.0 to 0.38.0.
- [Release notes](https://github.com/Kludex/uvicorn/releases)
- [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/uvicorn/compare/0.37.0...0.38.0)

---
updated-dependencies:
- dependency-name: uvicorn
  dependency-version: 0.38.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:04:11 +00:00
dependabot[bot] 5c3ebd3761 chore(deps): bump xgboost from 3.0.5 to 3.1.1
Bumps [xgboost](https://github.com/dmlc/xgboost) from 3.0.5 to 3.1.1.
- [Release notes](https://github.com/dmlc/xgboost/releases)
- [Changelog](https://github.com/dmlc/xgboost/blob/master/NEWS.md)
- [Commits](https://github.com/dmlc/xgboost/compare/v3.0.5...v3.1.1)

---
updated-dependencies:
- dependency-name: xgboost
  dependency-version: 3.1.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:03:53 +00:00
dependabot[bot] 9050325fda chore(deps): bump fastapi from 0.119.0 to 0.119.1
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.119.0 to 0.119.1.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.119.0...0.119.1)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.119.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:03:03 +00:00
dependabot[bot] 9ca2342a0b chore(deps): bump psutil from 7.1.0 to 7.1.1
Bumps [psutil](https://github.com/giampaolo/psutil) from 7.1.0 to 7.1.1.
- [Changelog](https://github.com/giampaolo/psutil/blob/master/HISTORY.rst)
- [Commits](https://github.com/giampaolo/psutil/compare/release-7.1.0...release-7.1.1)

---
updated-dependencies:
- dependency-name: psutil
  dependency-version: 7.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:02:56 +00:00
dependabot[bot] ad9bb75fd5 chore(deps): bump aiohttp from 3.13.0 to 3.13.1
---
updated-dependencies:
- dependency-name: aiohttp
  dependency-version: 3.13.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:02:51 +00:00
dependabot[bot] f96dfd04f7 chore(deps-dev): bump types-cachetools in the types group
Bumps the types group with 1 update: [types-cachetools](https://github.com/typeshed-internal/stub_uploader).


Updates `types-cachetools` from 6.2.0.20250827 to 6.2.0.20251022
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: types-cachetools
  dependency-version: 6.2.0.20251022
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:02:40 +00:00
dependabot[bot] d63982c32c chore(deps-dev): bump ruff from 0.14.0 to 0.14.1
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.0 to 0.14.1.
- [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.14.0...0.14.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:02:36 +00:00
Matthias 14b5392d5f Merge pull request #12420 from qinhanlei/uv-pip
Add support for uv in setup.sh
2025-10-26 09:47:48 +01:00
Matthias 16dd4073ff docs: update setup script docs for uv support 2025-10-26 09:32:36 +01:00
Matthias 9595936d73 chore: fix uv only install 2025-10-26 09:04:30 +01:00
Matthias c18a52fd2d test: update tests for new error formatting 2025-10-25 13:15:41 +02:00
Matthias 75c39d3617 feat: improve strategy error warning
closes #12418
2025-10-25 13:15:24 +02:00
Matthias 911a803a56 fix: improve error-handling for odd configurations 2025-10-25 09:49:55 +02:00
Matthias f04315fa8f fix: gracefully handle custom stake returning string
closes #12421
2025-10-25 09:42:45 +02:00
Matthias 89e68d7d4d test: add test case for string custom stake amount 2025-10-25 09:42:45 +02:00
Hanlei Qin 4fc5f33fa1 fix an omission 2025-10-25 15:16:20 +08:00
Matthias c2056085c9 Merge pull request #12419 from stash86/main-stash
Fix typo
2025-10-25 08:49:17 +02:00
Hanlei Qin 9f7b7ef889 Use uv instead of pip if available 2025-10-25 12:33:14 +08:00
Stefano cdb194a363 fix typo 2025-10-25 13:13:40 +09:00
Stefano 0986350f05 fix typo 2025-10-25 13:11:11 +09:00
Hanlei Qin 119cadcb2b Replace pip with uv for package installations in setup.sh 2025-10-24 19:55:57 +08:00
Matthias 803db3b55b Merge pull request #12413 from hippocritical/develop
add np.NAN to strategy updater conversion (which worked in 1.x but not in 2.x anymore)
2025-10-24 08:41:51 +02:00
hippocritical c2fd6e3237 NAN is sometimes used by some programmers when numpy was 1.x but now on 2.x the caps version is disallowed.
Added the caps conversion to lower case nan to fix that automatically.

Source:
https://numpy.org/doc/2.0/reference/constants.html?utm_source=chatgpt.com
NaN and NAN are aliases of nan.
2025-10-24 08:11:44 +02:00
Matthias bf7fc79519 Merge pull request #12412 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-10-23 19:46:01 +02:00
Freqtrade Bot cded5bcb4c chore: update pre-commit hooks 2025-10-23 17:29:57 +00:00
Matthias f8d3373e13 docs: update documentation to refer to psycopg3
It's the newer version with broader support for new packages (e.g. numpy2).

closes #12409
2025-10-23 19:11:43 +02:00
Matthias f1d48c8189 test: explicitly test for psycopg3 2025-10-23 07:11:15 +02:00
Matthias 866bda8606 test: update test string for psycopg3 2025-10-23 07:06:36 +02:00
Matthias 78a00ef249 Merge pull request #12398 from freqtrade/fix/remove_deprecation_warning
Work around os.fork deprecation
2025-10-21 06:34:28 +02:00
Matthias b6bc3042b4 Merge pull request #12408 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-10-21 06:25:23 +02:00
Freqtrade Bot 4ee699d27b chore: update pre-commit hooks 2025-10-21 03:19:09 +00:00
Matthias 2effa7a31b Merge branch 'develop' into fix/remove_deprecation_warning 2025-10-20 20:23:08 +02:00
Matthias c50b77303d Merge pull request #12400 from qinhanlei/patch-1
Update sb3_contrib dependency condition
2025-10-20 20:20:55 +02:00
Matthias 40bfaa6245 chore: align pyproject.toml platform limitations 2025-10-20 19:41:50 +02:00
Matthias f4656a0c6e test: ensure mp_start runs on startup 2025-10-20 19:30:32 +02:00
Matthias 161e5e3dfa refactor: switch mp-method to forkserver globally 2025-10-20 19:28:17 +02:00
Robert Caulk 023da4fc29 Merge pull request #12299 from freqtrade/dependabot/pip/develop/gymnasium-1.2.1
chore(deps): bump gymnasium from 0.29.1 to 1.2.1
2025-10-20 17:07:49 +02:00
dependabot[bot] 5c8261f8d1 chore(deps): bump gymnasium from 0.29.1 to 1.2.1
Bumps [gymnasium](https://github.com/Farama-Foundation/Gymnasium) from 0.29.1 to 1.2.1.
- [Release notes](https://github.com/Farama-Foundation/Gymnasium/releases)
- [Commits](https://github.com/Farama-Foundation/Gymnasium/compare/v0.29.1...v1.2.1)

---
updated-dependencies:
- dependency-name: gymnasium
  dependency-version: 1.2.1
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-20 04:30:27 +00:00
Matthias 080aafa1da Merge pull request #12406 from freqtrade/dependabot/pip/develop/torch-2.9.0
chore(deps): bump torch from 2.8.0 to 2.9.0
2025-10-20 06:26:48 +02:00
Matthias 43d6a6782a Merge pull request #12402 from freqtrade/dependabot/pip/develop/cryptography-46.0.3
chore(deps): bump cryptography from 46.0.2 to 46.0.3
2025-10-20 06:25:52 +02:00
Matthias f0028a6b6e Merge pull request #12407 from freqtrade/dependabot/pip/develop/humanize-4.14.0
chore(deps): bump humanize from 4.13.0 to 4.14.0
2025-10-20 06:25:09 +02:00
Matthias 98439f4e48 Merge pull request #12405 from freqtrade/dependabot/pip/develop/numpy-2.3.4
chore(deps): bump numpy from 2.3.3 to 2.3.4
2025-10-20 06:24:54 +02:00
Matthias 78802ae9aa Merge pull request #12404 from freqtrade/dependabot/pip/develop/numexpr-2.14.1
chore(deps): bump numexpr from 2.13.1 to 2.14.1
2025-10-20 06:24:24 +02:00
Matthias 99b4e5382e Merge pull request #12401 from freqtrade/dependabot/pip/develop/pydantic-2.12.2
chore(deps): bump pydantic from 2.12.0 to 2.12.2
2025-10-20 06:24:08 +02:00
Matthias 2b24f939da Merge pull request #12403 from freqtrade/dependabot/pip/develop/mkdocs-3c1a69b1c7
chore(deps): bump mkdocs-material from 9.6.21 to 9.6.22 in the mkdocs group
2025-10-20 06:23:24 +02:00
dependabot[bot] 3271e5cd43 chore(deps): bump humanize from 4.13.0 to 4.14.0
Bumps [humanize](https://github.com/python-humanize/humanize) from 4.13.0 to 4.14.0.
- [Release notes](https://github.com/python-humanize/humanize/releases)
- [Commits](https://github.com/python-humanize/humanize/compare/4.13.0...4.14.0)

---
updated-dependencies:
- dependency-name: humanize
  dependency-version: 4.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-20 03:02:42 +00:00
dependabot[bot] 94bd6b7142 chore(deps): bump torch from 2.8.0 to 2.9.0
Bumps [torch](https://github.com/pytorch/pytorch) from 2.8.0 to 2.9.0.
- [Release notes](https://github.com/pytorch/pytorch/releases)
- [Changelog](https://github.com/pytorch/pytorch/blob/main/RELEASE.md)
- [Commits](https://github.com/pytorch/pytorch/compare/v2.8.0...v2.9.0)

---
updated-dependencies:
- dependency-name: torch
  dependency-version: 2.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-20 03:02:37 +00:00
dependabot[bot] b59c4caf81 chore(deps): bump numpy from 2.3.3 to 2.3.4
Bumps [numpy](https://github.com/numpy/numpy) from 2.3.3 to 2.3.4.
- [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.3.3...v2.3.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-20 03:02:21 +00:00
dependabot[bot] 8bfa3a5d11 chore(deps): bump numexpr from 2.13.1 to 2.14.1
Bumps [numexpr](https://github.com/pydata/numexpr) from 2.13.1 to 2.14.1.
- [Release notes](https://github.com/pydata/numexpr/releases)
- [Changelog](https://github.com/pydata/numexpr/blob/master/RELEASE_NOTES.rst)
- [Commits](https://github.com/pydata/numexpr/compare/v2.13.1...v2.14.1)

---
updated-dependencies:
- dependency-name: numexpr
  dependency-version: 2.14.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-20 03:02:14 +00:00
dependabot[bot] b161924941 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.6.21 to 9.6.22
- [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.6.21...9.6.22)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-20 03:02:09 +00:00
dependabot[bot] aad125211e chore(deps): bump cryptography from 46.0.2 to 46.0.3
Bumps [cryptography](https://github.com/pyca/cryptography) from 46.0.2 to 46.0.3.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/46.0.2...46.0.3)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 46.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-20 03:02:03 +00:00
dependabot[bot] 39f8149e27 chore(deps): bump pydantic from 2.12.0 to 2.12.2
Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.12.0 to 2.12.2.
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/v2.12.0...v2.12.2)

---
updated-dependencies:
- dependency-name: pydantic
  dependency-version: 2.12.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-20 03:02:00 +00:00
WingStone d6541d81c3 Update sb3_contrib dependency condition
Install dependencies for development on macOS with Intel x86_64 Chip.
2025-10-20 10:49:35 +08:00
Matthias 763f08a08e test: test catboost on aarch64 runners 2025-10-19 16:46:33 +02:00
Matthias 886d5d1db6 chore: update catboost install 2025-10-19 16:45:13 +02:00
Matthias 9b1fc7a6d4 Merge pull request #12394 from freqtrade/feat/bitget_futures
Add support for bitget futures
2025-10-19 16:32:39 +02:00
Matthias 8d95ca3506 chore: disable deprecationWarning
Very targeted at  'CatBoostClassifier' object has no attribute '__sklearn_tags__'
2025-10-19 16:32:25 +02:00
Matthias 44ec500744 test: add Test-case to ensure hyperopt logging 2025-10-19 12:59:08 +02:00
Matthias 8526733b36 chore: update hyperopt test strategy to new interface 2025-10-19 12:55:00 +02:00
Matthias 9041000bc4 fix: attempt to work around deprecation message 2025-10-19 12:05:52 +02:00
Matthias be16ffea23 fix: move logging setup to hyperopter
restores hyperopt logging functionality
2025-10-19 09:09:59 +02:00
Matthias a0c4b520fc fix: okxus doesn't support futures trading 2025-10-19 08:24:06 +02:00
Matthias dcd9e2ef14 feat: bitget stop orders don't block assets 2025-10-18 13:02:33 +02:00
Matthias 46dc378472 test: add bitget leverage prep test 2025-10-18 09:53:42 +02:00
Matthias d1e73c1916 test: add test for cross liquidation price not supported 2025-10-18 09:48:48 +02:00
Matthias 0f60ee8763 feat: add bitget as supported exchange 2025-10-18 08:53:18 +02:00
Matthias 5b45f1bbc8 docs: add bitget as supported exchange 2025-10-18 08:52:52 +02:00
Matthias d283252ac7 fix: bitget only provides 100 funding rate candles per call 2025-10-18 08:47:55 +02:00
Matthias 02a0ce8c49 test: enable online bitget tests 2025-10-18 08:47:55 +02:00
Matthias f82d8f3b52 test: refactor _get_params test for simpler reading 2025-10-18 08:47:55 +02:00
Matthias 1f620257f9 test: test for get_params 2025-10-18 08:47:55 +02:00
Matthias 16e9109e96 test: add test for bitget exchange init 2025-10-18 08:47:55 +02:00
Matthias 0c65c915a4 feat: more settings for bitget futures 2025-10-18 08:47:55 +02:00
Matthias 7aca82b590 docs: clarify exchange warning 2025-10-18 08:47:55 +02:00
Matthias 99566b4d9b docs: slight refactor to exchanges structure 2025-10-18 08:47:55 +02:00
Matthias eb31581c7b docs(bitget): Add futures notes for bitget 2025-10-18 08:47:55 +02:00
Matthias d46af09c10 docs: add bitget to support matrix 2025-10-18 08:47:55 +02:00
Matthias badc7ed18c feat(bitget): fix liquidation formula 2025-10-18 08:47:55 +02:00
Matthias 3da36eae31 feat: bitget futures order parameters 2025-10-18 08:47:55 +02:00
Matthias fcbe58e971 feat: Add bitget exchange init 2025-10-18 08:47:55 +02:00
Matthias 572ce0b739 feat: bitget liquidation price calc 2025-10-18 08:47:55 +02:00
Matthias 0f31607617 feat: Enable bitget futures trading 2025-10-18 08:47:55 +02:00
Matthias 6a15f0c271 chore: update exchange docstrings 2025-10-18 08:45:56 +02:00
Matthias d77bcf0e18 chore: update web proxy url 2025-10-16 20:51:57 +02:00
Matthias 5df0530223 Merge pull request #12389 from mrpabloyeah/add-day-of-week-to-backtest-breakdowns
Add day of week to backtest breakdowns
2025-10-16 20:16:02 +02:00
Matthias 522fa092ba test: add explicit weekday test 2025-10-16 19:23:53 +02:00
Matthias 8f6f2ab872 test: add explicit test for weekday change 2025-10-16 19:21:31 +02:00
Matthias 7185026378 chore: revert unnecessary period name customization 2025-10-16 19:17:10 +02:00
Matthias db11844661 Merge pull request #12392 from freqtrade/dependabot/pip/develop/ccxt-4.5.11
chore(deps): bump ccxt from 4.5.10 to 4.5.11
2025-10-16 07:03:08 +02:00
Matthias 163d8a0e10 Merge pull request #12391 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-10-16 06:45:34 +02:00
dependabot[bot] 7a38423c1e chore(deps): bump ccxt from 4.5.10 to 4.5.11
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.10 to 4.5.11.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/exchanges.cfg)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.10...v4.5.11)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.11
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-16 04:43:09 +00:00
Matthias 46e0219040 chore: add devcontainer update to dependabot 2025-10-16 06:38:08 +02:00
Freqtrade Bot 1ff49aa614 chore: update pre-commit hooks 2025-10-16 03:17:22 +00:00
Matthias c878c673ab fix: improve datetime for trade_list_to_dataframe
closes #12388
2025-10-15 19:36:06 +02:00
Matthias 642f24eba5 chore: fix odd debug message wording 2025-10-15 19:31:10 +02:00
Matthias bdd60ecbbd fix: Set use_db for historic analysis
closes #12390
2025-10-15 18:27:20 +02:00
Matthias 4cf736911d fix: cleanup backtest after it ran 2025-10-15 18:19:02 +02:00
Matthias 0bf83f8744 chore: improved reset_backtest function 2025-10-15 18:17:55 +02:00
Matthias 6bd7fdb8ac chore: improved naming for method 2025-10-15 18:17:30 +02:00
Matthias a745136190 chore: fix action version missmatch 2025-10-15 06:59:37 +02:00
Matthias a672c32d6a chore: add dependabot cooldown configs 2025-10-15 06:58:31 +02:00
mrpabloyeah 1294724ee8 Add day of week to backtest breakdowns 2025-10-14 21:13:48 +02:00
Matthias b13af0e88b Merge pull request #12385 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-10-14 06:50:12 +02:00
Matthias 0041bf5e4e test: use ft_additional_exchange_init in tests 2025-10-14 06:30:05 +02:00
Matthias d7c027fc7a test: add ft_additional_exchange_init to simplify test setups 2025-10-14 06:29:59 +02:00
Matthias b3ceaa87d7 chore: remove redundant comment 2025-10-14 06:29:44 +02:00
Freqtrade Bot d237974ebe chore: update pre-commit hooks 2025-10-14 03:16:08 +00:00
Matthias a82c852675 Merge pull request #12370 from freqtrade/dependabot/pip/develop/scipy-78fb2d86bd
chore(deps-dev): bump scipy-stubs from 1.16.2.0 to 1.16.2.3 in the scipy group
2025-10-13 08:45:48 +02:00
Matthias bb76099b5a Merge pull request #12381 from freqtrade/dependabot/pip/develop/aiohttp-3.13.0
chore(deps): bump aiohttp from 3.12.15 to 3.13.0
2025-10-13 08:18:11 +02:00
Matthias 01ca34ebee chore: bump scipy-stubs in pre-commit config 2025-10-13 08:17:53 +02:00
dependabot[bot] 4af18a3471 chore(deps): bump aiohttp from 3.12.15 to 3.13.0
---
updated-dependencies:
- dependency-name: aiohttp
  dependency-version: 3.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 05:32:12 +00:00
dependabot[bot] 5d8500ff7f 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.16.2.0 to 1.16.2.3
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.16.2.0...v1.16.2.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 05:25:30 +00:00
Matthias 8a59dfd495 Merge pull request #12380 from freqtrade/dependabot/pip/develop/pydantic-2.12.0
chore(deps): bump pydantic from 2.11.10 to 2.12.0
2025-10-13 07:24:30 +02:00
Matthias f4da8edb90 Merge pull request #12376 from freqtrade/dependabot/pip/develop/sqlalchemy-2.0.44
chore(deps): bump sqlalchemy from 2.0.43 to 2.0.44
2025-10-13 07:20:41 +02:00
Matthias f1824f6f2e Merge pull request #12368 from freqtrade/dependabot/pip/develop/types-42ec8c0646
chore(deps-dev): bump types-python-dateutil from 2.9.0.20250822 to 2.9.0.20251008 in the types group
2025-10-13 07:09:57 +02:00
dependabot[bot] 54b01bd44d chore(deps): bump pydantic from 2.11.10 to 2.12.0
Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.11.10 to 2.12.0.
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/v2.11.10...v2.12.0)

---
updated-dependencies:
- dependency-name: pydantic
  dependency-version: 2.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 04:48:24 +00:00
Matthias 634be642f2 Merge pull request #12377 from freqtrade/dependabot/pip/develop/aiofiles-25.1.0
chore(deps): bump aiofiles from 24.1.0 to 25.1.0
2025-10-13 06:47:28 +02:00
Matthias 2e5000a016 chore: bump sqlalchemy in pre-commit config 2025-10-13 06:47:14 +02:00
dependabot[bot] b51ed49dbf chore(deps): bump sqlalchemy from 2.0.43 to 2.0.44
Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 2.0.43 to 2.0.44.
- [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases)
- [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst)
- [Commits](https://github.com/sqlalchemy/sqlalchemy/commits)

---
updated-dependencies:
- dependency-name: sqlalchemy
  dependency-version: 2.0.44
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 04:43:22 +00:00
Matthias 92d2bde559 chore: bump pre-commit python-dateutil stubs 2025-10-13 06:39:38 +02:00
Matthias 92ae444026 Merge pull request #12375 from freqtrade/dependabot/pip/develop/ccxt-4.5.10
chore(deps): bump ccxt from 4.5.7 to 4.5.10
2025-10-13 06:36:23 +02:00
Matthias 51795474d7 Merge pull request #12373 from freqtrade/dependabot/pip/develop/isort-7.0.0
chore(deps-dev): bump isort from 6.1.0 to 7.0.0
2025-10-13 06:35:04 +02:00
Matthias 63a37fc2d3 Merge pull request #12374 from freqtrade/dependabot/pip/develop/rich-14.2.0
chore(deps): bump rich from 14.1.0 to 14.2.0
2025-10-13 06:34:42 +02:00
Matthias 7d79ac1e56 Merge pull request #12378 from freqtrade/dependabot/pip/develop/ruff-0.14.0
chore(deps-dev): bump ruff from 0.13.3 to 0.14.0
2025-10-13 06:34:25 +02:00
Matthias acf6d94ee1 Merge pull request #12371 from freqtrade/dependabot/pip/develop/cachetools-6.2.1
chore(deps): bump cachetools from 6.2.0 to 6.2.1
2025-10-13 06:34:05 +02:00
Matthias a03e726aad Merge pull request #12372 from freqtrade/dependabot/pip/develop/filelock-3.20.0
chore(deps): bump filelock from 3.19.1 to 3.20.0
2025-10-13 06:33:45 +02:00
Matthias 6ce27e50f0 Merge pull request #12379 from freqtrade/dependabot/pip/develop/fastapi-0.119.0
chore(deps): bump fastapi from 0.118.0 to 0.119.0
2025-10-13 06:33:33 +02:00
Matthias d3bdf1ab96 Merge pull request #12369 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-7.1.0
chore(deps): bump astral-sh/setup-uv from 6.8.0 to 7.1.0
2025-10-13 06:33:18 +02:00
dependabot[bot] a0ec5f6fe2 chore(deps): bump fastapi from 0.118.0 to 0.119.0
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.118.0 to 0.119.0.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.118.0...0.119.0)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.119.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 03:03:46 +00:00
dependabot[bot] d512ae6c86 chore(deps-dev): bump ruff from 0.13.3 to 0.14.0
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.13.3 to 0.14.0.
- [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.13.3...0.14.0)

---
updated-dependencies:
- dependency-name: ruff
  dependency-version: 0.14.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 03:03:33 +00:00
dependabot[bot] 612790c730 chore(deps): bump aiofiles from 24.1.0 to 25.1.0
Bumps [aiofiles](https://github.com/Tinche/aiofiles) from 24.1.0 to 25.1.0.
- [Release notes](https://github.com/Tinche/aiofiles/releases)
- [Changelog](https://github.com/Tinche/aiofiles/blob/main/CHANGELOG.md)
- [Commits](https://github.com/Tinche/aiofiles/compare/v24.1.0...v25.1.0)

---
updated-dependencies:
- dependency-name: aiofiles
  dependency-version: 25.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 03:03:25 +00:00
dependabot[bot] 0e84c203e6 chore(deps): bump ccxt from 4.5.7 to 4.5.10
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.7 to 4.5.10.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/exchanges.cfg)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.7...v4.5.10)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 03:02:24 +00:00
dependabot[bot] 61119d60b9 chore(deps): bump rich from 14.1.0 to 14.2.0
Bumps [rich](https://github.com/Textualize/rich) from 14.1.0 to 14.2.0.
- [Release notes](https://github.com/Textualize/rich/releases)
- [Changelog](https://github.com/Textualize/rich/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Textualize/rich/compare/v14.1.0...v14.2.0)

---
updated-dependencies:
- dependency-name: rich
  dependency-version: 14.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 03:02:10 +00:00
dependabot[bot] 3870758ab8 chore(deps-dev): bump isort from 6.1.0 to 7.0.0
Bumps [isort](https://github.com/PyCQA/isort) from 6.1.0 to 7.0.0.
- [Release notes](https://github.com/PyCQA/isort/releases)
- [Changelog](https://github.com/PyCQA/isort/blob/main/CHANGELOG.md)
- [Commits](https://github.com/PyCQA/isort/compare/6.1.0...7.0.0)

---
updated-dependencies:
- dependency-name: isort
  dependency-version: 7.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 03:02:06 +00:00
dependabot[bot] 1b76900b9e chore(deps): bump filelock from 3.19.1 to 3.20.0
Bumps [filelock](https://github.com/tox-dev/py-filelock) from 3.19.1 to 3.20.0.
- [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.19.1...3.20.0)

---
updated-dependencies:
- dependency-name: filelock
  dependency-version: 3.20.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 03:02:00 +00:00
dependabot[bot] b63d61f2b2 chore(deps): bump cachetools from 6.2.0 to 6.2.1
Bumps [cachetools](https://github.com/tkem/cachetools) from 6.2.0 to 6.2.1.
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tkem/cachetools/compare/v6.2.0...v6.2.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 03:01:54 +00:00
dependabot[bot] 90e36700c3 chore(deps): bump astral-sh/setup-uv from 6.8.0 to 7.1.0
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 6.8.0 to 7.1.0.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/d0cc045d04ccac9d8b7881df0226f9e82c39688e...3259c6206f993105e3a61b142c2d97bf4b9ef83d)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 7.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 03:01:30 +00:00
dependabot[bot] d79b82d24e chore(deps-dev): bump types-python-dateutil in the types group
Bumps the types group with 1 update: [types-python-dateutil](https://github.com/typeshed-internal/stub_uploader).


Updates `types-python-dateutil` from 2.9.0.20250822 to 2.9.0.20251008
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: types-python-dateutil
  dependency-version: 2.9.0.20251008
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 03:01:15 +00:00
Matthias b8e288e613 Merge pull request #12282 from mrpabloyeah/update-documentation-for-trade-and-order-objects
Update documentation for Trade and Order objects
2025-10-12 15:36:58 +02:00
Matthias ca76ccb6af docs: improve some documentation wording 2025-10-12 15:22:36 +02:00
Matthias bb6e33c8c4 docs: remove methods that are not considered as public interface 2025-10-12 10:29:07 +02:00
Matthias f529b7b526 docs: Update trade-object documentation
partially reverts c1cd14 - includes a few enhancements to it
2025-10-12 10:25:56 +02:00
Matthias ea0c51c498 Merge pull request #12201 from mihalt/fix_merge_informative_pair
Fix the truncation of values by merge_ordered in merge_informative_pair
2025-10-12 10:15:47 +02:00
Matthias a9447e7edf Merge branch 'develop' into fix_merge_informative_pair 2025-10-12 09:51:43 +02:00
Matthias 93b87696c6 fix: handle case where informative does not overlap with the main data 2025-10-12 09:51:31 +02:00
Matthias 876875cff2 test: add test-case for no overlap merges 2025-10-12 09:51:15 +02:00
Matthias 2649ba0916 docs (freqAI): align docs with actual model name 2025-10-11 16:04:04 +02:00
Matthias 923f687a33 Merge pull request #12354 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-10-09 06:31:22 +02:00
Freqtrade Bot 613fdad671 chore: update pre-commit hooks 2025-10-09 03:15:03 +00:00
Matthias d8a89a3a42 chore: re-add type requirement 2025-10-08 07:08:48 +02:00
Matthias 34cba1480e test: improved line-annotation test-case 2025-10-08 07:07:39 +02:00
Matthias 9ea249180a test: add annotation line test 2025-10-08 06:42:53 +02:00
Matthias 4ba13a4254 fic: Improve type safety for annotationType 2025-10-08 06:42:38 +02:00
Matthias e6371f38fd chore: bump docker image to 3.13.8 2025-10-08 06:36:15 +02:00
Matthias e55a196e8f docs: update docs for line annotations
closes #12307
2025-10-07 19:29:52 +02:00
Matthias f9696d557c feat: Add line chart type 2025-10-07 19:29:52 +02:00
Matthias 0715f46a4a docs: fix broken doc example 2025-10-07 19:29:52 +02:00
Matthias a5450672b1 feat: add line annotations 2025-10-07 19:29:52 +02:00
Matthias 39bf71680c test: Update test case description wording 2025-10-07 07:12:58 +02:00
Matthias 372cfeee33 fix: timeout exit count should consider remaining amount
closes #12343
2025-10-07 06:50:54 +02:00
Matthias ca4e4efeb8 test: Add test scenario for partially filled exit
* followed by exit_timeout_count
* shouldn't place order for the full amount

part of #12343
2025-10-07 06:48:35 +02:00
Matthias 4c9e608a1a chore: bump version to 2025.9.1 2025-10-07 06:33:59 +02:00
Matthias 90665731c1 fix: bitvavo is now using tick-size for pricing and amount rounding 2025-10-07 06:33:35 +02:00
Matthias 7a9ea40d72 chore: bump ccxt to 4.5.7 2025-10-07 06:33:27 +02:00
Matthias 96c65dacdd Merge pull request #12345 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-10-07 06:27:24 +02:00
Freqtrade Bot c46080f0b2 chore: update pre-commit hooks 2025-10-07 03:13:29 +00:00
Matthias cfd7d0a38b test: add ccxt parse test for kraken
part of #12326
2025-10-06 19:13:20 +02:00
Matthias 0df1650f2d Merge pull request #12338 from freqtrade/dependabot/pip/develop/pydantic-2.11.10
chore(deps): bump pydantic from 2.11.9 to 2.11.10
2025-10-06 08:17:06 +02:00
Matthias 8bba3081ab Merge pull request #12330 from freqtrade/dependabot/pip/develop/mkdocs-d51531eb39
chore(deps): bump mkdocs-material from 9.6.20 to 9.6.21 in the mkdocs group
2025-10-06 07:06:38 +02:00
Matthias d5f23bb5a8 Merge pull request #12336 from freqtrade/dependabot/pip/develop/certifi-2025.10.5
chore(deps): bump certifi from 2025.8.3 to 2025.10.5
2025-10-06 06:57:46 +02:00
Matthias b81df43132 Merge pull request #12332 from freqtrade/dependabot/github_actions/develop/peter-evans/dockerhub-description-5.0.0
chore(deps): bump peter-evans/dockerhub-description from 4.0.2 to 5.0.0
2025-10-06 06:52:28 +02:00
Matthias c5f303f0c4 Merge pull request #12339 from freqtrade/dependabot/pip/develop/pandas-2.3.3
chore(deps): bump pandas from 2.3.2 to 2.3.3
2025-10-06 06:51:51 +02:00
Matthias 3a51db79c9 docs: update open-source spelling to open source
based on https://opensource.org/blog/is-open-source-ever-hyphenated
2025-10-06 06:38:18 +02:00
dependabot[bot] bda9606ae3 chore(deps): bump pydantic from 2.11.9 to 2.11.10
Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.11.9 to 2.11.10.
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/v2.11.10/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/v2.11.9...v2.11.10)

---
updated-dependencies:
- dependency-name: pydantic
  dependency-version: 2.11.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 04:34:03 +00:00
Matthias b59e208468 Merge pull request #12341 from freqtrade/dependabot/pip/develop/isort-6.1.0
chore(deps-dev): bump isort from 6.0.1 to 6.1.0
2025-10-06 06:30:41 +02:00
dependabot[bot] 6b6f0a1d87 chore(deps): bump pandas from 2.3.2 to 2.3.3
Bumps [pandas](https://github.com/pandas-dev/pandas) from 2.3.2 to 2.3.3.
- [Release notes](https://github.com/pandas-dev/pandas/releases)
- [Commits](https://github.com/pandas-dev/pandas/compare/v2.3.2...v2.3.3)

---
updated-dependencies:
- dependency-name: pandas
  dependency-version: 2.3.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 04:30:26 +00:00
Matthias 5676dd89af Merge pull request #12337 from freqtrade/dependabot/pip/develop/cryptography-46.0.2
chore(deps): bump cryptography from 46.0.1 to 46.0.2
2025-10-06 06:30:25 +02:00
Matthias 3ec26e169e Merge pull request #12340 from freqtrade/dependabot/pip/develop/ruff-0.13.3
chore(deps-dev): bump ruff from 0.13.2 to 0.13.3
2025-10-06 06:29:25 +02:00
Matthias 2115af3857 Merge pull request #12342 from freqtrade/dependabot/pip/develop/plotly-6.3.1
chore(deps): bump plotly from 6.3.0 to 6.3.1
2025-10-06 06:29:07 +02:00
Matthias ed3f619db6 Merge pull request #12335 from freqtrade/dependabot/pip/develop/numexpr-2.13.1
chore(deps): bump numexpr from 2.13.0 to 2.13.1
2025-10-06 06:28:52 +02:00
Matthias e58f42de21 Merge pull request #12334 from freqtrade/dependabot/pip/develop/fastapi-0.118.0
chore(deps): bump fastapi from 0.117.1 to 0.118.0
2025-10-06 06:28:35 +02:00
Matthias 0f26fe4bc9 Merge pull request #12333 from freqtrade/dependabot/github_actions/develop/docker/login-action-3.6.0
chore(deps): bump docker/login-action from 3.5.0 to 3.6.0
2025-10-06 06:27:53 +02:00
Matthias 69a715dff1 Merge pull request #12331 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-6.8.0
chore(deps): bump astral-sh/setup-uv from 6.7.0 to 6.8.0
2025-10-06 06:27:36 +02:00
dependabot[bot] dba758b5e4 chore(deps): bump plotly from 6.3.0 to 6.3.1
Bumps [plotly](https://github.com/plotly/plotly.py) from 6.3.0 to 6.3.1.
- [Release notes](https://github.com/plotly/plotly.py/releases)
- [Changelog](https://github.com/plotly/plotly.py/blob/main/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.py/compare/v6.3.0...v6.3.1)

---
updated-dependencies:
- dependency-name: plotly
  dependency-version: 6.3.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 03:03:03 +00:00
dependabot[bot] d6218892bf chore(deps-dev): bump isort from 6.0.1 to 6.1.0
Bumps [isort](https://github.com/PyCQA/isort) from 6.0.1 to 6.1.0.
- [Release notes](https://github.com/PyCQA/isort/releases)
- [Changelog](https://github.com/PyCQA/isort/blob/main/CHANGELOG.md)
- [Commits](https://github.com/PyCQA/isort/compare/6.0.1...6.1.0)

---
updated-dependencies:
- dependency-name: isort
  dependency-version: 6.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 03:02:55 +00:00
dependabot[bot] 4608279305 chore(deps-dev): bump ruff from 0.13.2 to 0.13.3
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.13.2 to 0.13.3.
- [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.13.2...0.13.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 03:02:49 +00:00
dependabot[bot] bbd7a19ef9 chore(deps): bump cryptography from 46.0.1 to 46.0.2
Bumps [cryptography](https://github.com/pyca/cryptography) from 46.0.1 to 46.0.2.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/46.0.1...46.0.2)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 46.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 03:02:24 +00:00
dependabot[bot] 9a95ad1435 chore(deps): bump certifi from 2025.8.3 to 2025.10.5
Bumps [certifi](https://github.com/certifi/python-certifi) from 2025.8.3 to 2025.10.5.
- [Commits](https://github.com/certifi/python-certifi/compare/2025.08.03...2025.10.05)

---
updated-dependencies:
- dependency-name: certifi
  dependency-version: 2025.10.5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 03:02:19 +00:00
dependabot[bot] 5bd42d5625 chore(deps): bump numexpr from 2.13.0 to 2.13.1
Bumps [numexpr](https://github.com/pydata/numexpr) from 2.13.0 to 2.13.1.
- [Release notes](https://github.com/pydata/numexpr/releases)
- [Changelog](https://github.com/pydata/numexpr/blob/master/RELEASE_NOTES.rst)
- [Commits](https://github.com/pydata/numexpr/compare/v2.13.0...v2.13.1)

---
updated-dependencies:
- dependency-name: numexpr
  dependency-version: 2.13.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 03:02:07 +00:00
dependabot[bot] 0c446d45df chore(deps): bump fastapi from 0.117.1 to 0.118.0
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.117.1 to 0.118.0.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.117.1...0.118.0)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.118.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 03:02:01 +00:00
dependabot[bot] 2bfc8d86a9 chore(deps): bump docker/login-action from 3.5.0 to 3.6.0
Bumps [docker/login-action](https://github.com/docker/login-action) from 3.5.0 to 3.6.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/184bdaa0721073962dff0199f1fb9940f07167d1...5e57cd118135c172c3672efd75eb46360885c0ef)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 3.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 03:01:53 +00:00
dependabot[bot] 98ab14f67e chore(deps): bump peter-evans/dockerhub-description from 4.0.2 to 5.0.0
Bumps [peter-evans/dockerhub-description](https://github.com/peter-evans/dockerhub-description) from 4.0.2 to 5.0.0.
- [Release notes](https://github.com/peter-evans/dockerhub-description/releases)
- [Commits](https://github.com/peter-evans/dockerhub-description/compare/432a30c9e07499fd01da9f8a49f0faf9e0ca5b77...1b9a80c056b620d92cedb9d9b5a223409c68ddfa)

---
updated-dependencies:
- dependency-name: peter-evans/dockerhub-description
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 03:01:48 +00:00
dependabot[bot] 845e96f12e chore(deps): bump astral-sh/setup-uv from 6.7.0 to 6.8.0
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 6.7.0 to 6.8.0.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/b75a909f75acd358c2196fb9a5f1299a9a8868a4...d0cc045d04ccac9d8b7881df0226f9e82c39688e)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 6.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 03:01:45 +00:00
dependabot[bot] 1ad75f5ec5 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.6.20 to 9.6.21
- [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.6.20...9.6.21)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 03:01:44 +00:00
Matthias 89b6e69340 Merge pull request #12311 from freqtrade/fix/allow-override
fix: Allow users to override the exchange check for FreqAI incase the…
2025-10-05 08:09:28 +02:00
Matthias 2d40807b66 chore: fix description typo 2025-10-05 07:56:42 +02:00
Matthias 8e44bc48b8 docs: update IOC documentation
related: #12322
2025-10-04 11:45:09 +02:00
Matthias 082fd0fd8b fix: "taker" may not always be filled for futures pairs
Gate fee removal:  https://github.com/ccxt/ccxt/pull/14271
2025-10-03 18:25:13 +02:00
Matthias 9e4af4f8ad Merge pull request #12321 from stash86/main-stash
fix typo
2025-10-03 18:02:05 +02:00
Stefano 0740f87a32 fix typo 2025-10-03 15:38:19 +09:00
Matthias 5542febef6 Merge pull request #12309 from freqtrade/feat/hyperliquid_cross
hyperliquid cross futures support
2025-10-02 18:06:47 +02:00
x-mass ea6d23bd2d fix: align _get_close_rate_for_roi with calc_profit_ratio logic in backtesting 2025-10-02 11:51:06 +00:00
Matthias 4eba2c6a24 fix: bitvavo is now using tick-size for pricing and amount rounding 2025-10-02 07:20:30 +02:00
Matthias e654c29c82 chore: bump ccxt to 4.5.7 2025-10-02 07:20:30 +02:00
Matthias 0bcd6e078b Merge pull request #12316 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-10-02 06:39:42 +02:00
Freqtrade Bot 4698c0a066 chore: update pre-commit hooks 2025-10-02 03:12:18 +00:00
Robert Caulk 70fa12f1b2 chore: log a warning that the user is in territory that might not work. 2025-10-01 16:36:55 +02:00
Robert Caulk 8d86cc1173 fix: Allow users to override the exchange check for FreqAI incase they know that they dont need historic data for their system 2025-10-01 16:34:10 +02:00
Matthias c7aaa77e44 test: test cross margin calc for hyperliquid 2025-09-30 20:39:40 +02:00
Matthias 1e8252ffcc test: simplify hyperliquid test 2025-09-30 20:33:13 +02:00
Matthias 361b34641c chore: simplify hyperliquid dry-run calc 2025-09-30 20:33:03 +02:00
Matthias 88c0c3503f docs: Add cross margin warning note 2025-09-30 19:50:50 +02:00
Matthias 102fc3e184 test: add basic online tests for coinex exchange 2025-09-30 19:23:02 +02:00
Matthias abd02979dd feat: add coinex subclass
closes #12306
2025-09-30 19:22:52 +02:00
Matthias f6c4227ca6 feat: Add documentation to hyperliquid liquidation calc 2025-09-30 07:05:32 +02:00
Matthias d6bc8f4a24 docs: enable hyperliquid cross 2025-09-30 06:47:09 +02:00
Matthias a9c3799547 feat: enable hyperliquid cross futures 2025-09-30 06:34:05 +02:00
Matthias 3ea4603d1c Merge pull request #12305 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-09-30 06:26:21 +02:00
Freqtrade Bot 84dfb035b1 chore: update pre-commit hooks 2025-09-30 03:14:01 +00:00
Matthias aacd8f49f4 chore: bump develop version to 2025.10-dev 2025-09-29 19:36:39 +02:00
Matthias c66e221012 Merge pull request #12304 from freqtrade/new_release
New release 2025.9
2025-09-29 19:33:25 +02:00
Matthias f38d2466df chore: bump version to 2025.9 2025-09-29 18:18:46 +02:00
Matthias 1cc92c645a Merge branch 'stable' into new_release 2025-09-29 18:18:35 +02:00
Matthias ab764df411 chore(deps): bump ft-pandas-ta from 0.3.15 to 0.3.16 2025-09-29 18:16:35 +02:00
Matthias 5363ee7198 chore(deps): bump ft-pandas-ta from 0.3.15 to 0.3.16 2025-09-29 18:16:03 +02:00
Matthias 4b78ba42b1 Merge pull request #12302 from freqtrade/dependabot/pip/develop/ccxt-4.5.6
chore(deps): bump ccxt from 4.5.5 to 4.5.6
2025-09-29 06:32:55 +02:00
dependabot[bot] 567f118ce1 chore(deps): bump ccxt from 4.5.5 to 4.5.6
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.5 to 4.5.6.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/exchanges.cfg)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.5...v4.5.6)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-29 04:32:53 +00:00
Matthias 230e892482 Merge pull request #12298 from freqtrade/dependabot/pip/develop/uvicorn-0.37.0
chore(deps): bump uvicorn from 0.36.0 to 0.37.0
2025-09-29 06:32:02 +02:00
Matthias 9e616e81ad Merge pull request #12303 from freqtrade/dependabot/pip/develop/python-telegram-bot-22.5
chore(deps): bump python-telegram-bot from 22.4 to 22.5
2025-09-29 06:31:39 +02:00
Matthias d1e055c015 Merge pull request #12301 from freqtrade/dependabot/pip/develop/ruff-0.13.2
chore(deps-dev): bump ruff from 0.13.1 to 0.13.2
2025-09-29 06:30:26 +02:00
Matthias 3bcd6694b7 Merge pull request #12300 from freqtrade/dependabot/pip/develop/numexpr-2.13.0
chore(deps): bump numexpr from 2.12.1 to 2.13.0
2025-09-29 06:30:18 +02:00
dependabot[bot] 86d8fc5ee3 chore(deps): bump python-telegram-bot from 22.4 to 22.5
Bumps [python-telegram-bot](https://github.com/python-telegram-bot/python-telegram-bot) from 22.4 to 22.5.
- [Release notes](https://github.com/python-telegram-bot/python-telegram-bot/releases)
- [Commits](https://github.com/python-telegram-bot/python-telegram-bot/compare/v22.4...v22.5)

---
updated-dependencies:
- dependency-name: python-telegram-bot
  dependency-version: '22.5'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-29 03:17:24 +00:00
dependabot[bot] 78f291264e chore(deps-dev): bump ruff from 0.13.1 to 0.13.2
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.13.1 to 0.13.2.
- [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.13.1...0.13.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-29 03:13:53 +00:00
dependabot[bot] fdc3c7ba09 chore(deps): bump numexpr from 2.12.1 to 2.13.0
Bumps [numexpr](https://github.com/pydata/numexpr) from 2.12.1 to 2.13.0.
- [Release notes](https://github.com/pydata/numexpr/releases)
- [Changelog](https://github.com/pydata/numexpr/blob/master/RELEASE_NOTES.rst)
- [Commits](https://github.com/pydata/numexpr/compare/v2.12.1...v2.13.0)

---
updated-dependencies:
- dependency-name: numexpr
  dependency-version: 2.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-29 03:12:41 +00:00
dependabot[bot] f8621e850f chore(deps): bump uvicorn from 0.36.0 to 0.37.0
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.36.0 to 0.37.0.
- [Release notes](https://github.com/Kludex/uvicorn/releases)
- [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/uvicorn/compare/0.36.0...0.37.0)

---
updated-dependencies:
- dependency-name: uvicorn
  dependency-version: 0.37.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-29 03:11:27 +00:00
Matthias 87c5f89b6c fix: ensure exportFilename is a path object 2025-09-28 11:36:46 +02:00
Matthias 780c794ef0 Merge pull request #12292 from freqtrade/maint/combine_ci
Combine CI definition
2025-09-27 18:23:39 +02:00
Matthias 8b4070dbcf chore(ci): parallel tests 2025-09-27 18:04:43 +02:00
Matthias 4e089fd17e chore(ci): split check between windows and linux 2025-09-27 17:23:16 +02:00
Matthias f454006ec3 chore(ci): combine windows ci into generic test runner 2025-09-27 16:51:10 +02:00
Matthias f5002929ee chore(ci): name some jobs properly 2025-09-27 16:03:00 +02:00
Matthias 4e1d75a3e1 chore(ci): improved job naming 2025-09-27 16:01:04 +02:00
Matthias d4462ba5d8 chore(ci): remove useless alias 2025-09-27 15:55:23 +02:00
Matthias 6dc71269a2 chore(ci): simplify actions by combining linux and macOS runs 2025-09-27 15:54:27 +02:00
Matthias 730ccba535 chore: fix return type 2025-09-27 15:28:14 +02:00
Matthias 1175721579 docs: use exchange features include 2025-09-27 13:11:04 +02:00
Matthias e5157d5471 docs: enhance exchange-features table 2025-09-27 13:10:18 +02:00
Matthias 7fcb23e0c7 docs: add exchange overview 2025-09-27 13:02:04 +02:00
Matthias f075d90d99 chore: slight refactor in ft_has initialization 2025-09-27 12:14:34 +02:00
Matthias bf94748058 docs: update showcase, update outdated link 2025-09-27 08:58:36 +02:00
Matthias 2890d13d92 feat: Improve styling of list-exchanges table 2025-09-27 08:54:25 +02:00
Matthias 9232778732 docs: add support policy to FAQ 2025-09-27 08:48:56 +02:00
Matthias 70a25f9837 Merge pull request #12259 from stash86/delist
Implement delisting check on futures market
2025-09-26 07:14:01 +02:00
Matthias 4434df1999 docs: improve doc wording 2025-09-26 06:59:22 +02:00
Matthias b9e9f6f040 refactor: indicate private methods by convention 2025-09-26 06:47:36 +02:00
Matthias f92caf0f1f chore: add response sample to private endpoint 2025-09-26 06:44:10 +02:00
Matthias 55b90917e4 docs: Improve documentation clarity 2025-09-26 06:38:02 +02:00
Matthias d0546e998a chore: further restructuring to contributing guide 2025-09-25 19:21:13 +02:00
Matthias e9f414b29c chore: improve contributing wording 2025-09-25 19:17:48 +02:00
Matthias 7638261e8f chore: update contributing documentation 2025-09-25 19:10:41 +02:00
Matthias a049d6eab1 feat: add magin_mode to show_config response 2025-09-25 07:20:27 +02:00
Matthias 61f46b959e Merge pull request #12286 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-09-25 06:42:43 +02:00
Stefano ccb1e4af02 Merge branch 'freqtrade:develop' into delist 2025-09-25 12:27:21 +09:00
Freqtrade Bot 06424cae28 chore: update pre-commit hooks 2025-09-25 03:15:49 +00:00
Matthias 9aeb2eaabd feat: add z-level to annotations 2025-09-24 18:13:42 +02:00
Matthias c6061daec4 test: rename tests to match scheme 2025-09-23 20:17:36 +02:00
Matthias 5be0352705 test: add binance spot-delist test 2025-09-23 20:17:30 +02:00
Matthias 06995f26fd chore: improve reliability of binance spot delisting 2025-09-23 20:16:49 +02:00
Matthias 7b45844670 test: ensure non-unified ccxt method ain't going away. 2025-09-23 19:57:43 +02:00
Matthias 0a0c2adf7d chore: capture missing exception 2025-09-23 19:55:18 +02:00
Matthias 7aab3b34d6 test: add more tests for delist exchange code 2025-09-23 19:55:11 +02:00
Matthias c4aa221c9b Merge pull request #12276 from freqtrade/dependabot/pip/develop/mypy-1.18.2
chore(deps-dev): bump mypy from 1.18.1 to 1.18.2
2025-09-23 06:36:42 +02:00
dependabot[bot] da12071d8f chore(deps-dev): bump mypy from 1.18.1 to 1.18.2
Bumps [mypy](https://github.com/python/mypy) from 1.18.1 to 1.18.2.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.18.1...v1.18.2)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 1.18.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-23 06:16:26 +02:00
Matthias 581a9bb1c9 Merge pull request #12274 from freqtrade/dependabot/pip/develop/cryptography-46.0.1
chore(deps): bump cryptography from 45.0.7 to 46.0.1
2025-09-23 06:15:46 +02:00
Matthias f5258510cc Merge pull request #12283 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-09-23 06:14:51 +02:00
Freqtrade Bot 99401f9d69 chore: update pre-commit hooks 2025-09-23 03:13:37 +00:00
mrpabloyeah c1cd14cad2 Remove internal or useless attributes and unnecessary text 2025-09-23 01:01:36 +02:00
dependabot[bot] 729bea2d8e chore(deps): bump cryptography from 45.0.7 to 46.0.1
Bumps [cryptography](https://github.com/pyca/cryptography) from 45.0.7 to 46.0.1.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/45.0.7...46.0.1)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 46.0.1
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-22 20:21:39 +02:00
Matthias 8b72e4f23e chore: fix line-lengths 2025-09-22 20:16:46 +02:00
Matthias 17202c6d29 test: add test for DelistFilter 2025-09-22 19:59:12 +02:00
Matthias 567d4331fd test: initial delistFilter tests 2025-09-22 19:44:03 +02:00
mrpabloyeah 565b343dee Update documentation for Trade and Order objects 2025-09-22 19:38:49 +02:00
Matthias 92c9f443e8 test: add test for dp.check_delisting 2025-09-22 19:30:19 +02:00
Matthias dd2d7bb863 docs: slightly restructure documentation 2025-09-22 19:22:22 +02:00
Stefano 9c0d612729 add example, make sure to raise error on unsupported exchanges and/or trading mode 2025-09-22 15:55:36 +09:00
Stefano 07d5636d1e Merge branch 'freqtrade:develop' into delist 2025-09-22 13:38:03 +09:00
Matthias 977cabb580 Merge pull request #12272 from freqtrade/dependabot/pip/develop/fastapi-0.117.1
chore(deps): bump fastapi from 0.116.1 to 0.117.1
2025-09-22 06:30:46 +02:00
Matthias 15a7e1d9d1 Merge pull request #12278 from freqtrade/dependabot/pip/develop/psutil-7.1.0
chore(deps): bump psutil from 7.0.0 to 7.1.0
2025-09-22 06:29:54 +02:00
Matthias 953ffcf204 Merge pull request #12277 from freqtrade/dependabot/pip/develop/uvicorn-0.36.0
chore(deps): bump uvicorn from 0.35.0 to 0.36.0
2025-09-22 06:29:31 +02:00
Matthias b24e6e72c7 Merge pull request #12273 from freqtrade/dependabot/pip/develop/ccxt-4.5.5
chore(deps): bump ccxt from 4.5.4 to 4.5.5
2025-09-22 06:28:45 +02:00
Matthias 82b05f6b5a Merge pull request #12271 from freqtrade/dependabot/pip/develop/mkdocs-aa22fc2ea5
chore(deps): bump mkdocs-material from 9.6.19 to 9.6.20 in the mkdocs group
2025-09-22 06:28:33 +02:00
Matthias a662802011 Merge pull request #12275 from freqtrade/dependabot/pip/develop/ruff-0.13.1
chore(deps-dev): bump ruff from 0.13.0 to 0.13.1
2025-09-22 06:28:14 +02:00
Matthias 5483ade786 Merge pull request #12270 from freqtrade/dependabot/pip/develop/pytest-8796ca11bd
chore(deps-dev): bump pytest-mock from 3.15.0 to 3.15.1 in the pytest group
2025-09-22 06:27:53 +02:00
dependabot[bot] ae02a7007b chore(deps): bump psutil from 7.0.0 to 7.1.0
Bumps [psutil](https://github.com/giampaolo/psutil) from 7.0.0 to 7.1.0.
- [Changelog](https://github.com/giampaolo/psutil/blob/master/HISTORY.rst)
- [Commits](https://github.com/giampaolo/psutil/compare/release-7.0.0...release-7.1.0)

---
updated-dependencies:
- dependency-name: psutil
  dependency-version: 7.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-22 03:02:47 +00:00
dependabot[bot] 3c6e058b00 chore(deps): bump uvicorn from 0.35.0 to 0.36.0
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.35.0 to 0.36.0.
- [Release notes](https://github.com/Kludex/uvicorn/releases)
- [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/uvicorn/compare/0.35.0...0.36.0)

---
updated-dependencies:
- dependency-name: uvicorn
  dependency-version: 0.36.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-22 03:02:44 +00:00
dependabot[bot] ad3ddcaadb chore(deps-dev): bump ruff from 0.13.0 to 0.13.1
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.13.0 to 0.13.1.
- [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.13.0...0.13.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-22 03:02:23 +00:00
dependabot[bot] be56052417 chore(deps): bump ccxt from 4.5.4 to 4.5.5
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.4 to 4.5.5.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/exchanges.cfg)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.4...v4.5.5)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-22 03:02:06 +00:00
dependabot[bot] 9a888d9896 chore(deps): bump fastapi from 0.116.1 to 0.117.1
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.116.1 to 0.117.1.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.116.1...0.117.1)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.117.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-22 03:01:51 +00:00
dependabot[bot] 24a7e585e4 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.6.19 to 9.6.20
- [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.6.19...9.6.20)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-22 03:01:42 +00:00
dependabot[bot] 2120f1ed5b chore(deps-dev): bump pytest-mock in the pytest group
Bumps the pytest group with 1 update: [pytest-mock](https://github.com/pytest-dev/pytest-mock).


Updates `pytest-mock` from 3.15.0 to 3.15.1
- [Release notes](https://github.com/pytest-dev/pytest-mock/releases)
- [Changelog](https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest-mock/compare/v3.15.0...v3.15.1)

---
updated-dependencies:
- dependency-name: pytest-mock
  dependency-version: 3.15.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: pytest
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-22 03:01:33 +00:00
Matthias 3a2bb22cb3 Merge pull request #12268 from freqtrade/maint/cache
changes to CI caching
2025-09-21 17:40:32 +02:00
Matthias a7c4ec6eaf chore: try without brew python fixes
Should work now since we're using UV...
2025-09-21 16:51:13 +02:00
Matthias f7b934b306 chore(ci): try to not prune uv cache 2025-09-21 16:21:32 +02:00
Matthias d34e7a1e8e chore: don't retry bootstrap indefinitely
better behavior is to stop after a couple  of attempts
2025-09-21 15:02:34 +02:00
Matthias 4804ec986a chore: cleanup unused (and now unsupported) comments 2025-09-21 15:02:24 +02:00
Matthias 16117e5b6c chore: remove obsolete todo 2025-09-20 20:23:43 +02:00
Matthias 985805e0d5 test: add test for order_book_to_dataframe 2025-09-20 20:23:23 +02:00
Matthias 78acaf8f4c Merge pull request #12214 from mrpabloyeah/fix-shufflefilter-behavior-in-backtesting
Fix ShuffleFilter behavior in backtesting
2025-09-19 20:36:37 +02:00
Matthias a1dad065b2 docs: enhance doc wording around pairlists 2025-09-19 20:32:01 +02:00
Matthias 3b03d4346c docs: enhance freqUI documentation page structure 2025-09-19 20:31:03 +02:00
Matthias c6551819cd chore: re-word help string 2025-09-19 20:23:36 +02:00
Matthias e58635a881 test: minor adjustments to new tests 2025-09-19 20:23:07 +02:00
Matthias 8e3331d0db chore: rename variable for clarity 2025-09-19 20:16:44 +02:00
Matthias 8391a0612d chore: use ccxt's "set_markets_from_exchange" instead of manual logic 2025-09-18 07:11:55 +02:00
Matthias 68c00d1c4d chore: bump ccxt min-version requirement
this will allow us to use new features
e.g. `.set_markets_from_exchange()`
2025-09-18 07:11:55 +02:00
Matthias f48f24ce2e Merge pull request #12263 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-09-18 06:29:06 +02:00
Freqtrade Bot 9d5a88416a chore: update pre-commit hooks 2025-09-18 03:12:21 +00:00
Stefano a314786056 Merge branch 'delist' of https://github.com/stash86/freqtrade into delist 2025-09-17 13:38:14 +09:00
Stefano aee9b2c749 remove lock 2025-09-17 13:38:09 +09:00
Stefano 3fffee3b05 Merge branch 'freqtrade:develop' into delist 2025-09-17 11:55:26 +09:00
Stefano 72abae7b94 disable delisting check on non-trading mode 2025-09-17 11:38:28 +09:00
Stefano a300df7ff3 fix precommit 2025-09-17 09:22:21 +09:00
Stefano 8e500d4601 add DelistFilter 2025-09-17 09:16:05 +09:00
Matthias f6e1442fdf Merge pull request #12257 from stash86/main-stash
Update API docs
2025-09-16 21:26:44 +02:00
Stefano d8d8260d76 remove logger 2025-09-16 16:11:23 +09:00
Stefano 72dd0d062b add spot check for binance 2025-09-16 15:52:19 +09:00
Stefano 03c67d6a3b switch to use dataprovider to give flexibility to users 2025-09-16 14:59:44 +09:00
Matthias 314cd10e27 Merge pull request #12260 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-09-16 06:28:36 +02:00
Freqtrade Bot 6e6a929fac chore: update pre-commit hooks 2025-09-16 03:12:05 +00:00
Stefano d069f5477e add delisted pair to blacklist 2025-09-16 11:06:34 +09:00
Stefano a4a5fbe4a8 add column name for bybit and okx 2025-09-16 10:53:00 +09:00
Stefano 01e288297a fix precommit 2025-09-16 09:33:48 +09:00
Stefano 7564b1e6df remove extra log, fix delivery time check for binance 2025-09-16 09:23:20 +09:00
Stefano cf010c3f17 initial concept 2025-09-16 08:54:47 +09:00
Stefano 5ff95db9e1 move the example of blacklist to Programmatic Use card 2025-09-16 08:17:35 +09:00
Matthias ada72d2264 Merge pull request #12247 from freqtrade/dependabot/pip/develop/ruff-0.13.0
chore(deps-dev): bump ruff from 0.12.12 to 0.13.0
2025-09-15 20:21:40 +02:00
Matthias 9f436dcd1e chore: fix RUF043 violations 2025-09-15 19:20:20 +02:00
Matthias 95a710d4a8 chore: fix RUF059 violations 2025-09-15 19:15:43 +02:00
Matthias bf5d300a54 Merge pull request #12248 from freqtrade/dependabot/pip/develop/pydantic-2.11.9
chore(deps): bump pydantic from 2.11.7 to 2.11.9
2025-09-15 11:45:52 +02:00
Matthias f7a1325339 Merge pull request #12246 from freqtrade/dependabot/pip/develop/scipy-26573e6263
chore(deps): bump the scipy group with 2 updates
2025-09-15 11:29:03 +02:00
Stefano e13152715c Merge branch 'freqtrade:develop' into main-stash 2025-09-15 17:32:04 +09:00
Stefano 19a35ed111 add examples on API docs. Fix some params name 2025-09-15 17:29:33 +09:00
Matthias e62ba8ed1e chore: update scipy-stubs in pre-commit 2025-09-15 08:52:49 +02:00
Matthias f62ded94bb Merge pull request #12251 from freqtrade/dependabot/pip/develop/numpy-2.3.3
chore(deps): bump numpy from 2.3.2 to 2.3.3
2025-09-15 08:27:25 +02:00
dependabot[bot] 74f459d7ed chore(deps): bump numpy from 2.3.2 to 2.3.3
Bumps [numpy](https://github.com/numpy/numpy) from 2.3.2 to 2.3.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.3.2...v2.3.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 05:59:20 +00:00
dependabot[bot] 815a351435 chore(deps): bump the scipy group with 2 updates
Bumps the scipy group with 2 updates: [scipy](https://github.com/scipy/scipy) and [scipy-stubs](https://github.com/scipy/scipy-stubs).


Updates `scipy` from 1.16.1 to 1.16.2
- [Release notes](https://github.com/scipy/scipy/releases)
- [Commits](https://github.com/scipy/scipy/compare/v1.16.1...v1.16.2)

Updates `scipy-stubs` from 1.16.1.1 to 1.16.2.0
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.16.1.1...v1.16.2.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 05:59:02 +00:00
Matthias 9857f30703 Merge pull request #12252 from freqtrade/dependabot/pip/develop/numexpr-2.12.1
chore(deps): bump numexpr from 2.11.0 to 2.12.1
2025-09-15 07:58:08 +02:00
Matthias a7de2cf682 Merge pull request #12242 from freqtrade/dependabot/pip/develop/types-91b7a93ceb
chore(deps-dev): bump types-requests from 2.32.4.20250809 to 2.32.4.20250913 in the types group
2025-09-15 07:57:40 +02:00
dependabot[bot] 5e2f4924d6 chore(deps-dev): bump ruff from 0.12.12 to 0.13.0
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.12.12 to 0.13.0.
- [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.12.12...0.13.0)

---
updated-dependencies:
- dependency-name: ruff
  dependency-version: 0.13.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 05:48:27 +00:00
Matthias b74a334f25 Merge pull request #12250 from freqtrade/dependabot/pip/develop/mypy-1.18.1
chore(deps-dev): bump mypy from 1.17.1 to 1.18.1
2025-09-15 07:43:37 +02:00
Matthias 58c9a61cf0 Merge pull request #12253 from freqtrade/dependabot/pip/develop/scikit-learn-1.7.2
chore(deps): bump scikit-learn from 1.7.1 to 1.7.2
2025-09-15 07:18:23 +02:00
Matthias d5620cf8b5 chore: bump types-requests in pre-commit config 2025-09-15 07:12:06 +02:00
Matthias 2e50c100f9 Merge pull request #12254 from freqtrade/dependabot/pip/develop/python-telegram-bot-22.4
chore(deps): bump python-telegram-bot from 22.3 to 22.4
2025-09-15 07:00:27 +02:00
dependabot[bot] 776d9ac5e0 chore(deps): bump numexpr from 2.11.0 to 2.12.1
Bumps [numexpr](https://github.com/pydata/numexpr) from 2.11.0 to 2.12.1.
- [Release notes](https://github.com/pydata/numexpr/releases)
- [Changelog](https://github.com/pydata/numexpr/blob/master/RELEASE_NOTES.rst)
- [Commits](https://github.com/pydata/numexpr/compare/v2.11.0...v2.12.1)

---
updated-dependencies:
- dependency-name: numexpr
  dependency-version: 2.12.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 05:00:16 +00:00
Matthias 301e348789 Merge pull request #12243 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-6.7.0
chore(deps): bump astral-sh/setup-uv from 6.6.1 to 6.7.0
2025-09-15 06:59:54 +02:00
Matthias 6467d85059 Merge pull request #12244 from freqtrade/dependabot/github_actions/develop/zizmorcore/zizmor-action-0.2.0
chore(deps): bump zizmorcore/zizmor-action from 0.1.2 to 0.2.0
2025-09-15 06:59:15 +02:00
dependabot[bot] 4b4d090d39 chore(deps-dev): bump mypy from 1.17.1 to 1.18.1
Bumps [mypy](https://github.com/python/mypy) from 1.17.1 to 1.18.1.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.17.1...v1.18.1)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 1.18.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 04:56:25 +00:00
Matthias 2ddafa28f2 Merge pull request #12249 from freqtrade/dependabot/pip/develop/bottleneck-1.6.0
chore(deps): bump bottleneck from 1.5.0 to 1.6.0
2025-09-15 06:56:10 +02:00
Matthias d6bb47816c Merge pull request #12256 from freqtrade/dependabot/pip/develop/ccxt-4.5.4
chore(deps): bump ccxt from 4.5.3 to 4.5.4
2025-09-15 06:55:30 +02:00
Matthias f40d90cf08 Merge pull request #12245 from freqtrade/dependabot/pip/develop/pytest-b85b31bc10
chore(deps-dev): bump the pytest group with 2 updates
2025-09-15 06:54:51 +02:00
dependabot[bot] ab7c1ec24f chore(deps): bump ccxt from 4.5.3 to 4.5.4
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.3 to 4.5.4.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/exchanges.cfg)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.3...v4.5.4)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 03:54:21 +00:00
dependabot[bot] be5969a1e1 chore(deps): bump python-telegram-bot from 22.3 to 22.4
Bumps [python-telegram-bot](https://github.com/python-telegram-bot/python-telegram-bot) from 22.3 to 22.4.
- [Release notes](https://github.com/python-telegram-bot/python-telegram-bot/releases)
- [Commits](https://github.com/python-telegram-bot/python-telegram-bot/compare/v22.3...v22.4)

---
updated-dependencies:
- dependency-name: python-telegram-bot
  dependency-version: '22.4'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 03:03:48 +00:00
dependabot[bot] 992d173adc chore(deps): bump scikit-learn from 1.7.1 to 1.7.2
Bumps [scikit-learn](https://github.com/scikit-learn/scikit-learn) from 1.7.1 to 1.7.2.
- [Release notes](https://github.com/scikit-learn/scikit-learn/releases)
- [Commits](https://github.com/scikit-learn/scikit-learn/compare/1.7.1...1.7.2)

---
updated-dependencies:
- dependency-name: scikit-learn
  dependency-version: 1.7.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 03:03:41 +00:00
dependabot[bot] 5396519b20 chore(deps): bump bottleneck from 1.5.0 to 1.6.0
Bumps [bottleneck](https://github.com/pydata/bottleneck) from 1.5.0 to 1.6.0.
- [Release notes](https://github.com/pydata/bottleneck/releases)
- [Changelog](https://github.com/pydata/bottleneck/blob/master/RELEASE.rst)
- [Commits](https://github.com/pydata/bottleneck/compare/v1.5.0...v1.6.0)

---
updated-dependencies:
- dependency-name: bottleneck
  dependency-version: 1.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 03:02:30 +00:00
dependabot[bot] d8122f5d33 chore(deps): bump pydantic from 2.11.7 to 2.11.9
Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.11.7 to 2.11.9.
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/v2.11.9/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.9)

---
updated-dependencies:
- dependency-name: pydantic
  dependency-version: 2.11.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 03:02:26 +00:00
dependabot[bot] 92f8b2dd02 chore(deps-dev): bump the pytest group with 2 updates
Bumps the pytest group with 2 updates: [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) and [pytest-cov](https://github.com/pytest-dev/pytest-cov).


Updates `pytest-asyncio` from 1.1.0 to 1.2.0
- [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases)
- [Commits](https://github.com/pytest-dev/pytest-asyncio/compare/v1.1.0...v1.2.0)

Updates `pytest-cov` from 6.3.0 to 7.0.0
- [Changelog](https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest-cov/compare/v6.3.0...v7.0.0)

---
updated-dependencies:
- dependency-name: pytest-asyncio
  dependency-version: 1.2.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: pytest
- dependency-name: pytest-cov
  dependency-version: 7.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: pytest
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 03:01:47 +00:00
dependabot[bot] 29e35cf824 chore(deps): bump zizmorcore/zizmor-action from 0.1.2 to 0.2.0
Bumps [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) from 0.1.2 to 0.2.0.
- [Release notes](https://github.com/zizmorcore/zizmor-action/releases)
- [Commits](https://github.com/zizmorcore/zizmor-action/compare/5ca5fc7a4779c5263a3ffa0e1f693009994446d1...e673c3917a1aef3c65c972347ed84ccd013ecda4)

---
updated-dependencies:
- dependency-name: zizmorcore/zizmor-action
  dependency-version: 0.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 03:01:45 +00:00
dependabot[bot] 26ff88c71a chore(deps): bump astral-sh/setup-uv from 6.6.1 to 6.7.0
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 6.6.1 to 6.7.0.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/557e51de59eb14aaaba2ed9621916900a91d50c6...b75a909f75acd358c2196fb9a5f1299a9a8868a4)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 6.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 03:01:42 +00:00
dependabot[bot] 7b3951f1e5 chore(deps-dev): bump types-requests in the types group
Bumps the types group with 1 update: [types-requests](https://github.com/typeshed-internal/stub_uploader).


Updates `types-requests` from 2.32.4.20250809 to 2.32.4.20250913
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: types-requests
  dependency-version: 2.32.4.20250913
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 03:01:24 +00:00
mrpabloyeah 5dbfc92c5a Add --enable-dynamic-pairlist option in backtesting 2025-09-14 13:58:53 +02:00
Matthias 0ca846b2c5 test: update test comment 2025-09-14 10:34:11 +02:00
Matthias 747eac0417 chore: update code to use at
which has better performance than chaining iloc and column selection
2025-09-14 10:33:43 +02:00
Matthias 88cc24c5b9 chore: fix odd code comment 2025-09-14 10:33:28 +02:00
Matthias 0111e97856 test: update test 2025-09-14 10:33:09 +02:00
Matthias a14281722a chore: remove no longer necessary TODO comments 2025-09-14 10:12:59 +02:00
Matthias a80f3ae919 fix: re-add candle_type_def to configuration
Temporary fix for now ...
closes #12239
2025-09-13 13:59:25 +02:00
mrpabloyeah 5f558137d3 Add cache for expanded_blacklist() in PairListManager in backtest mode 2025-09-12 13:01:50 +02:00
Matthias ecd66f8a64 fix: backtesting through UI not working consecutive times
closes #12239
2025-09-11 20:14:12 +02:00
Matthias 8d965d4833 docs: Add link to storing custom data from order_filled
part of #12238
2025-09-11 19:29:23 +02:00
Matthias 25a3de653c Merge pull request #12237 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-09-11 06:31:23 +02:00
Freqtrade Bot ac519a273b chore: update pre-commit hooks 2025-09-11 03:14:58 +00:00
Matthias 68429f9c37 fix: improve wording for config overriding strategy values
closes #12212
2025-09-10 20:17:53 +02:00
Matthias 5cb41badc1 chore: don't log timeframe from cli twice
part of #12212
2025-09-10 20:16:21 +02:00
Matthias 54bebeabb7 Merge pull request #12229 from freqtrade/lookahead_analysis_12168
Lookahead analysis - fix false positives
2025-09-10 19:46:29 +02:00
Matthias 3a17c2b55c Merge pull request #12232 from stash86/main-stash
correctly handle pairlist that use wildcard
2025-09-10 06:51:22 +02:00
Stefano 7b7b8b8f8b correctly handle pairlist that use wildcard 2025-09-10 09:09:24 +09:00
mrpabloyeah 55201b6224 Fix: Hyperopt breaks when self.dynamic_pairlist is set to True 2025-09-09 20:17:14 +02:00
Matthias 49b9296cd9 test: Add futures to test matrix 2025-09-09 19:43:00 +02:00
Matthias 09fabd911e test: simplify and improve fetch_ohlcv test
Also adress okx mark oddity - which didn't show up before due to odd
test setup (using "" instead of "spot").
2025-09-09 19:42:17 +02:00
mrpabloyeah 43be752847 Do not verify the backlist if it is empty 2025-09-09 19:24:32 +02:00
Matthias 6cfd31c705 fix: "price" shouldn't be sent for regular futures candles 2025-09-09 19:18:28 +02:00
mrpabloyeah 3bce9278bd Add cache for gen_pairlist() in StaticPairList in backtest mode 2025-09-09 14:37:08 +02:00
Matthias 068caf159d test: update test for new okx candle limits 2025-09-09 07:12:03 +02:00
Matthias eb8875b64b feat: adjust okx ohlcv candle limits 2025-09-09 07:11:42 +02:00
Matthias 97578c0831 Merge pull request #12231 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-09-09 06:31:08 +02:00
Freqtrade Bot 7219f71bc1 chore: update pre-commit hooks 2025-09-09 03:15:50 +00:00
mrpabloyeah eea9133b3f test_time_pair_generator_open_trades_first() 2025-09-09 03:03:07 +02:00
mrpabloyeah a8f543ce62 Add test_time_pair_generator_refresh_pairlist() 2025-09-09 03:01:46 +02:00
Matthias b35172a3b8 chore: export lookahead command partial 2025-09-08 20:43:58 +02:00
Matthias 7b8f0583a4 test: add test for order_type force behavior 2025-09-08 20:02:09 +02:00
Matthias 7ae89711dd docs: update docs for lookahead analysis override 2025-09-08 19:52:38 +02:00
Matthias a2c3729254 feat: Override order types for lookahead analysis
this avoids false positives - but could cause false-negatives
if the problem is in a pricing callback.
`--allow-limit-orders` can re-allow limit orders to test for this scenario.

part of #12168
2025-09-08 19:52:15 +02:00
Matthias 14c9f783d5 refactor: Improve clarity of method name 2025-09-08 19:40:20 +02:00
Matthias 6c9c709c65 chore: use fstring in strategy helper 2025-09-08 19:37:46 +02:00
Matthias 1c2ffc6aaa chore: improve log message 2025-09-08 19:32:20 +02:00
Matthias a6d2bc5238 chore: fix docker armhf build 2025-09-08 19:12:27 +02:00
mrpabloyeah 737d2804d2 Fix spelling mistake 2025-09-08 17:47:33 +02:00
Matthias 3e14c2664e Merge pull request #12218 from freqtrade/dependabot/pip/develop/pytest-85bdb35c79
chore(deps-dev): bump the pytest group with 3 updates
2025-09-08 07:40:23 +02:00
Matthias 78bd8554aa Merge pull request #12221 from freqtrade/dependabot/pip/develop/ta-lib-0.6.7
chore(deps): bump ta-lib from 0.6.6 to 0.6.7
2025-09-08 07:39:43 +02:00
Matthias f1d5679fba Merge pull request #12223 from freqtrade/dependabot/pip/develop/cryptography-45.0.7
chore(deps): bump cryptography from 45.0.6 to 45.0.7
2025-09-08 07:30:47 +02:00
dependabot[bot] a9e82b7fc2 chore(deps-dev): bump the pytest group with 3 updates
Bumps the pytest group with 3 updates: [pytest](https://github.com/pytest-dev/pytest), [pytest-cov](https://github.com/pytest-dev/pytest-cov) and [pytest-mock](https://github.com/pytest-dev/pytest-mock).


Updates `pytest` from 8.4.1 to 8.4.2
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/8.4.1...8.4.2)

Updates `pytest-cov` from 6.2.1 to 6.3.0
- [Changelog](https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest-cov/compare/v6.2.1...v6.3.0)

Updates `pytest-mock` from 3.14.1 to 3.15.0
- [Release notes](https://github.com/pytest-dev/pytest-mock/releases)
- [Changelog](https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest-mock/compare/v3.14.1...v3.15.0)

---
updated-dependencies:
- dependency-name: pytest
  dependency-version: 8.4.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: pytest
- dependency-name: pytest-cov
  dependency-version: 6.3.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: pytest
- dependency-name: pytest-mock
  dependency-version: 3.15.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: pytest
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 05:09:00 +00:00
dependabot[bot] 21f77f9c5d chore(deps): bump cryptography from 45.0.6 to 45.0.7
Bumps [cryptography](https://github.com/pyca/cryptography) from 45.0.6 to 45.0.7.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/45.0.6...45.0.7)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 45.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 05:05:45 +00:00
Matthias c4c0198d20 chore: Update ta-lib armhf wheel 2025-09-08 07:04:19 +02:00
dependabot[bot] d72d13ed58 chore(deps): bump ta-lib from 0.6.6 to 0.6.7
Bumps [ta-lib](https://github.com/ta-lib/ta-lib-python) from 0.6.6 to 0.6.7.
- [Release notes](https://github.com/ta-lib/ta-lib-python/releases)
- [Changelog](https://github.com/TA-Lib/ta-lib-python/blob/master/CHANGELOG)
- [Commits](https://github.com/ta-lib/ta-lib-python/compare/v0.6.6...v0.6.7)

---
updated-dependencies:
- dependency-name: ta-lib
  dependency-version: 0.6.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 05:01:16 +00:00
Matthias 5ea0705547 Merge pull request #12225 from freqtrade/dependabot/pip/develop/ruff-0.12.12
chore(deps-dev): bump ruff from 0.12.11 to 0.12.12
2025-09-08 06:55:33 +02:00
Matthias 575b50deda Merge pull request #12224 from freqtrade/dependabot/pip/develop/xgboost-3.0.5
chore(deps): bump xgboost from 3.0.4 to 3.0.5
2025-09-08 06:51:35 +02:00
Matthias a0d1a04605 Merge pull request #12219 from freqtrade/dependabot/pip/develop/mkdocs-9523af169b
chore(deps): bump mkdocs-material from 9.6.18 to 9.6.19 in the mkdocs group
2025-09-08 06:51:14 +02:00
Matthias aa4704e37d Merge pull request #12220 from freqtrade/dependabot/pip/develop/markdown-3.9
chore(deps): bump markdown from 3.8.2 to 3.9
2025-09-08 06:51:00 +02:00
Matthias 4143a2559a Merge pull request #12215 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-6.6.1
chore(deps): bump astral-sh/setup-uv from 6.6.0 to 6.6.1
2025-09-08 06:50:35 +02:00
Matthias 693a8fa979 Merge pull request #12217 from freqtrade/dependabot/github_actions/develop/actions/setup-python-6
chore(deps): bump actions/setup-python from 5 to 6
2025-09-08 06:50:12 +02:00
Matthias 6ec639d347 Merge pull request #12216 from freqtrade/dependabot/github_actions/develop/pypa/gh-action-pypi-publish-1.13.0
chore(deps): bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0
2025-09-08 06:49:56 +02:00
Matthias 52d5d35afb Merge pull request #12222 from freqtrade/dependabot/pip/develop/ccxt-4.5.3
chore(deps): bump ccxt from 4.5.2 to 4.5.3
2025-09-08 06:47:36 +02:00
dependabot[bot] 8a21cc6d18 chore(deps-dev): bump ruff from 0.12.11 to 0.12.12
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.12.11 to 0.12.12.
- [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.12.11...0.12.12)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 03:02:47 +00:00
dependabot[bot] b6bedf20ce chore(deps): bump xgboost from 3.0.4 to 3.0.5
Bumps [xgboost](https://github.com/dmlc/xgboost) from 3.0.4 to 3.0.5.
- [Release notes](https://github.com/dmlc/xgboost/releases)
- [Changelog](https://github.com/dmlc/xgboost/blob/master/NEWS.md)
- [Commits](https://github.com/dmlc/xgboost/compare/v3.0.4...v3.0.5)

---
updated-dependencies:
- dependency-name: xgboost
  dependency-version: 3.0.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 03:02:37 +00:00
dependabot[bot] 9f02279d5a chore(deps): bump ccxt from 4.5.2 to 4.5.3
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.2 to 4.5.3.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/exchanges.cfg)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.2...v4.5.3)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 03:02:26 +00:00
dependabot[bot] 6f9906e935 chore(deps): bump markdown from 3.8.2 to 3.9
Bumps [markdown](https://github.com/Python-Markdown/markdown) from 3.8.2 to 3.9.
- [Release notes](https://github.com/Python-Markdown/markdown/releases)
- [Changelog](https://github.com/Python-Markdown/markdown/blob/master/docs/changelog.md)
- [Commits](https://github.com/Python-Markdown/markdown/compare/3.8.2...3.9.0)

---
updated-dependencies:
- dependency-name: markdown
  dependency-version: '3.9'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 03:02:10 +00:00
dependabot[bot] e934c3934d 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.6.18 to 9.6.19
- [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.6.18...9.6.19)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 03:01:58 +00:00
dependabot[bot] d6f78e4cc8 chore(deps): bump actions/setup-python from 5 to 6
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5 to 6.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 03:01:46 +00:00
dependabot[bot] f9cc05b202 chore(deps): bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0
Bumps [pypa/gh-action-pypi-publish](https://github.com/pypa/gh-action-pypi-publish) from 1.12.4 to 1.13.0.
- [Release notes](https://github.com/pypa/gh-action-pypi-publish/releases)
- [Commits](https://github.com/pypa/gh-action-pypi-publish/compare/76f52bc884231f62b9a034ebfe128415bbaabdfc...ed0c53931b1dc9bd32cbe73a98c7f6766f8a527e)

---
updated-dependencies:
- dependency-name: pypa/gh-action-pypi-publish
  dependency-version: 1.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 03:01:42 +00:00
dependabot[bot] 76eb92b821 chore(deps): bump astral-sh/setup-uv from 6.6.0 to 6.6.1
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 6.6.0 to 6.6.1.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/4959332f0f014c5280e7eac8b70c90cb574c9f9b...557e51de59eb14aaaba2ed9621916900a91d50c6)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 6.6.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 03:01:38 +00:00
mrpabloyeah e749051dbc Fix ShuffleFilter behavior in backtesting 2025-09-07 23:28:33 +02:00
Matthias 6de7c70e7e Merge pull request #11625 from alisalama/develop
Parallelisation of iterative data downloads for speed improvement
2025-09-07 19:31:52 +02:00
Matthias 74f52b14cd chore(ci): disable package cleanup on pull requests 2025-09-07 19:31:12 +02:00
Matthias e33363bf6c feat: allow disabling parallel data-download per exchange 2025-09-07 18:18:34 +02:00
Matthias 7d77e63b81 chore: simplify comment 2025-09-07 15:54:16 +02:00
Matthias cfa855dec8 test: remove missleading comment 2025-09-07 15:53:56 +02:00
Matthias 34a72a0555 feat: doin't drop last candle for funding fees 2025-09-07 15:52:44 +02:00
Matthias a9db7d0286 chore: improve log wording 2025-09-07 15:35:00 +02:00
Matthias 19140e9cfa doc: fix funding fee doc sample 2025-09-07 12:01:32 +02:00
Matthias b0c3f2ff7f chore(ci): fix actions permission 2025-09-07 09:21:22 +02:00
Matthias 8686b56b9e chore(ci): automatically cleanup untagged images 2025-09-07 09:16:58 +02:00
Matthias 6ab731acdb chore(ci): Try simpler syntax 2025-09-07 09:10:44 +02:00
Matthias 8ca63cf0ee chore(ci): Improved workflow syntax 2025-09-07 09:04:27 +02:00
Matthias 5774c08b4a chore(ci): use proper input syntax 2025-09-07 09:01:22 +02:00
Matthias b731cdef56 chore(ci): use proper input syntax 2025-09-07 08:59:57 +02:00
Matthias b51c93fbc1 chore(ci): attempt at package-cleanup 2025-09-07 08:57:06 +02:00
Matthias e948839fb5 feat: have timerange have a default display way 2025-09-06 19:18:12 +02:00
Matthias 587ec513db fix: Odd error downloading wrong timerange when using --days via UI 2025-09-06 19:17:01 +02:00
Matthias efed5700be fix: handle RuntimeError on trades download
asyncio raises RuntimeError if the handler is not set on
the main thread.

closes #12211
2025-09-06 18:09:26 +02:00
Matthias 5ddaea7efc chore: improve log message 2025-09-06 18:01:35 +02:00
Matthias 66577b741f doc: improve orderbook wording 2025-09-06 17:52:20 +02:00
Matthias 09017980b6 docs: add live funding rate documentation 2025-09-06 17:52:20 +02:00
Matthias 3a7721ebe8 test: add test for fetch_funding_rate
part of #12206
2025-09-06 17:52:14 +02:00
Matthias 35cc3efd5a feat: improve docstring and error handling
part of #12206
2025-09-06 17:52:09 +02:00
Matthias 95ad756909 feat: add "current funding fee" endpoint
part of #12206
2025-09-06 17:51:50 +02:00
Matthias 816ca2ea15 feat: add error in case of non-available informative dataframe 2025-09-06 09:38:23 +02:00
Matthias 246891a8f6 feat: limit downloadable funding rates to funding rate interval
Limit using wrong funding-rate timeframes, which can cause wrong
information and assumptions in the strategy

Part of #12206
2025-09-06 09:21:28 +02:00
Matthias 25fd63c6d0 chore: make internal attribute really private 2025-09-06 09:10:44 +02:00
Matthias cadbbd0e2e chore: improve variable naming for clarity 2025-09-06 09:08:01 +02:00
Matthias 65b83c46fb Merge pull request #12208 from freqtrade/test_flat_dockerbuild
Restructure docker builds
2025-09-05 11:44:32 +02:00
Matthias 31204a37a5 chore(ci): set missed env 2025-09-05 07:09:22 +02:00
Matthias 67774c71e5 chore(ci): set composite action outputs 2025-09-04 20:01:29 +02:00
Matthias 44b65daf1c chore(ci): Switch to use outputs instead of global environments 2025-09-04 19:51:30 +02:00
Matthias 48ff0c5744 chore(ci): Use buildx imagetools only 2025-09-04 07:06:28 +02:00
Matthias 3934aa118f chore(ci): use docker buildx imagetool create 2025-09-04 07:06:27 +02:00
Matthias d40efb883c chore(ci): use proper manifest command 2025-09-04 07:06:27 +02:00
Matthias 84ec09565a chore(ci): Fix docker github login 2025-09-04 07:06:27 +02:00
Matthias 387431e4df chore(ci): use docker manifest to copy to ghcr 2025-09-04 07:06:27 +02:00
Matthias 662747c06c chore(ci): enable aliases 2025-09-04 07:06:27 +02:00
Matthias 89272e9ddb chore(ci): don't cache qemu image 2025-09-04 07:06:27 +02:00
Matthias 23d4d25e39 chore(ci): move everything to docker build action 2025-09-04 07:06:27 +02:00
Matthias 488a608c90 chore(ci): simplify build steps 2025-09-04 07:06:27 +02:00
Matthias a94d18a10b chore(ci): use composite action to extract docker variables 2025-09-04 07:06:27 +02:00
Matthias 94aba0f9ac chore(ci) fix step naming 2025-09-04 07:06:27 +02:00
Matthias 35c3ca91eb chore(ci): fix small typo 2025-09-04 07:06:27 +02:00
Matthias 53328bc595 chore(ci): allow failure on pull 2025-09-04 07:06:27 +02:00
Matthias bb7a4c4739 chore(ci): move CI build to action
* Reduce the need for a helper script
* increase visibility into individual build times
2025-09-04 07:06:27 +02:00
Matthias 7d38963c61 chore(ci): extract environment parts to ci file 2025-09-04 07:06:27 +02:00
Matthias a7e7c17134 Merge pull request #12207 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-09-04 06:51:27 +02:00
Freqtrade Bot 0544af1f68 chore: update pre-commit hooks 2025-09-04 03:10:44 +00:00
Mihail 70d7dcd189 Made test_merge_informative_pair_monthly asserts data dependent. 2025-09-03 19:55:37 +00:00
Mihail d36fdc1d69 Added exact dates to test_merge_informative_pair_monthly. 2025-09-03 12:20:38 +00:00
Mihail b9482f420d Changed test_merge_informative_pair_monthly test to contain the data from previous informative candle on start too. 2025-09-02 19:25:08 +00:00
Matthias ba87f3e7d7 chore: exclude .venv and userdata from dockerfiles 2025-09-02 20:59:23 +02:00
Mihail 3fe721a772 Fix for merge_informative_pair fix. 2025-09-02 18:33:23 +00:00
Matthias b60a3802e7 feat: remove numpy and pandas downgrade for armhf 2025-09-02 19:21:01 +02:00
Matthias 4beb6a8049 Merge pull request #12198 from hustrust/develop
chore: remove redundant word in docs/freq-ui.md
2025-09-02 18:18:20 +02:00
Mihail a53c4a3ed1 Fix the truncation of values by merge_ordered in the merge_informative_pair helper. 2025-09-02 15:35:20 +03:00
Robert Caulk bd10afc796 Merge pull request #12195 from Kritoooo/fix-skip-empty-test-labels
feat: warn user with clear message when test labels empty
2025-09-02 12:19:56 +02:00
hustrust 2868efa779 chore: remove redundant word in docs/freq-ui.md
Signed-off-by: hustrust <hustrust@outlook.com>
2025-09-02 16:28:51 +08:00
Matthias fe466e2e86 chore(ci): set environment variables directly 2025-09-02 07:23:10 +02:00
Matthias 6c5771b40c chore(ci): remove some redundant environment variables 2025-09-02 07:16:10 +02:00
Matthias 5c81d31bd1 chore(ci): Updated docker hub login 2025-09-02 07:13:18 +02:00
Matthias b1b3b42489 Merge pull request #12196 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-09-02 06:58:52 +02:00
Freqtrade Bot 5b03fc1a89 chore: update pre-commit hooks 2025-09-02 03:18:44 +00:00
Matthias dd73c724c4 Merge pull request #12183 from freqtrade/dependabot/pip/develop/ta-lib-0.6.6
chore(deps): bump ta-lib from 0.6.5 to 0.6.6
2025-09-01 20:01:50 +02:00
Matthias 5cbcd68446 chore: update armhf binary 2025-09-01 19:47:45 +02:00
Kritoooo 3bc1afd149 feat: warn user with clear message when test labels empty 2025-09-01 21:21:24 +08:00
Matthias 877761ecd3 Merge pull request #12185 from freqtrade/dependabot/pip/develop/cachetools-6.2.0
chore(deps): bump cachetools from 6.1.0 to 6.2.0
2025-09-01 11:00:55 +02:00
Matthias 9ef464e002 Merge pull request #12188 from freqtrade/dependabot/pip/develop/questionary-2.1.1
chore(deps): bump questionary from 2.1.0 to 2.1.1
2025-09-01 10:49:48 +02:00
dependabot[bot] 3deb089d64 chore(deps): bump cachetools from 6.1.0 to 6.2.0
Bumps [cachetools](https://github.com/tkem/cachetools) from 6.1.0 to 6.2.0.
- [Changelog](https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tkem/cachetools/compare/v6.1.0...v6.2.0)

---
updated-dependencies:
- dependency-name: cachetools
  dependency-version: 6.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-01 08:40:20 +00:00
Matthias f4f2249447 Merge pull request #12187 from freqtrade/dependabot/pip/develop/types-562fd16d2b
chore(deps-dev): bump types-cachetools from 6.1.0.20250717 to 6.2.0.20250827 in the types group
2025-09-01 10:36:57 +02:00
dependabot[bot] 1c5a4f4f39 chore(deps): bump questionary from 2.1.0 to 2.1.1
Bumps [questionary](https://github.com/tmbo/questionary) from 2.1.0 to 2.1.1.
- [Commits](https://github.com/tmbo/questionary/compare/2.1.0...2.1.1)

---
updated-dependencies:
- dependency-name: questionary
  dependency-version: 2.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-01 08:10:19 +00:00
Matthias 1909fc3139 chore: update pre-commit cachetools 2025-09-01 10:05:43 +02:00
Matthias 2de831f1b2 Merge pull request #12189 from freqtrade/dependabot/pip/develop/orjson-3.11.3
chore(deps): bump orjson from 3.11.2 to 3.11.3
2025-09-01 10:03:51 +02:00
Matthias 1739200ee4 Merge pull request #12191 from freqtrade/dependabot/pip/develop/humanize-4.13.0
chore(deps): bump humanize from 4.12.3 to 4.13.0
2025-09-01 10:03:38 +02:00
Matthias 31a44178a4 Merge pull request #12193 from freqtrade/dependabot/pip/develop/prompt-toolkit-3.0.52
chore(deps): bump prompt-toolkit from 3.0.51 to 3.0.52
2025-09-01 10:02:22 +02:00
Matthias eb9f233a78 Merge pull request #12192 from freqtrade/dependabot/pip/develop/ruff-0.12.11
chore(deps-dev): bump ruff from 0.12.10 to 0.12.11
2025-09-01 10:01:05 +02:00
dependabot[bot] 3986dc2617 chore(deps): bump prompt-toolkit from 3.0.51 to 3.0.52
Bumps [prompt-toolkit](https://github.com/prompt-toolkit/python-prompt-toolkit) from 3.0.51 to 3.0.52.
- [Release notes](https://github.com/prompt-toolkit/python-prompt-toolkit/releases)
- [Changelog](https://github.com/prompt-toolkit/python-prompt-toolkit/blob/main/CHANGELOG)
- [Commits](https://github.com/prompt-toolkit/python-prompt-toolkit/compare/3.0.51...3.0.52)

---
updated-dependencies:
- dependency-name: prompt-toolkit
  dependency-version: 3.0.52
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-01 06:24:42 +00:00
dependabot[bot] 1f7f2ee3dd chore(deps-dev): bump ruff from 0.12.10 to 0.12.11
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.12.10 to 0.12.11.
- [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.12.10...0.12.11)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-01 06:22:56 +00:00
dependabot[bot] 6e0da1aa3a chore(deps): bump humanize from 4.12.3 to 4.13.0
Bumps [humanize](https://github.com/python-humanize/humanize) from 4.12.3 to 4.13.0.
- [Release notes](https://github.com/python-humanize/humanize/releases)
- [Commits](https://github.com/python-humanize/humanize/compare/4.12.3...4.13.0)

---
updated-dependencies:
- dependency-name: humanize
  dependency-version: 4.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-01 06:22:50 +00:00
dependabot[bot] af3b0ed39f chore(deps): bump orjson from 3.11.2 to 3.11.3
Bumps [orjson](https://github.com/ijl/orjson) from 3.11.2 to 3.11.3.
- [Release notes](https://github.com/ijl/orjson/releases)
- [Changelog](https://github.com/ijl/orjson/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ijl/orjson/compare/3.11.2...3.11.3)

---
updated-dependencies:
- dependency-name: orjson
  dependency-version: 3.11.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-01 06:21:23 +00:00
dependabot[bot] 1302b67772 chore(deps-dev): bump types-cachetools in the types group
Bumps the types group with 1 update: [types-cachetools](https://github.com/typeshed-internal/stub_uploader).


Updates `types-cachetools` from 6.1.0.20250717 to 6.2.0.20250827
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: types-cachetools
  dependency-version: 6.2.0.20250827
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-01 06:20:24 +00:00
dependabot[bot] 6d44248607 chore(deps): bump ta-lib from 0.6.5 to 0.6.6
Bumps [ta-lib](https://github.com/ta-lib/ta-lib-python) from 0.6.5 to 0.6.6.
- [Release notes](https://github.com/ta-lib/ta-lib-python/releases)
- [Changelog](https://github.com/TA-Lib/ta-lib-python/blob/master/CHANGELOG)
- [Commits](https://github.com/ta-lib/ta-lib-python/compare/v0.6.5...v0.6.6)

---
updated-dependencies:
- dependency-name: ta-lib
  dependency-version: 0.6.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-01 06:18:21 +00:00
Matthias 5f1d9cbab1 Merge pull request #12151 from mpagnoulle/feat/trades-timerange-filtering
Trades TimeRange filtering for FeatherDataHandler and _if_enabled_populate_trades
2025-08-31 10:00:23 +02:00
Matthias aad21195df docs: document nested webhook functionality 2025-08-31 08:41:30 +02:00
Matthias 739a67fdcb test: add test for new webhook functionality 2025-08-31 08:41:12 +02:00
Matthias 48bd5cb2c0 feat: add nested webhook message support 2025-08-31 08:41:05 +02:00
Matthias 9c079ccdfd Merge pull request #12182 from freqtrade/new_release
New release 2025.8
2025-08-31 08:25:25 +02:00
Matthias 2542102280 test: Test telegram init exception handling 2025-08-30 20:02:03 +02:00
Matthias 5407c2efec fix: list-data --trades no longer working when used with --pairs filter 2025-08-30 19:58:37 +02:00
Matthias 81a5d49687 fix: list-data --trades no longer working when used with --pairs filter 2025-08-30 19:58:24 +02:00
Matthias 321b44b779 chore: fix 2025-08-30 19:57:47 +02:00
Matthias 61a1ed897f chore: bump pyright minimum version 2025-08-30 18:10:21 +02:00
Matthias 5bb4cffa21 chore: clarify deprecation message 2025-08-30 18:02:26 +02:00
Matthias 5c314b6f1c chore: bump dev version to 2025.9-dev 2025-08-30 17:56:49 +02:00
Matthias cee8855dca chore: bump version to 2025.8 2025-08-30 17:45:29 +02:00
Matthias 1196237f82 Merge branch 'stable' into new_release 2025-08-30 17:45:09 +02:00
Maxime Pagnoulle 9d5295fdb4 feat: Support for unbounded start and/or end in timerange filtering, added associated tests 2025-08-30 17:38:23 +02:00
Matthias 71e1c91148 docs: wider docs page 2025-08-30 17:26:16 +02:00
Matthias e9718e064f chore: remove outdated comment about ta-lib 2025-08-30 15:40:52 +02:00
Matthias 3e8bb29c9f test: move test to usdt 2025-08-30 15:40:52 +02:00
Matthias 2fd703fcc5 Merge pull request #12170 from mrpabloyeah/some-improvements-to-backtest-summary-metrics
Some improvements to backtest summary metrics
2025-08-30 15:40:35 +02:00
Matthias 2a84b00dad docs: fix/improve developer docs 2025-08-30 15:17:06 +02:00
Matthias 711ebfea28 docs: update backtest-result to reproducible result 2025-08-30 15:12:54 +02:00
Matthias 8cd2ee95f9 feat: add developer documentation to generate backtest results 2025-08-30 14:56:23 +02:00
Matthias 539937c0eb refactor: move base_analysis to where it belongs 2025-08-30 11:47:38 +02:00
Matthias fefd698e96 Merge pull request #12179 from freqtrade/deps/loky
CI: Bump joblib to latest version
2025-08-30 11:39:00 +02:00
Matthias 3512d788dc chore: bump technical to 1.5.3 to align talib version 2025-08-30 11:19:36 +02:00
Matthias 54c4dd1ce6 chore: run CI against 3.13 unconditionally again
Pinning to 3.13.6 was a workaround for the loky bug
2025-08-30 11:18:02 +02:00
Matthias daaff66ff0 chore: Bump joblib dependency to 1.5.2 2025-08-30 11:14:15 +02:00
Matthias 8610f9883d feat: enable PostOnly orders for binance futures 2025-08-30 10:13:10 +02:00
Matthias e503d4a9c0 fix: downgrade pyarrow to 20 to work around pyarrow compilation error
related: https://github.com/apache/arrow/issues/47229
2025-08-29 20:31:06 +02:00
Matthias eaf3fc8833 test: add negative test for parallel download 2025-08-29 20:06:03 +02:00
Matthias 94c5ddc13d test: add test covering parallel pair merging 2025-08-29 07:26:05 +02:00
Matthias a3fedbaba7 docs: update outdated comments 2025-08-29 07:11:19 +02:00
Matthias 1cf1d9e3d7 chore: remove unused ignore 2025-08-28 20:37:41 +02:00
Matthias 6b250f9dfe feat: reduce log verbosity of recursive and lookahead bias commands 2025-08-28 20:19:47 +02:00
Matthias 3d24ef66d8 refactor: have backtesting init use self.config instead of the passed in config 2025-08-28 20:13:27 +02:00
Matthias ef0fc13235 chore: reduce data-load verbosity 2025-08-28 20:11:28 +02:00
Matthias 394ff1bbf6 chore: improve variable wording 2025-08-28 19:51:43 +02:00
Matthias 5cdd087465 fix: type error 2025-08-28 19:34:45 +02:00
Matthias 93051f4f97 test: update test for dynamic pairlist expansion in list-data 2025-08-28 19:21:54 +02:00
mrpabloyeah 1c2eed1421 Merge branch 'freqtrade:develop' into some-improvements-to-backtest-summary-metrics 2025-08-28 18:44:37 +02:00
mrpabloyeah 532f5ab080 Update backtesting documentation 2025-08-28 18:32:24 +02:00
Matthias e3ffe56549 feat: add dynamic PL expansion to list-data 2025-08-28 18:29:44 +02:00
Matthias 564634be45 docs: update exported help messages 2025-08-28 07:08:36 +02:00
Matthias ab3ae3dc62 chore: Update cli help 2025-08-28 07:08:25 +02:00
Matthias d037f67f74 test: add parallel download test 2025-08-28 07:07:27 +02:00
Matthias b1b6341a6e test: improve parallel test to capture caching 2025-08-28 06:50:17 +02:00
Matthias 8c92f9407d chore: use candle_type as argument for parallel-download 2025-08-28 06:50:08 +02:00
Matthias e0aa660b56 chore: improve docstring wording 2025-08-28 06:46:45 +02:00
Matthias 25d4cabe3b Merge pull request #12171 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-08-28 06:36:39 +02:00
Freqtrade Bot 7539b6ffda chore: update pre-commit hooks 2025-08-28 03:16:20 +00:00
mrpabloyeah 8e623ee64c Some improvements to backtest summary metrics 2025-08-28 02:04:39 +02:00
Matthias 59ab51c06c test: Update basic test for calls to parallel-download 2025-08-27 20:19:47 +02:00
Matthias 2eb2617b6f chore: make condition more logical 2025-08-27 20:19:31 +02:00
Matthias b284572ea7 chore: update docstring 2025-08-27 19:44:39 +02:00
Matthias 1e5d9ecfa3 chore: improved logstring 2025-08-27 10:22:40 +02:00
Matthias e8bda298e3 Merge branch 'develop' into pr/alisalama/11625 2025-08-27 10:15:07 +02:00
Matthias 489cd008d6 chore: invert "parallel download" option 2025-08-27 10:15:04 +02:00
Matthias 22ddd9a7d4 Merge pull request #12169 from freqtrade/deps/ccxt
Bump ccxt version to 4.5.2
2025-08-27 10:00:44 +02:00
Matthias 128ea45fee chore: bump ccxt version to 4.5.2 2025-08-27 09:42:42 +02:00
Matthias 3ff1e31a81 test: don't use fixture if it's only used once 2025-08-27 08:31:14 +02:00
Matthias 2495f68751 chore: remove no-longer working badge 2025-08-26 20:47:31 +02:00
Matthias 70ee652be5 fix: cut-off (too short) timeframe-detail bug
If the detail data stops short, this shouldn't cause an exception.
instead, we should continue with "parent only" logic.
2025-08-26 19:39:15 +02:00
Matthias bb1d34c33d Merge pull request #12077 from mrpabloyeah/allow-pairs-with-prefix-in-marketcap-pairList
Allow pairs with prefix in MarketCapPairList
2025-08-26 19:12:46 +02:00
Matthias 8f6d64f5e1 test: add test for 1000 / k logic 2025-08-26 07:21:09 +02:00
Matthias b40848373d docs: add line about 1000 / K testing logic 2025-08-26 07:13:17 +02:00
Matthias 2824bcff41 chore(ci): prevent failure on PR's 2025-08-26 07:08:12 +02:00
Matthias e8b967d634 Merge pull request #12167 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-08-26 06:02:10 +02:00
Freqtrade Bot 12d617cf8d chore: update pre-commit hooks 2025-08-26 03:20:03 +00:00
mrpabloyeah 48ab5ed990 Replace get_markets_cache() with get_markets_exchange() 2025-08-25 14:24:38 +02:00
mrpabloyeah 3363b1062e Merge branch 'freqtrade:develop' into allow-pairs-with-prefix-in-marketcap-pairList 2025-08-25 13:51:16 +02:00
Matthias d35dde6757 Merge pull request #12158 from freqtrade/dependabot/pip/develop/pandas-2.3.2
chore(deps): bump pandas from 2.3.1 to 2.3.2
2025-08-25 10:20:51 +02:00
Matthias 6016d4886e Merge pull request #12155 from freqtrade/dependabot/pip/develop/jsonschema-4.25.1
chore(deps): bump jsonschema from 4.25.0 to 4.25.1
2025-08-25 09:40:16 +02:00
Matthias f77eaa4083 chore: bump pre-commit scipy-stubs 2025-08-25 09:39:00 +02:00
Matthias 460d88ced7 Merge pull request #12154 from freqtrade/dependabot/pip/develop/types-eabe4663e9
chore(deps-dev): bump types-python-dateutil from 2.9.0.20250809 to 2.9.0.20250822 in the types group
2025-08-25 09:37:03 +02:00
Matthias 6bb559f1b0 Merge pull request #12163 from freqtrade/dependabot/pip/develop/time-machine-2.19.0
chore(deps-dev): bump time-machine from 2.17.0 to 2.19.0
2025-08-25 09:30:12 +02:00
Matthias 7c91eb0091 Merge pull request #12161 from freqtrade/dependabot/pip/develop/optuna-4.5.0
chore(deps): bump optuna from 4.4.0 to 4.5.0
2025-08-25 09:29:51 +02:00
Matthias ae672e1110 Merge pull request #12164 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-6.6.0
chore(deps): bump astral-sh/setup-uv from 6.5.0 to 6.6.0
2025-08-25 09:12:32 +02:00
dependabot[bot] 1c4bf67e29 chore(deps): bump jsonschema from 4.25.0 to 4.25.1
Bumps [jsonschema](https://github.com/python-jsonschema/jsonschema) from 4.25.0 to 4.25.1.
- [Release notes](https://github.com/python-jsonschema/jsonschema/releases)
- [Changelog](https://github.com/python-jsonschema/jsonschema/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/python-jsonschema/jsonschema/compare/v4.25.0...v4.25.1)

---
updated-dependencies:
- dependency-name: jsonschema
  dependency-version: 4.25.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 07:12:10 +00:00
Matthias c4e671fdc3 Merge pull request #12162 from freqtrade/dependabot/pip/develop/requests-2.32.5
chore(deps): bump requests from 2.32.4 to 2.32.5
2025-08-25 09:03:46 +02:00
Matthias c5c5198fb3 Merge pull request #12160 from freqtrade/dependabot/pip/develop/ccxt-4.5.1
chore(deps): bump ccxt from 4.5.0 to 4.5.1
2025-08-25 09:03:07 +02:00
dependabot[bot] 634ec3c85f chore(deps-dev): bump time-machine from 2.17.0 to 2.19.0
Bumps [time-machine](https://github.com/adamchainz/time-machine) from 2.17.0 to 2.19.0.
- [Changelog](https://github.com/adamchainz/time-machine/blob/main/docs/changelog.rst)
- [Commits](https://github.com/adamchainz/time-machine/compare/2.17.0...2.19.0)

---
updated-dependencies:
- dependency-name: time-machine
  dependency-version: 2.19.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 07:02:34 +00:00
Matthias d15aa4b337 Merge pull request #12157 from freqtrade/dependabot/pip/develop/ruff-0.12.10
chore(deps-dev): bump ruff from 0.12.9 to 0.12.10
2025-08-25 08:59:07 +02:00
Matthias e160739a28 Merge pull request #12159 from freqtrade/dependabot/pip/develop/mkdocs-c7429a2ade
chore(deps): bump mkdocs-material from 9.6.17 to 9.6.18 in the mkdocs group
2025-08-25 08:51:58 +02:00
Matthias 030e07030c Merge pull request #12156 from freqtrade/dependabot/pip/develop/scipy-420df9eef1
chore(deps-dev): bump scipy-stubs from 1.16.1.0 to 1.16.1.1 in the scipy group
2025-08-25 08:40:44 +02:00
Matthias a50a15ebc6 chore(deps): Don't bump pandas for armv7 for now. 2025-08-25 08:11:16 +02:00
Matthias 514452c4ec chore: update date-util in pre-commit config 2025-08-25 08:07:14 +02:00
dependabot[bot] f091db3b0e chore(deps): bump astral-sh/setup-uv from 6.5.0 to 6.6.0
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 6.5.0 to 6.6.0.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/d9e0f98d3fc6adb07d1e3d37f3043649ddad06a1...4959332f0f014c5280e7eac8b70c90cb574c9f9b)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 6.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 05:45:29 +00:00
dependabot[bot] caf1d6e7f2 chore(deps): bump requests from 2.32.4 to 2.32.5
Bumps [requests](https://github.com/psf/requests) from 2.32.4 to 2.32.5.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.32.4...v2.32.5)

---
updated-dependencies:
- dependency-name: requests
  dependency-version: 2.32.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 05:30:18 +00:00
dependabot[bot] 81f6637803 chore(deps): bump optuna from 4.4.0 to 4.5.0
Bumps [optuna](https://github.com/optuna/optuna) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/optuna/optuna/releases)
- [Commits](https://github.com/optuna/optuna/compare/v4.4.0...v4.5.0)

---
updated-dependencies:
- dependency-name: optuna
  dependency-version: 4.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 05:30:01 +00:00
dependabot[bot] f764f1fc10 chore(deps): bump ccxt from 4.5.0 to 4.5.1
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.5.0 to 4.5.1.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.5.0...v4.5.1)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 05:29:10 +00:00
dependabot[bot] 9a8ef17c73 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.6.17 to 9.6.18
- [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.6.17...9.6.18)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 05:27:30 +00:00
dependabot[bot] 8fe582a7a7 chore(deps): bump pandas from 2.2.3 to 2.3.2
Bumps [pandas](https://github.com/pandas-dev/pandas) from 2.2.3 to 2.3.2.
- [Release notes](https://github.com/pandas-dev/pandas/releases)
- [Commits](https://github.com/pandas-dev/pandas/compare/v2.2.3...v2.3.2)

---
updated-dependencies:
- dependency-name: pandas
  dependency-version: 2.3.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 05:27:29 +00:00
dependabot[bot] 5cf3a2256a chore(deps-dev): bump ruff from 0.12.9 to 0.12.10
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.12.9 to 0.12.10.
- [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.12.9...0.12.10)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 05:27:10 +00:00
dependabot[bot] caf4ffbc0b 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.16.1.0 to 1.16.1.1
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.16.1.0...v1.16.1.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 05:25:49 +00:00
dependabot[bot] d156f36f99 chore(deps-dev): bump types-python-dateutil in the types group
Bumps the types group with 1 update: [types-python-dateutil](https://github.com/typeshed-internal/stub_uploader).


Updates `types-python-dateutil` from 2.9.0.20250809 to 2.9.0.20250822
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: types-python-dateutil
  dependency-version: 2.9.0.20250822
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 05:24:53 +00:00
Matthias 4390324d22 docs: improve exchange doc for time_in_force 2025-08-25 07:03:25 +02:00
Matthias 8d7ef1929e docs: improve bybit documentation structure 2025-08-25 07:00:56 +02:00
Matthias 08fb8e42f7 docs: improve time_in_force section 2025-08-25 06:57:37 +02:00
Matthias eaf6abecc8 fix: DecimalParameter shouldn't have floating point errors
closes #12152
2025-08-24 17:03:55 +02:00
Matthias b4796cbf73 test: improve decimal parameter test 2025-08-24 17:03:11 +02:00
Matthias e042b2e07b test: improve parameter naming 2025-08-24 16:12:10 +02:00
Matthias 9f021cbee6 test: remove combined test 2025-08-24 16:11:46 +02:00
Matthias bf615e415b test: split parameter tests to one test per parameter 2025-08-24 16:11:44 +02:00
Matthias c72f5b79fe refactor: extract hyperopt-params test to separate file 2025-08-24 16:02:59 +02:00
Matthias 51c1674663 Merge pull request #12153 from freqtrade/update_action
Update_action
2025-08-24 15:54:36 +02:00
Matthias e445452d35 Merge pull request #12128 from freqtrade/windows_ci
Windows ci against 2022 and 2025 respectively
2025-08-24 15:45:38 +02:00
Matthias 9fff38d0a3 chore: update Permission check action to supported version 2025-08-24 15:34:16 +02:00
Matthias bdd69dbfbc Merge pull request #12146 from stash86/main-stash
Fix calc_profit_ratio
2025-08-24 15:28:42 +02:00
Matthias ec4767acd5 chore: Simplify code slightly 2025-08-24 14:44:22 +02:00
Matthias 78c8054954 chore(ci): Split windows ci tests to 2022 and 2025 respectively 2025-08-24 14:36:24 +02:00
Maxime Pagnoulle f21c5ea88a feat: Remove redundant filtering, add tests for pyarrow trade filtering, use date utils for date to ts conversion 2025-08-24 11:59:56 +02:00
Maxime Pagnoulle 82903cc567 feat: Filter trades based on timerange 2025-08-23 20:25:26 +02:00
Maxime Pagnoulle 0233c38711 feat: Only load trades needed for specified timerange 2025-08-23 20:24:10 +02:00
Stefano 24f5096ec6 modify test_handle_trade to test several cases of calc_profit_ratio 2025-08-23 17:23:56 +09:00
Stefano 030bc8641b Merge branch 'main-stash' of https://github.com/stash86/freqtrade into main-stash 2025-08-22 08:40:17 +09:00
Stefano c9403eb946 fix calc_profit_ratio to correctly fallback to available values when amount or open_rate is None 2025-08-22 08:40:14 +09:00
Matthias 87b0a6d3f3 Merge pull request #12144 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-08-21 07:15:18 +02:00
Matthias c0d404edb5 chore: try downgrading python on windows ci 2025-08-21 06:59:20 +02:00
Freqtrade Bot a7a16d1e1e chore: update pre-commit hooks 2025-08-21 03:18:27 +00:00
Matthias 1f21d5e2c2 Merge pull request #12126 from stash86/main-stash
Improve lookahead analysis to use full dataframe comparison instead of just the last row
2025-08-20 06:45:13 +02:00
Stefano a531f8644d update the docs to show the modified approach in comparing dataframes 2025-08-20 09:32:02 +09:00
Matthias 765a0b52cb fix: api-pairlist bug with candle-type-def 2025-08-19 21:14:11 +02:00
Matthias 4919d6944e chore: use available attribute 2025-08-19 21:14:11 +02:00
Matthias ac20596f10 chore: remove unused property 2025-08-19 21:14:11 +02:00
Matthias 5e79a93235 Merge pull request #12143 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-08-19 07:01:18 +02:00
Freqtrade Bot 2e8decbb6d chore: update pre-commit hooks 2025-08-19 03:20:42 +00:00
Matthias 196e599dc8 Merge pull request #12131 from freqtrade/dependabot/pip/develop/mkdocs-ed34fe0103
chore(deps): bump mkdocs-material from 9.6.16 to 9.6.17 in the mkdocs group
2025-08-18 09:01:41 +02:00
Matthias 485cad2dc6 Merge pull request #12140 from freqtrade/dependabot/github_actions/develop/zizmorcore/zizmor-action-0.1.2
chore(deps): bump zizmorcore/zizmor-action from 0.1.1 to 0.1.2
2025-08-18 08:46:18 +02:00
Matthias 61cbe0c4b1 Merge pull request #12133 from freqtrade/dependabot/pip/develop/sqlalchemy-2.0.43
chore(deps): bump sqlalchemy from 2.0.42 to 2.0.43
2025-08-18 08:40:44 +02:00
Matthias 5510e138db Merge pull request #12135 from freqtrade/dependabot/pip/develop/plotly-6.3.0
chore(deps): bump plotly from 6.2.0 to 6.3.0
2025-08-18 08:31:57 +02:00
Matthias c9e9f9bd82 Merge pull request #12141 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-6.5.0
chore(deps): bump astral-sh/setup-uv from 6.4.3 to 6.5.0
2025-08-18 08:25:46 +02:00
Matthias 768ba1baaf Merge pull request #12137 from freqtrade/dependabot/pip/develop/xgboost-3.0.4
chore(deps): bump xgboost from 3.0.3 to 3.0.4
2025-08-18 08:24:21 +02:00
Matthias ad25a60149 Merge pull request #12132 from freqtrade/dependabot/pip/develop/ccxt-4.5.0
chore(deps): bump ccxt from 4.4.99 to 4.5.0
2025-08-18 08:23:09 +02:00
Matthias 3fdcd6e8f1 Merge pull request #12138 from freqtrade/dependabot/pip/develop/filelock-3.19.1
chore(deps): bump filelock from 3.18.0 to 3.19.1
2025-08-18 08:20:59 +02:00
Matthias be0c0761e3 Merge pull request #12139 from freqtrade/dependabot/github_actions/develop/actions/checkout-5
chore(deps): bump actions/checkout from 4 to 5
2025-08-18 08:18:16 +02:00
Matthias 00dd3f05ac Merge pull request #12134 from freqtrade/dependabot/pip/develop/ruff-0.12.9
chore(deps-dev): bump ruff from 0.12.8 to 0.12.9
2025-08-18 08:12:29 +02:00
Matthias c6f30989c9 Merge pull request #12136 from freqtrade/dependabot/pip/develop/orjson-3.11.2
chore(deps): bump orjson from 3.11.1 to 3.11.2
2025-08-18 08:00:40 +02:00
Matthias 4ab6fba9e7 chore: bump sqlalchemy in pre-commit-config 2025-08-18 07:04:44 +02:00
dependabot[bot] 3ef082e2d9 chore(deps): bump astral-sh/setup-uv from 6.4.3 to 6.5.0
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 6.4.3 to 6.5.0.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/e92bafb6253dcd438e0484186d7669ea7a8ca1cc...d9e0f98d3fc6adb07d1e3d37f3043649ddad06a1)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 6.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:56:09 +00:00
dependabot[bot] cccf44cd68 chore(deps): bump zizmorcore/zizmor-action from 0.1.1 to 0.1.2
Bumps [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) from 0.1.1 to 0.1.2.
- [Release notes](https://github.com/zizmorcore/zizmor-action/releases)
- [Commits](https://github.com/zizmorcore/zizmor-action/compare/f52a838cfabf134edcbaa7c8b3677dde20045018...5ca5fc7a4779c5263a3ffa0e1f693009994446d1)

---
updated-dependencies:
- dependency-name: zizmorcore/zizmor-action
  dependency-version: 0.1.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:55:35 +00:00
dependabot[bot] 506d665a43 chore(deps): bump actions/checkout from 4 to 5
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:54:29 +00:00
dependabot[bot] 8514e35ad0 chore(deps): bump filelock from 3.18.0 to 3.19.1
Bumps [filelock](https://github.com/tox-dev/py-filelock) from 3.18.0 to 3.19.1.
- [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.18.0...3.19.1)

---
updated-dependencies:
- dependency-name: filelock
  dependency-version: 3.19.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:53:25 +00:00
dependabot[bot] af0a3f9a8d chore(deps): bump xgboost from 3.0.3 to 3.0.4
Bumps [xgboost](https://github.com/dmlc/xgboost) from 3.0.3 to 3.0.4.
- [Release notes](https://github.com/dmlc/xgboost/releases)
- [Changelog](https://github.com/dmlc/xgboost/blob/master/NEWS.md)
- [Commits](https://github.com/dmlc/xgboost/compare/v3.0.3...v3.0.4)

---
updated-dependencies:
- dependency-name: xgboost
  dependency-version: 3.0.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:52:18 +00:00
dependabot[bot] 2df1a93dfc chore(deps): bump orjson from 3.11.1 to 3.11.2
Bumps [orjson](https://github.com/ijl/orjson) from 3.11.1 to 3.11.2.
- [Release notes](https://github.com/ijl/orjson/releases)
- [Changelog](https://github.com/ijl/orjson/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ijl/orjson/compare/3.11.1...3.11.2)

---
updated-dependencies:
- dependency-name: orjson
  dependency-version: 3.11.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:52:11 +00:00
dependabot[bot] 75e39d3154 chore(deps): bump plotly from 6.2.0 to 6.3.0
Bumps [plotly](https://github.com/plotly/plotly.py) from 6.2.0 to 6.3.0.
- [Release notes](https://github.com/plotly/plotly.py/releases)
- [Changelog](https://github.com/plotly/plotly.py/blob/main/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.py/compare/v6.2.0...v6.3.0)

---
updated-dependencies:
- dependency-name: plotly
  dependency-version: 6.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:52:04 +00:00
dependabot[bot] 5d755e3ca0 chore(deps-dev): bump ruff from 0.12.8 to 0.12.9
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.12.8 to 0.12.9.
- [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.12.8...0.12.9)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:51:11 +00:00
dependabot[bot] fbeb2e4789 chore(deps): bump sqlalchemy from 2.0.42 to 2.0.43
Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 2.0.42 to 2.0.43.
- [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases)
- [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst)
- [Commits](https://github.com/sqlalchemy/sqlalchemy/commits)

---
updated-dependencies:
- dependency-name: sqlalchemy
  dependency-version: 2.0.43
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:50:46 +00:00
dependabot[bot] 6b288d46af chore(deps): bump ccxt from 4.4.99 to 4.5.0
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.4.99 to 4.5.0.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.4.99...v4.5.0)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:50:30 +00:00
dependabot[bot] 394cdfcc15 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.6.16 to 9.6.17
- [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.6.16...9.6.17)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:50:09 +00:00
Matthias 28df02da82 Merge pull request #12129 from freqtrade/dependabot/docker/python-3.13.7-slim-bookworm
chore(deps): bump python from 3.13.6-slim-bookworm to 3.13.7-slim-bookworm
2025-08-18 06:49:59 +02:00
Matthias d4ee725747 Merge pull request #12127 from freqtrade/backtest-filename
Backtest filename
2025-08-18 06:47:12 +02:00
dependabot[bot] 6617d3bb46 chore(deps): bump python
Bumps python from 3.13.6-slim-bookworm to 3.13.7-slim-bookworm.

---
updated-dependencies:
- dependency-name: python
  dependency-version: 3.13.7-slim-bookworm
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:35:05 +00:00
Matthias 2453e344f4 docs: improve documentation 2025-08-17 17:25:06 +02:00
Matthias 7f0e886cfd chore: update config message naming 2025-08-17 15:31:48 +02:00
Matthias e34ea393d9 docs: improved help wording 2025-08-17 15:15:55 +02:00
Matthias a00a5e52c4 docs: update backtest-filename wording 2025-08-17 15:15:37 +02:00
Matthias 6abc0a3fb9 docs: update wording in documentation 2025-08-17 15:13:05 +02:00
Matthias 7e4b9d7481 docs: update doc segments with new help text 2025-08-17 15:09:12 +02:00
Matthias e3f241acb7 chore: improve help text wording 2025-08-17 15:08:55 +02:00
Matthias eee233f894 fix: ensure exportfilename is always set 2025-08-17 15:02:28 +02:00
Matthias 615095c780 feat: add exportdirectory to entry/exit analysis 2025-08-17 15:02:28 +02:00
Matthias b22bce3dd8 feat: Support split directory and filename for backteststats loading 2025-08-17 15:02:28 +02:00
Matthias 9f1d9add18 chore: improve docstring 2025-08-17 15:02:28 +02:00
Matthias 36f2bef6b8 test: update test for split backtest-show reality 2025-08-17 15:02:28 +02:00
Matthias 07906d2576 test: update api backtest test 2025-08-17 15:02:28 +02:00
Matthias 5c977c212b test: drop test part using --export-filename to determine backtest result naming 2025-08-17 15:02:28 +02:00
Matthias 09b084e85a chore: adjust backtest-optimize reports tests 2025-08-17 15:02:28 +02:00
Matthias aefc72554a chore: ensure filename is a path object 2025-08-17 15:02:28 +02:00
Matthias 33c2cc806a refactor: extract bt file normalization to separate function 2025-08-17 15:02:28 +02:00
Matthias 74aa17d534 feat: support both relative filenames, as well as just the filename 2025-08-17 15:02:28 +02:00
Matthias 4de1501c68 fix: argument load stability 2025-08-17 15:02:28 +02:00
Matthias dc12b3e750 feat: improved support for split "export-directory" and export-filenames 2025-08-17 15:02:28 +02:00
Matthias dacd09db8b chore: improved code logic 2025-08-17 15:02:28 +02:00
Matthias c63d0e167c chore: switch to using exportdirectory 2025-08-17 15:02:28 +02:00
Matthias 6ccd98d795 feat: introduce --export-directory 2025-08-17 15:02:28 +02:00
Stefano 52b0e64950 revert back to use list instead of set 2025-08-17 16:25:01 +09:00
Stefano 5e5137edc1 compare full dataframe instead of only last row 2025-08-17 16:05:22 +09:00
Matthias 5d4edb5ec0 fix: list-strategies shouldn't fail when no strategy is found
closes #12124
2025-08-16 19:38:45 +02:00
Matthias 6dccab9bfe refactor: simplify backtest analysis data loading 2025-08-16 14:50:36 +02:00
Matthias 653c160d76 chore: analyze-commands shouldn't identify as backtest 2025-08-16 13:27:29 +02:00
Matthias 3f65ed452e chore: improve typesafety 2025-08-16 13:23:51 +02:00
Matthias 09cdc7ceca chore: improve docker job namings 2025-08-15 19:41:49 +02:00
Matthias e98e6d8aee chore: remove --no-build-isolation from docker builds 2025-08-15 18:29:01 +02:00
Matthias f10223bf13 chore: temporarily downgrade armhf dependencies
Allow piwheels to apply - which should make the armhf build a lot faster.
2025-08-15 18:29:01 +02:00
Matthias 38b3062653 chore: fix armhf build 2025-08-15 16:18:24 +02:00
Matthias 6063e4accb Merge pull request #12101 from freqtrade/dependabot/pip/develop/ta-lib-0.6.5
chore(deps): bump ta-lib from 0.5.5 to 0.6.5
2025-08-15 13:10:22 +02:00
Matthias 06e249f569 chore: bump pre-built armhf ta-lib binary 2025-08-15 08:22:25 +02:00
Matthias d064bd4f34 chore: prefer --backtest-filename over --export-filename! 2025-08-14 15:20:46 +02:00
Matthias 765d2c332c docs: update Documentation about export-filename 2025-08-14 15:20:12 +02:00
Matthias 8857c77645 Merge pull request #12116 from stash86/fix-recursive
move strategy load to after candle_type_def has been defined
2025-08-14 14:20:38 +02:00
Matthias 1ff4e40824 chore: remove ta-lib install scripts and helpers 2025-08-14 11:15:48 +02:00
Matthias 09d59c79a7 chore(ci): cleanup CI ta-lib specials 2025-08-14 11:15:36 +02:00
Matthias dd6ac4b196 chore: remove ta-lib install from dockerfile 2025-08-14 10:22:56 +02:00
Matthias 67fe3682b5 docs: remove ta-lib special steps 2025-08-14 10:22:50 +02:00
Matthias a07e6183bb chore: simplify setup.sh 2025-08-14 10:17:53 +02:00
Matthias ac99537c25 chore: simplify setup.ps1 removing ta-lib install 2025-08-14 10:16:46 +02:00
Matthias 734a6f0442 chore: remove ta-lib install workaround for windows 2025-08-14 10:15:41 +02:00
Matthias da52ef8729 chore: hot-fix ta-lib install on windows 2025-08-14 10:12:31 +02:00
Matthias c934535dc8 chore: remove now pointless ta-lib wheels 2025-08-14 10:07:10 +02:00
Matthias 3e3f092f0c test: reduce ta-lib test accuracy to align with ta-lib 0.6.5
Precision for ta-lib 0.6.x was increased
but is lower by 0001 than what was in the freqtrade ta-lib fix

https://github.com/TA-Lib/ta-lib/blob/main/src/ta_func/ta_utility.h#L257

This won't be a problem for any normal usdt pair.
shitcoins on some exchanges (e.g gate) with 12 zeros before the first significant digit wouldn't have worked today, either.
2025-08-14 09:59:07 +02:00
Matthias 834aafb8f2 test: non-freqai tests should run without torch installed 2025-08-14 09:37:07 +02:00
Stefano df19c77bcf better fallback 2025-08-14 16:09:43 +09:00
Stefano 6edcda1e42 fallback if strat don't specify startup candle 2025-08-14 16:06:15 +09:00
Matthias fe8c367bce Merge pull request #12115 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-08-14 07:47:26 +02:00
Stefano a37edf8c62 remove unused import 2025-08-14 12:51:27 +09:00
Stefano 09ef2c9dea move strategy load after candle type has been defined 2025-08-14 12:45:34 +09:00
Freqtrade Bot 42b1d8ecf8 chore: update pre-commit hooks 2025-08-14 03:26:18 +00:00
Matthias 32437a95f3 chore: remove unused import 2025-08-13 19:42:01 +02:00
Matthias 2e29d3523b test: empty pairlist is now handled by config schema 2025-08-13 13:17:16 +02:00
Matthias 530300a951 chore: clearer validation error handling 2025-08-13 13:15:02 +02:00
Matthias 612a09634c test: use appropriate error handlers 2025-08-13 13:08:58 +02:00
Matthias fd6a2456d0 chore: improved validation error handling 2025-08-13 13:08:51 +02:00
Matthias 1ad0e7e365 fix: force one pairlist handler via config
closes #12112
2025-08-13 13:08:41 +02:00
Matthias 055ee5c88f fix: gracefully handle telegram startup error
closes #12112
2025-08-13 12:02:12 +02:00
Matthias ae676d8e03 chore: small code refactoring, simplifying the code 2025-08-12 07:09:37 +02:00
Matthias 0dc665e45b Merge pull request #12098 from freqtrade/feat/bitget_stoploss
add bitget stoploss  support
2025-08-12 06:57:36 +02:00
Matthias bc6ea16db8 Merge pull request #12108 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-08-12 06:43:59 +02:00
Freqtrade Bot a1d0528adb chore: update pre-commit hooks 2025-08-12 03:24:31 +00:00
mrpabloyeah ecfa1fd5b5 Adjust expectation for get_markets calls in test_MarketCapPairList_timing 2025-08-11 23:54:50 +02:00
mrpabloyeah eaf76047e3 Correct syntax 2025-08-11 22:51:35 +02:00
mrpabloyeah 761d3f216e Simplify resolve_marketcap_pair() 2025-08-11 22:40:49 +02:00
mrpabloyeah e7d9ac2247 Merge branch 'freqtrade:develop' into allow-pairs-with-prefix-in-marketcap-pairList 2025-08-11 22:36:37 +02:00
Matthias 842e651928 Merge pull request #12103 from freqtrade/dependabot/pip/develop/types-aabf979877
chore(deps-dev): bump the types group with 2 updates
2025-08-11 08:36:55 +02:00
dependabot[bot] 091d1c2d55 chore(deps): bump ta-lib from 0.5.5 to 0.6.5
Bumps [ta-lib](https://github.com/ta-lib/ta-lib-python) from 0.5.5 to 0.6.5.
- [Release notes](https://github.com/ta-lib/ta-lib-python/releases)
- [Changelog](https://github.com/TA-Lib/ta-lib-python/blob/master/CHANGELOG)
- [Commits](https://github.com/ta-lib/ta-lib-python/compare/v0.5.5...v0.6.5)

---
updated-dependencies:
- dependency-name: ta-lib
  dependency-version: 0.6.5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-11 06:16:57 +00:00
Matthias 47bf2d1f26 chore: bump types in pre-commit config 2025-08-11 08:14:42 +02:00
Matthias 758392c206 Merge pull request #12100 from freqtrade/dependabot/pip/develop/torch-2.8.0
chore(deps): bump torch from 2.7.1 to 2.8.0
2025-08-11 08:13:48 +02:00
Matthias 647011bf0c Merge pull request #12106 from freqtrade/dependabot/github_actions/develop/actions/download-artifact-5
chore(deps): bump actions/download-artifact from 4 to 5
2025-08-11 08:13:34 +02:00
Matthias 580413b5f8 Merge pull request #12099 from freqtrade/dependabot/pip/develop/cryptography-45.0.6
chore(deps): bump cryptography from 45.0.5 to 45.0.6
2025-08-11 08:12:47 +02:00
Matthias c8c9e5167e Merge pull request #12105 from freqtrade/dependabot/pip/develop/pre-commit-4.3.0
chore(deps-dev): bump pre-commit from 4.2.0 to 4.3.0
2025-08-11 08:02:17 +02:00
dependabot[bot] 2e8707059d chore(deps): bump actions/download-artifact from 4 to 5
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4 to 5.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-11 05:40:44 +00:00
dependabot[bot] e0d9d01493 chore(deps-dev): bump pre-commit from 4.2.0 to 4.3.0
Bumps [pre-commit](https://github.com/pre-commit/pre-commit) from 4.2.0 to 4.3.0.
- [Release notes](https://github.com/pre-commit/pre-commit/releases)
- [Changelog](https://github.com/pre-commit/pre-commit/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pre-commit/pre-commit/compare/v4.2.0...v4.3.0)

---
updated-dependencies:
- dependency-name: pre-commit
  dependency-version: 4.3.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-11 05:38:29 +00:00
Matthias 45bf1ace7d Merge pull request #12102 from freqtrade/dependabot/pip/develop/time-machine-2.17.0
chore(deps-dev): bump time-machine from 2.16.0 to 2.17.0
2025-08-11 07:36:46 +02:00
Matthias 39a5328f5a Merge pull request #12104 from freqtrade/dependabot/pip/develop/ruff-0.12.8
chore(deps-dev): bump ruff from 0.12.7 to 0.12.8
2025-08-11 07:36:38 +02:00
dependabot[bot] 9f82738c96 chore(deps-dev): bump ruff from 0.12.7 to 0.12.8
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.12.7 to 0.12.8.
- [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.12.7...0.12.8)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-11 04:47:32 +00:00
dependabot[bot] f69f6ec8be chore(deps-dev): bump the types group with 2 updates
Bumps the types group with 2 updates: [types-requests](https://github.com/typeshed-internal/stub_uploader) and [types-python-dateutil](https://github.com/typeshed-internal/stub_uploader).


Updates `types-requests` from 2.32.4.20250611 to 2.32.4.20250809
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

Updates `types-python-dateutil` from 2.9.0.20250708 to 2.9.0.20250809
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: types-requests
  dependency-version: 2.32.4.20250809
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
- dependency-name: types-python-dateutil
  dependency-version: 2.9.0.20250809
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-11 04:47:15 +00:00
dependabot[bot] 8b3fb11f14 chore(deps-dev): bump time-machine from 2.16.0 to 2.17.0
Bumps [time-machine](https://github.com/adamchainz/time-machine) from 2.16.0 to 2.17.0.
- [Changelog](https://github.com/adamchainz/time-machine/blob/main/docs/changelog.rst)
- [Commits](https://github.com/adamchainz/time-machine/compare/2.16.0...2.17.0)

---
updated-dependencies:
- dependency-name: time-machine
  dependency-version: 2.17.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-11 04:46:55 +00:00
dependabot[bot] b0f4c57fa8 chore(deps): bump torch from 2.7.1 to 2.8.0
Bumps [torch](https://github.com/pytorch/pytorch) from 2.7.1 to 2.8.0.
- [Release notes](https://github.com/pytorch/pytorch/releases)
- [Changelog](https://github.com/pytorch/pytorch/blob/main/RELEASE.md)
- [Commits](https://github.com/pytorch/pytorch/compare/v2.7.1...v2.8.0)

---
updated-dependencies:
- dependency-name: torch
  dependency-version: 2.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-11 04:43:29 +00:00
dependabot[bot] d759deae8f chore(deps): bump cryptography from 45.0.5 to 45.0.6
Bumps [cryptography](https://github.com/pyca/cryptography) from 45.0.5 to 45.0.6.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/45.0.5...45.0.6)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 45.0.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-11 04:41:22 +00:00
Matthias b695b5a83c Merge pull request #12095 from freqtrade/dependabot/docker/python-3.13.6-slim-bookworm
chore(deps): bump python from 3.13.5-slim-bookworm to 3.13.6-slim-bookworm
2025-08-10 16:39:27 +02:00
Matthias b8883b790e test: adjust stoploss order getting for bitget 2025-08-10 16:35:53 +02:00
dependabot[bot] 423197cb23 chore(deps): bump python
Bumps python from 3.13.5-slim-bookworm to 3.13.6-slim-bookworm.

---
updated-dependencies:
- dependency-name: python
  dependency-version: 3.13.6-slim-bookworm
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-10 06:52:45 +00:00
Matthias 38107664b5 feat(bitget): Add triggered stoploss detection logic 2025-08-09 17:40:21 +02:00
Matthias 42d3f557bc chore(ci): fix windows install
temporarily pin ta-lib to <0.6.0 when searching for wheels
2025-08-09 16:11:42 +02:00
Matthias 1a3c913176 feat(bitget): Align bitget candle limits 2025-08-09 15:49:44 +02:00
Matthias 83de41ad0e test(bitget): add test for bitget ohlcv limit 2025-08-09 15:49:29 +02:00
Matthias 8cc4664823 chore: fix imports 2025-08-07 20:10:01 +02:00
Matthias aaecbc2206 test(bitget): add test for stoploss emulation 2025-08-07 20:10:01 +02:00
Matthias e36df7eff5 feat(bitget): correctly cancel stop orders 2025-08-07 20:10:01 +02:00
Matthias 95f58b2b8c feat(bitget): add stoploss support properly 2025-08-07 20:10:01 +02:00
Matthias 8df0ce3fb5 docs: add stoploss on exchange bitget 2025-08-07 20:10:01 +02:00
Matthias 4177809f71 feat(bitget): stoploss order fetching attempts 2025-08-07 20:10:01 +02:00
Matthias 96aa214fc5 Merge pull request #12092 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-08-07 06:01:21 +02:00
Matthias a3c1c8c1b4 Merge pull request #12091 from freqtrade/deps/ccxt
Bump ccxt to 4.4.99
2025-08-07 06:00:35 +02:00
Freqtrade Bot 2bf3494cbc chore: update pre-commit hooks 2025-08-07 03:31:40 +00:00
Matthias e3dd3478bb chore: bump ccxt to 4.4.99 2025-08-06 21:12:29 +02:00
Matthias 457af15b35 chore: safe basic freqAI infos to backtest result 2025-08-06 20:24:43 +02:00
Matthias 1eef1675cc Merge pull request #12084 from freqtrade/fix/backtest_feature_handling
fix: Ensure pipelines that modify feature set are supported for fast backtesting
2025-08-05 20:19:18 +02:00
Robert Caulk 89ef31b381 fix: Ensure pipelines that modify feature set are supported for fast backtesting 2025-08-05 12:49:27 +02:00
mrpabloyeah c00472c42d Merge branch 'freqtrade:develop' into allow-pairs-with-prefix-in-marketcap-pairList 2025-08-05 11:25:15 +02:00
mrpabloyeah c0143b04c8 Refactor pair resolution logic for improved clarity and modularity 2025-08-05 11:14:02 +02:00
Matthias d1c901ae94 Merge pull request #12083 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-08-05 07:16:42 +02:00
Matthias dd0aeaf380 Merge pull request #12080 from freqtrade/dependabot/github_actions/develop/docker/login-action-3.5.0
chore(deps): bump docker/login-action from 3.4.0 to 3.5.0
2025-08-05 07:10:25 +02:00
Freqtrade Bot 3e8e250a65 chore: update pre-commit hooks 2025-08-05 04:46:39 +00:00
dependabot[bot] a34b580444 chore(deps): bump docker/login-action from 3.4.0 to 3.5.0
Bumps [docker/login-action](https://github.com/docker/login-action) from 3.4.0 to 3.5.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/74a5d142397b4f367a81961eba4e8cd7edddf772...184bdaa0721073962dff0199f1fb9940f07167d1)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 3.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-05 04:46:30 +00:00
Matthias e7ea9d09c9 chore: fix typo 2025-08-05 06:45:35 +02:00
Matthias e4e11be331 chore: temporarily disable htx due to certificate issues 2025-08-05 06:34:56 +02:00
Matthias 9774c51a97 Merge pull request #12074 from freqtrade/dependabot/pip/develop/scipy-stubs-1.16.1.0
chore(deps-dev): bump scipy-stubs from 1.16.0.2 to 1.16.1.0
2025-08-04 19:57:46 +02:00
Matthias 87ff8dc7bc chore(deps-dev): update scipy-stubs in pre-commit config 2025-08-04 19:34:43 +02:00
Matthias 2434ae5476 chore: make scipy it's own group to update scipy-stubs together 2025-08-04 19:34:27 +02:00
dependabot[bot] e474294d55 chore(deps-dev): bump scipy-stubs from 1.16.0.2 to 1.16.1.0
Bumps [scipy-stubs](https://github.com/scipy/scipy-stubs) from 1.16.0.2 to 1.16.1.0.
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.16.0.2...v1.16.1.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 17:33:34 +00:00
Matthias b081716df7 Merge pull request #12075 from freqtrade/dependabot/pip/develop/sqlalchemy-2.0.42
chore(deps): bump sqlalchemy from 2.0.41 to 2.0.42
2025-08-04 19:31:26 +02:00
Matthias e1af43b133 Merge branch 'develop' into dependabot/pip/develop/sqlalchemy-2.0.42 2025-08-04 19:17:39 +02:00
mrpabloyeah 1ea6a99c48 Allow pairs with prefix in MarketCapPairList 2025-08-04 11:54:03 +02:00
Matthias 79fc80957f Merge pull request #12071 from freqtrade/dependabot/pip/develop/ruff-0.12.7
chore(deps-dev): bump ruff from 0.12.5 to 0.12.7
2025-08-04 08:42:02 +02:00
Matthias 937eedd8ca Merge pull request #12073 from freqtrade/dependabot/pip/develop/aiohttp-3.12.15
chore(deps): bump aiohttp from 3.12.14 to 3.12.15
2025-08-04 07:37:51 +02:00
dependabot[bot] 93ae45dcbb chore(deps): bump aiohttp from 3.12.14 to 3.12.15
---
updated-dependencies:
- dependency-name: aiohttp
  dependency-version: 3.12.15
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 05:13:21 +00:00
Matthias 1adbd525bc Merge pull request #12072 from freqtrade/dependabot/pip/develop/pymdown-extensions-10.16.1
chore(deps): bump pymdown-extensions from 10.16 to 10.16.1
2025-08-04 07:13:09 +02:00
Matthias ced7465c1f Merge pull request #12069 from freqtrade/dependabot/pip/develop/xgboost-3.0.3
chore(deps): bump xgboost from 3.0.2 to 3.0.3
2025-08-04 07:04:25 +02:00
Matthias d635cb8516 Merge pull request #12068 from freqtrade/dependabot/pip/develop/ccxt-4.4.98
chore(deps): bump ccxt from 4.4.96 to 4.4.98
2025-08-04 07:01:33 +02:00
Matthias 2b578633ab Merge pull request #12070 from freqtrade/dependabot/pip/develop/certifi-2025.8.3
chore(deps): bump certifi from 2025.7.14 to 2025.8.3
2025-08-04 06:52:59 +02:00
dependabot[bot] 824f555d48 chore(deps-dev): bump ruff from 0.12.5 to 0.12.7
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.12.5 to 0.12.7.
- [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.12.5...0.12.7)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 04:50:05 +00:00
Matthias 999fd15bee Merge pull request #12067 from freqtrade/dependabot/pip/develop/mypy-1.17.1
chore(deps-dev): bump mypy from 1.17.0 to 1.17.1
2025-08-04 06:42:38 +02:00
Matthias be07879a1e chore: bump sqlalchemy in pre-commit-config 2025-08-04 06:25:36 +02:00
dependabot[bot] ab543c2680 chore(deps): bump sqlalchemy from 2.0.41 to 2.0.42
Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 2.0.41 to 2.0.42.
- [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases)
- [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst)
- [Commits](https://github.com/sqlalchemy/sqlalchemy/commits)

---
updated-dependencies:
- dependency-name: sqlalchemy
  dependency-version: 2.0.42
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 04:06:27 +00:00
dependabot[bot] 79aa0bce5a chore(deps): bump pymdown-extensions from 10.16 to 10.16.1
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.16 to 10.16.1.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.16...10.16.1)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-version: 10.16.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 03:59:05 +00:00
dependabot[bot] 05a76c0297 chore(deps): bump certifi from 2025.7.14 to 2025.8.3
Bumps [certifi](https://github.com/certifi/python-certifi) from 2025.7.14 to 2025.8.3.
- [Commits](https://github.com/certifi/python-certifi/compare/2025.07.14...2025.08.03)

---
updated-dependencies:
- dependency-name: certifi
  dependency-version: 2025.8.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 03:58:33 +00:00
dependabot[bot] 15eeac3c48 chore(deps): bump xgboost from 3.0.2 to 3.0.3
Bumps [xgboost](https://github.com/dmlc/xgboost) from 3.0.2 to 3.0.3.
- [Release notes](https://github.com/dmlc/xgboost/releases)
- [Changelog](https://github.com/dmlc/xgboost/blob/master/NEWS.md)
- [Commits](https://github.com/dmlc/xgboost/compare/v3.0.2...v3.0.3)

---
updated-dependencies:
- dependency-name: xgboost
  dependency-version: 3.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 03:57:56 +00:00
dependabot[bot] d8a84a7d6b chore(deps): bump ccxt from 4.4.96 to 4.4.98
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.4.96 to 4.4.98.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.4.96...v4.4.98)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.4.98
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 03:54:29 +00:00
dependabot[bot] 863a5b7b81 chore(deps-dev): bump mypy from 1.17.0 to 1.17.1
Bumps [mypy](https://github.com/python/mypy) from 1.17.0 to 1.17.1.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.17.0...v1.17.1)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 1.17.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 03:53:13 +00:00
Matthias 4ad049aec3 test: add test-case for futures filter 2025-08-03 19:50:24 +02:00
Matthias 03c16d034d test: add test for --dex filter 2025-08-03 19:46:43 +02:00
Matthias c1f8dce109 docs: re-extract list-exchanges command partial 2025-08-03 19:46:31 +02:00
Matthias 887f513438 feat: filter list-exchanges by dex 2025-08-03 19:44:52 +02:00
Matthias 12fbae7204 chore: remove pointless dockerfile template
Noticed in #12063 - it serves no paractical use.
Developers should use the devcontainer instead.
2025-08-03 19:38:34 +02:00
Matthias a05cb8f1c5 feat: support filtering exchanges by trade mode 2025-08-03 18:25:51 +02:00
Matthias cffee80b0e chore: remove binanceje mapping 2025-08-03 17:41:55 +02:00
Matthias 0c0f2e43e8 feat: disable myOkx futures support
it's a product that doesn't exist.
2025-08-03 17:38:22 +02:00
Matthias 35456a1f32 feat: link okxus to the okx freqtrade base class
closes #12061
2025-08-03 17:34:22 +02:00
Matthias b6a6bca41b Merge pull request #12060 from freqtrade/test/kraken
Improved kraken test
2025-08-03 09:47:32 +02:00
Matthias 102cc87618 Merge pull request #12059 from freqtrade/feat/bitget
Add bitget base support
2025-08-03 09:47:19 +02:00
Matthias 1ec45dcf19 test: improve kraken fetch trades compatibility test 2025-08-03 09:15:45 +02:00
Matthias f2fb1b7919 docs(bitget): fix typo 2025-08-03 09:01:03 +02:00
Matthias 78c5b18937 docs(bitget): add bitget documentation 2025-08-03 08:51:53 +02:00
Matthias 86de1dee29 feat(bitget): add support for order time in force 2025-08-03 08:51:53 +02:00
Matthias 7afd3cb730 feat(bitget): configure mark timeframe 2025-08-03 08:51:53 +02:00
Matthias b887e2ad21 test: cleanup conftest file 2025-08-03 08:51:53 +02:00
Matthias ea2350f1ed test: add test for bitget ohlcv specifics 2025-08-03 08:51:53 +02:00
Matthias 786c858452 test: enable testing bitget spot markets 2025-08-03 08:51:53 +02:00
Matthias a6b643a33f feat: add ohlcv candle limit specific for bitget 2025-08-03 08:51:53 +02:00
Matthias 0e5235e6dc chore: add basic bitget exchange 2025-08-03 08:51:53 +02:00
Matthias c93c97c2de fix: tick_size_over_time must not use scientific notion
closes 12054
2025-08-02 11:22:19 +02:00
Matthias 271ba462b1 test: improved formatting for simplified digestion
part of #12054
2025-08-02 11:22:14 +02:00
Matthias 690918f8d3 test: add test for historic_tick_size with small numbers
part of #12054
2025-08-02 11:22:04 +02:00
Matthias de5dd66512 fix: update decimal_to_precision usage to new interface
The keyword parameter name changed in
https://github.com/ccxt/ccxt/pull/26289
Breaking how we call decimal_to_precision.
2025-08-01 06:58:32 +02:00
Matthias c8593b2307 feat: add missing keys to config schema 2025-08-01 06:58:32 +02:00
Matthias fc21757e40 Merge pull request #12055 from stash86/fix-recursive
Temporary fix in recursive analysis for candle_type_def issue
2025-08-01 06:39:20 +02:00
Stefano b6d0cde29f temporary fix until better solution is found 2025-08-01 11:24:45 +09:00
Matthias f0dfc23a5f chore: bump dev version to 2025.8 2025-07-31 19:48:24 +02:00
Matthias c9dda3480d Merge pull request #12052 from freqtrade/new_release
New release 2025.7
2025-07-31 19:47:30 +02:00
Matthias 45804e1bef chore: bump version to 2025.7 2025-07-31 06:29:50 +02:00
Matthias 6dd5dc5d2c Merge branch 'stable' into new_release 2025-07-31 06:29:29 +02:00
Matthias a5db75d361 Merge pull request #12050 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-07-31 06:22:09 +02:00
Freqtrade Bot 4c4bc2be9b chore: update pre-commit hooks 2025-07-31 03:31:12 +00:00
Matthias e9cc9bb38a test: add explaining comment about mark price test
closes #12046
2025-07-30 07:13:35 +02:00
Matthias 3b6395ddb8 test: improve ccxt compat test teardown 2025-07-29 20:12:00 +02:00
Matthias fdcbb3c0d0 chore: enable test checking funding-fee returned is not 0. 2025-07-29 20:05:54 +02:00
Matthias b07ffbf721 test: remove unused argument 2025-07-29 18:30:46 +02:00
Matthias a7b7e10c09 docs: update and simplify webhook docs 2025-07-29 07:23:03 +02:00
Matthias f18472479a chore: align rpc message fields to use order_rate 2025-07-29 07:23:03 +02:00
Matthias 18c37b9b8f Merge pull request #12044 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-07-29 06:42:24 +02:00
Freqtrade Bot d28abc18ea chore: update pre-commit hooks 2025-07-29 03:34:34 +00:00
Matthias 80b50141ee Merge pull request #12037 from freqtrade/dependabot/pip/develop/ruff-0.12.5
chore(deps-dev): bump ruff from 0.12.4 to 0.12.5
2025-07-28 07:40:37 +02:00
Matthias b15d49f9ae Merge pull request #12039 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-6.4.3
chore(deps): bump astral-sh/setup-uv from 6.4.1 to 6.4.3
2025-07-28 07:39:37 +02:00
Matthias 668635892c Merge pull request #12038 from freqtrade/dependabot/pip/develop/ccxt-4.4.96
chore(deps): bump ccxt from 4.4.95 to 4.4.96
2025-07-28 07:35:43 +02:00
Matthias 670a29d420 Merge pull request #12035 from freqtrade/dependabot/pip/develop/cmaes-0.12.0
chore(deps): bump cmaes from 0.11.1 to 0.12.0
2025-07-28 07:33:28 +02:00
Matthias fd0d089f43 Merge pull request #12034 from freqtrade/dependabot/pip/develop/numpy-2.3.2
chore(deps): bump numpy from 2.3.1 to 2.3.2
2025-07-28 07:27:12 +02:00
Matthias b5fb6888f0 Merge pull request #12032 from freqtrade/dependabot/pip/develop/orjson-3.11.1
chore(deps): bump orjson from 3.11.0 to 3.11.1
2025-07-28 07:20:35 +02:00
Matthias edc23dcd2f Merge pull request #12031 from freqtrade/dependabot/pip/develop/rich-14.1.0
chore(deps): bump rich from 14.0.0 to 14.1.0
2025-07-28 07:16:11 +02:00
Matthias 1dc299f6f4 Merge pull request #12036 from freqtrade/dependabot/pip/develop/scipy-1.16.1
chore(deps): bump scipy from 1.16.0 to 1.16.1
2025-07-28 07:12:44 +02:00
Matthias 99d2423534 Merge pull request #12033 from freqtrade/dependabot/pip/develop/mkdocs-9c6b142b23
chore(deps): bump mkdocs-material from 9.6.15 to 9.6.16 in the mkdocs group
2025-07-28 07:09:41 +02:00
Matthias b8b8da2eb2 Merge pull request #12030 from freqtrade/dependabot/pip/develop/stable-baselines3-2.7.0
chore(deps): bump stable-baselines3 from 2.6.0 to 2.7.0
2025-07-28 06:52:25 +02:00
dependabot[bot] 4237d9fd11 chore(deps): bump astral-sh/setup-uv from 6.4.1 to 6.4.3
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 6.4.1 to 6.4.3.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/7edac99f961f18b581bbd960d59d049f04c0002f...e92bafb6253dcd438e0484186d7669ea7a8ca1cc)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 6.4.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 04:21:49 +00:00
dependabot[bot] b98a91ba4c chore(deps): bump ccxt from 4.4.95 to 4.4.96
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.4.95 to 4.4.96.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.4.95...v4.4.96)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.4.96
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 04:06:42 +00:00
dependabot[bot] e74db3e024 chore(deps-dev): bump ruff from 0.12.4 to 0.12.5
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.12.4 to 0.12.5.
- [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.12.4...0.12.5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 04:05:08 +00:00
dependabot[bot] ead3282229 chore(deps): bump scipy from 1.16.0 to 1.16.1
Bumps [scipy](https://github.com/scipy/scipy) from 1.16.0 to 1.16.1.
- [Release notes](https://github.com/scipy/scipy/releases)
- [Commits](https://github.com/scipy/scipy/compare/v1.16.0...v1.16.1)

---
updated-dependencies:
- dependency-name: scipy
  dependency-version: 1.16.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 04:03:27 +00:00
dependabot[bot] dfd9e7e777 chore(deps): bump cmaes from 0.11.1 to 0.12.0
Bumps [cmaes](https://github.com/CyberAgentAILab/cmaes) from 0.11.1 to 0.12.0.
- [Release notes](https://github.com/CyberAgentAILab/cmaes/releases)
- [Commits](https://github.com/CyberAgentAILab/cmaes/compare/v0.11.1...v0.12.0)

---
updated-dependencies:
- dependency-name: cmaes
  dependency-version: 0.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 04:02:06 +00:00
dependabot[bot] 71362c9140 chore(deps): bump numpy from 2.3.1 to 2.3.2
Bumps [numpy](https://github.com/numpy/numpy) from 2.3.1 to 2.3.2.
- [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.3.1...v2.3.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 04:01:45 +00:00
dependabot[bot] 68114691c6 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.6.15 to 9.6.16
- [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.6.15...9.6.16)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 04:01:08 +00:00
dependabot[bot] 37a3bdd507 chore(deps): bump orjson from 3.11.0 to 3.11.1
Bumps [orjson](https://github.com/ijl/orjson) from 3.11.0 to 3.11.1.
- [Release notes](https://github.com/ijl/orjson/releases)
- [Changelog](https://github.com/ijl/orjson/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ijl/orjson/compare/3.11.0...3.11.1)

---
updated-dependencies:
- dependency-name: orjson
  dependency-version: 3.11.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 04:00:32 +00:00
dependabot[bot] 50389cbbf4 chore(deps): bump rich from 14.0.0 to 14.1.0
Bumps [rich](https://github.com/Textualize/rich) from 14.0.0 to 14.1.0.
- [Release notes](https://github.com/Textualize/rich/releases)
- [Changelog](https://github.com/Textualize/rich/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Textualize/rich/compare/v14.0.0...v14.1.0)

---
updated-dependencies:
- dependency-name: rich
  dependency-version: 14.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 04:00:17 +00:00
dependabot[bot] a7e5d3e427 chore(deps): bump stable-baselines3 from 2.6.0 to 2.7.0
Bumps [stable-baselines3](https://github.com/DLR-RM/stable-baselines3) from 2.6.0 to 2.7.0.
- [Release notes](https://github.com/DLR-RM/stable-baselines3/releases)
- [Commits](https://github.com/DLR-RM/stable-baselines3/compare/v2.6.0...v2.7.0)

---
updated-dependencies:
- dependency-name: stable-baselines3
  dependency-version: 2.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-28 03:58:59 +00:00
Matthias 48d1106546 fix: undefined candle_type_def in lookahead-analysis 2025-07-27 14:43:19 +02:00
Matthias 6452521002 Merge pull request #12026 from hippocritical/develop
Add Numpy2.0 np.NaN => np.nan conversion to strategy_updater
2025-07-26 13:19:28 +02:00
hippocritical 52374b39f2 adds numpy.NaN => np.nan conversion to the strategy updater since numpy2.0 changed that, now it throws errors.
To adjust more of those we can now easily expand on it.
This includes aliases for imports as well.
2025-07-26 11:22:07 +02:00
Matthias 300a866aac test: update test for new logic 2025-07-26 09:48:12 +02:00
Matthias 9873a862e0 fix: improve startup_candle_count assignment 2025-07-26 09:48:06 +02:00
Matthias 1c8bbc14b8 fix: initialize exchange before strategy 2025-07-26 09:21:02 +02:00
Matthias afa1311ff8 chore: fix odd comment formatting 2025-07-26 09:12:46 +02:00
Matthias 3ecc9c30cb Merge pull request #12021 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-07-24 06:50:02 +02:00
Freqtrade Bot a85bb040f2 chore: update pre-commit hooks 2025-07-24 03:30:04 +00:00
Matthias 841e480ff5 test: add test for get_dry_run_wallet 2025-07-22 07:14:37 +02:00
Matthias a0e9b77f75 fix: fix problem in for dict based wallets 2025-07-22 07:14:37 +02:00
Matthias 47d59f8ff4 Merge pull request #12003 from freqtrade/dependabot/pip/develop/pyarrow-21.0.0
chore(deps): bump pyarrow from 20.0.0 to 21.0.0
2025-07-22 07:04:46 +02:00
Matthias 676c48411b Merge pull request #12014 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-07-22 06:52:41 +02:00
Matthias 954950c8cb chore: update pyarrow pre-compiled wheel 2025-07-22 06:43:50 +02:00
Matthias 2520b7cd51 chore: add missing fields 2025-07-22 06:43:16 +02:00
Matthias f9d7f05d38 chore: sort conf_required alphabetically 2025-07-22 06:41:57 +02:00
Freqtrade Bot 46d4ff3d36 chore: update pre-commit hooks 2025-07-22 03:30:48 +00:00
Matthias 9347d823fc chore: re-word variable to match it's purpose
closes #12013
2025-07-21 21:08:42 +02:00
Matthias 5e8bd359c8 Merge pull request #12009 from freqtrade/dependabot/pip/develop/jsonschema-4.25.0
chore(deps): bump jsonschema from 4.24.0 to 4.25.0
2025-07-21 12:34:08 +02:00
Matthias bae8a55f81 Merge pull request #12012 from freqtrade/dependabot/pip/develop/mypy-1.17.0
chore(deps-dev): bump mypy from 1.16.1 to 1.17.0
2025-07-21 10:42:31 +02:00
dependabot[bot] 56c672b6d2 chore(deps-dev): bump mypy from 1.16.1 to 1.17.0
---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 1.17.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 06:35:33 +00:00
Matthias de3956f2f9 Merge pull request #12008 from freqtrade/dependabot/pip/develop/ruff-0.12.4
chore(deps-dev): bump ruff from 0.12.3 to 0.12.4
2025-07-21 08:30:43 +02:00
Matthias ddd7009fa8 Merge pull request #12011 from freqtrade/dependabot/pip/develop/types-83c738a83e
chore(deps-dev): bump types-cachetools from 6.0.0.20250525 to 6.1.0.20250717 in the types group
2025-07-21 08:11:10 +02:00
dependabot[bot] 31891b25af chore(deps-dev): bump ruff from 0.12.3 to 0.12.4
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.12.3 to 0.12.4.
- [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.12.3...0.12.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 05:57:17 +00:00
Matthias 187b19b1d6 Merge pull request #12010 from freqtrade/dependabot/pip/develop/pytest-b7c466671f
chore(deps-dev): bump pytest-asyncio from 1.0.0 to 1.1.0 in the pytest group
2025-07-21 07:55:50 +02:00
dependabot[bot] e55d8512e7 chore(deps): bump pyarrow from 20.0.0 to 21.0.0
Bumps [pyarrow](https://github.com/apache/arrow) from 20.0.0 to 21.0.0.
- [Release notes](https://github.com/apache/arrow/releases)
- [Commits](https://github.com/apache/arrow/compare/apache-arrow-20.0.0...apache-arrow-21.0.0)

---
updated-dependencies:
- dependency-name: pyarrow
  dependency-version: 21.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 05:46:12 +00:00
Matthias 697912f244 Merge pull request #12006 from freqtrade/dependabot/pip/develop/technical-1.5.2
chore(deps): bump technical from 1.5.1 to 1.5.2
2025-07-21 07:45:47 +02:00
Matthias 2f3ad09cf5 Merge pull request #12004 from freqtrade/dependabot/pip/develop/scikit-learn-1.7.1
chore(deps): bump scikit-learn from 1.7.0 to 1.7.1
2025-07-21 07:45:06 +02:00
Matthias 523dd305ba Merge pull request #12007 from freqtrade/dependabot/pip/develop/python-telegram-bot-22.3
chore(deps): bump python-telegram-bot from 22.2 to 22.3
2025-07-21 07:39:23 +02:00
Matthias 2d87d74829 Merge pull request #12005 from freqtrade/dependabot/pip/develop/orjson-3.11.0
chore(deps): bump orjson from 3.10.18 to 3.11.0
2025-07-21 07:30:59 +02:00
Matthias 820791e889 Merge pull request #12002 from freqtrade/dependabot/pip/develop/tensorboard-2.20.0
chore(deps): bump tensorboard from 2.19.0 to 2.20.0
2025-07-21 07:10:24 +02:00
Matthias a130122cc6 chore: bump pre-commit types for cachetools 2025-07-21 06:49:52 +02:00
Matthias 3a58297a8d docs: improve hyperliquid doc clarity further 2025-07-21 06:29:32 +02:00
Matthias 65d22f9f1c Merge pull request #12001 from freqtrade/dependabot/github_actions/develop/astral-sh/setup-uv-6.4.1
chore(deps): bump astral-sh/setup-uv from 6.3.1 to 6.4.1
2025-07-21 06:22:12 +02:00
dependabot[bot] ec5df87318 chore(deps-dev): bump types-cachetools in the types group
Bumps the types group with 1 update: [types-cachetools](https://github.com/typeshed-internal/stub_uploader).


Updates `types-cachetools` from 6.0.0.20250525 to 6.1.0.20250717
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: types-cachetools
  dependency-version: 6.1.0.20250717
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 04:22:04 +00:00
dependabot[bot] cf1533c478 chore(deps-dev): bump pytest-asyncio in the pytest group
Bumps the pytest group with 1 update: [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio).


Updates `pytest-asyncio` from 1.0.0 to 1.1.0
- [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases)
- [Commits](https://github.com/pytest-dev/pytest-asyncio/compare/v1.0.0...v1.1.0)

---
updated-dependencies:
- dependency-name: pytest-asyncio
  dependency-version: 1.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: pytest
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 04:22:03 +00:00
dependabot[bot] fc34f8cad2 chore(deps): bump jsonschema from 4.24.0 to 4.25.0
Bumps [jsonschema](https://github.com/python-jsonschema/jsonschema) from 4.24.0 to 4.25.0.
- [Release notes](https://github.com/python-jsonschema/jsonschema/releases)
- [Changelog](https://github.com/python-jsonschema/jsonschema/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/python-jsonschema/jsonschema/compare/v4.24.0...v4.25.0)

---
updated-dependencies:
- dependency-name: jsonschema
  dependency-version: 4.25.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 04:21:50 +00:00
dependabot[bot] 3fbb38730c chore(deps): bump python-telegram-bot from 22.2 to 22.3
Bumps [python-telegram-bot](https://github.com/python-telegram-bot/python-telegram-bot) from 22.2 to 22.3.
- [Release notes](https://github.com/python-telegram-bot/python-telegram-bot/releases)
- [Commits](https://github.com/python-telegram-bot/python-telegram-bot/compare/v22.2...v22.3)

---
updated-dependencies:
- dependency-name: python-telegram-bot
  dependency-version: '22.3'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 04:20:43 +00:00
dependabot[bot] 6a327440e0 chore(deps): bump technical from 1.5.1 to 1.5.2
---
updated-dependencies:
- dependency-name: technical
  dependency-version: 1.5.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 04:20:25 +00:00
dependabot[bot] f1c8d8325b chore(deps): bump orjson from 3.10.18 to 3.11.0
Bumps [orjson](https://github.com/ijl/orjson) from 3.10.18 to 3.11.0.
- [Release notes](https://github.com/ijl/orjson/releases)
- [Changelog](https://github.com/ijl/orjson/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ijl/orjson/compare/3.10.18...3.11.0)

---
updated-dependencies:
- dependency-name: orjson
  dependency-version: 3.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 04:20:24 +00:00
dependabot[bot] d2557a70d7 chore(deps): bump scikit-learn from 1.7.0 to 1.7.1
Bumps [scikit-learn](https://github.com/scikit-learn/scikit-learn) from 1.7.0 to 1.7.1.
- [Release notes](https://github.com/scikit-learn/scikit-learn/releases)
- [Commits](https://github.com/scikit-learn/scikit-learn/compare/1.7.0...1.7.1)

---
updated-dependencies:
- dependency-name: scikit-learn
  dependency-version: 1.7.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 04:20:08 +00:00
dependabot[bot] bf76347751 chore(deps): bump tensorboard from 2.19.0 to 2.20.0
Bumps [tensorboard](https://github.com/tensorflow/tensorboard) from 2.19.0 to 2.20.0.
- [Release notes](https://github.com/tensorflow/tensorboard/releases)
- [Changelog](https://github.com/tensorflow/tensorboard/blob/master/RELEASE.md)
- [Commits](https://github.com/tensorflow/tensorboard/compare/2.19.0...2.20.0)

---
updated-dependencies:
- dependency-name: tensorboard
  dependency-version: 2.20.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 04:17:28 +00:00
dependabot[bot] a99a49e2af chore(deps): bump astral-sh/setup-uv from 6.3.1 to 6.4.1
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 6.3.1 to 6.4.1.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/bd01e18f51369d5a26f1651c3cb451d3417e3bba...7edac99f961f18b581bbd960d59d049f04c0002f)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 6.4.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 03:32:53 +00:00
Matthias b7fc924e82 docs: update backtest docs to explain missing metrics 2025-07-20 10:06:51 +02:00
Matthias ef55bf6800 fix: use absolute daily profit instead of relative
closes #11987
2025-07-20 10:06:43 +02:00
Matthias 25ffc76655 docs(hyperliquid): documentation for hyperliquid vault / subaccount
closes #11500
2025-07-20 09:45:59 +02:00
Matthias 15b1cff9c2 docs: hyperliquid - clarify walletAddress further ... 2025-07-20 08:35:33 +02:00
Matthias c1ba2936ec test: update ccxt_config test to set defaultSettle for bybit 2025-07-19 16:14:27 +02:00
Matthias f08c0c9870 feat: bybit - set defaultSettle to allow fetchPositions to work in usdc markets 2025-07-19 15:58:18 +02:00
Matthias 3b5b8bd007 feat: enable USDC futures for bybit
closes #11809
2025-07-19 15:34:27 +02:00
Matthias 74067d454b feat: Update bybit liquidation price docstring 2025-07-19 15:26:19 +02:00
Matthias 16359d617d chore: disable ws tests for hyperliquid for now 2025-07-19 15:08:32 +02:00
Matthias ae9f83ed30 refactor: simplify ws_test 2025-07-19 15:07:53 +02:00
Matthias 49626ca31c Merge pull request #11997 from freqtrade/bump/ccxt
Bump ccxt to 4.4.95
2025-07-19 09:41:12 +02:00
Matthias 884f543fb7 chore: bump ccxt to 4.4.95 2025-07-19 09:03:50 +02:00
Matthias 29df7499c5 chore: improve error output 2025-07-19 08:30:10 +02:00
Matthias 5e64416dfa test: add test for profit_all 2025-07-18 20:17:19 +02:00
Matthias 1118032c1f feat: add /profit_all endpoint 2025-07-18 20:17:11 +02:00
Matthias 277828b1d4 chore(tests): reduce hyperliquid timeframe
UBTC wasn't listed for long enough
2025-07-18 18:27:36 +02:00
Matthias 47dcf7bc93 chore(ci): Switch hyperliquid tests to a more active pair 2025-07-18 07:17:31 +02:00
Matthias 75081ab046 docs: add /profit_long and short to telegram docs 2025-07-18 06:58:20 +02:00
Matthias 571497e58b Merge pull request #11974 from qqqqqf-q/feat/telegram-profit-direction
feat(telegram): Add /profit long and /profit short commands
2025-07-18 06:54:21 +02:00
Matthias d710c85cda chore: simplify profit-callback logic 2025-07-17 21:02:46 +02:00
Matthias 978f9c804b chore: improved code structure and types 2025-07-17 20:59:04 +02:00
Matthias 31522c681e feat: update get_best_pair to allow better filtering 2025-07-17 20:28:31 +02:00
Matthias a5ac8a95a7 feat: update get_trading_volume interface to allow filtering for more props 2025-07-17 20:23:59 +02:00
Matthias 35dab9b566 test: fix typo in test name 2025-07-17 07:28:53 +02:00
Matthias 2b05a49671 test: Update telegram /profit tests 2025-07-17 07:26:45 +02:00
Matthias b79b5b6c32 refactor: move profit test next to each other 2025-07-17 07:21:05 +02:00
Matthias 78124cd025 feat: support /profit long, too 2025-07-17 07:20:15 +02:00
Matthias 7c4c789711 chore: fix message formatting issue 2025-07-17 07:10:32 +02:00
Matthias 30b32a0d2e fix: don't call stoploss-adjust after trade has closed
closes #11990
2025-07-17 06:59:53 +02:00
Matthias d33768ecee Merge pull request #11992 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-07-17 06:38:42 +02:00
Freqtrade Bot ccf20b2fe1 chore: update pre-commit hooks 2025-07-17 03:29:45 +00:00
Matthias 23bbbddcdb chore: improve backtest doc clarity 2025-07-16 20:24:48 +02:00
Matthias c6ed64746c chore: sort pairs by absolute profit 2025-07-16 20:22:56 +02:00
Matthias 8f4dfbf55d chore: remove long-deprecated and pointless metric 2025-07-16 20:18:26 +02:00
Matthias 5296a3be23 fix: order_filled errors must be ignored 2025-07-16 20:18:26 +02:00
qqqqqf c92c64bac2 Modify the duplicate functions.
Modify the original three duplicate functions (_profit_short, _profit_long, _profit), and add _profit_handler and _format_profit_message.

Refactor telegram.py and rpc.py.

Sorry for the duplicate functions yesterday, I was a bit rushed.

Both pytest and ruff have passed.
2025-07-16 11:43:51 +08:00
Matthias aaca904455 chore: improved pull request template wording 2025-07-15 20:11:00 +02:00
qqqqqf 19b57ad87e Add /profit long and /profit short commands#2
# Added `/profit_long` and `/profit_short` Commands

Users can now use commands like:

- `/profit_long [<n>]`
- `/profit_short [<n>]`
- `/profit [<n>]`

---

## Key Changes Implemented

### `freqtrade/rpc/telegram.py`:

- The `_profit` command handler has been updated to robustly parse `long` or `short` as optional arguments.
  - **Translation:** The `_profit` command handler has been improved to reliably interpret `long` or `short` as optional parameters.

- The determined direction is passed to the RPC layer.
  - **Translation:** The direction determined (either `long` or `short`) is passed to the RPC layer.

- The `/help` command documentation is updated.
  - **Translation:** The documentation for the `/help` command has been updated accordingly.

---

### `freqtrade/rpc/rpc.py`:

- The `_rpc_trade_statistics` method now accepts a direction parameter.
  - **Translation:** The `_rpc_trade_statistics` method has been updated to accept a `direction` parameter.

- The method has been refactored into a main function and a `_process_trade_stats` helper function to reduce complexity and improve readability.
  - **Translation:** The method has been refactored into a main function and a helper function, `_process_trade_stats`, to reduce complexity and improve readability.

- The database query filter is dynamically modified to include a condition on `Trade.is_short` when a direction is provided.
  - **Translation:** The database query filter dynamically adjusts to include a condition on `Trade.is_short` when a direction is specified.

---

### `tests/rpc/test_rpc_telegram.py`:

- Existing tests for `_profit` have been updated to match the new message format.
  - **Translation:** Existing tests for the `_profit` function have been updated to match the new message format.

- New test cases have been added to specifically validate the `long` and `short` filtering functionality.
  - **Translation:** New test cases have been added to specifically validate the filtering functionality for `long` and `short` trades.

---

## Testing

- All local `pytest` tests pass successfully.
  - **Translation:** All local `pytest` tests have passed successfully.

- All `ruff` linter checks pass.
  - **Translation:** All `ruff` code checks have passed.

- As I do not have a full local deployment, I am relying on the CI pipeline for final validation.
  - **Translation:** Since I don't have a complete local deployment, I am relying on the CI pipeline for final validation.

---
This time, only a little AI was used :)
Except for the translation.
2025-07-15 19:15:04 +08:00
qqqqqf 583738040c Merge branch 'freqtrade:develop' into feat/telegram-profit-direction 2025-07-15 16:49:02 +08:00
Matthias 6e38b72601 chore: Improve pull request template to be clear against AI 2025-07-15 07:05:41 +02:00
Matthias 8bf8ccfe50 Merge pull request #11985 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-07-15 06:25:00 +02:00
Freqtrade Bot e721a741ca chore: update pre-commit hooks 2025-07-15 03:31:05 +00:00
Matthias 19e9effae4 Merge pull request #11980 from freqtrade/dependabot/pip/develop/python-rapidjson-1.21
chore(deps): bump python-rapidjson from 1.20 to 1.21
2025-07-14 18:16:13 +02:00
Matthias 84100ca7ae Merge pull request #11976 from freqtrade/dependabot/pip/develop/types-1a612854d0
chore(deps-dev): bump types-python-dateutil from 2.9.0.20250516 to 2.9.0.20250708 in the types group
2025-07-14 08:20:49 +02:00
Matthias a6f94f7d24 Merge pull request #11978 from freqtrade/dependabot/pip/develop/certifi-2025.7.14
chore(deps): bump certifi from 2025.6.15 to 2025.7.14
2025-07-14 08:17:42 +02:00
Matthias 0a32be3fc3 Merge pull request #11982 from freqtrade/dependabot/pip/develop/pandas-2.3.1
chore(deps): bump pandas from 2.3.0 to 2.3.1
2025-07-14 08:11:32 +02:00
Matthias 065203c3db Merge pull request #11983 from freqtrade/dependabot/pip/develop/aiohttp-3.12.14
chore(deps): bump aiohttp from 3.12.13 to 3.12.14
2025-07-14 08:03:44 +02:00
Matthias 758ae42092 Merge pull request #11979 from freqtrade/dependabot/pip/develop/fastapi-0.116.1
chore(deps): bump fastapi from 0.115.14 to 0.116.1
2025-07-14 07:47:55 +02:00
dependabot[bot] 6fdc0f1b22 chore(deps): bump aiohttp from 3.12.13 to 3.12.14
Bumps [aiohttp](https://github.com/aio-libs/aiohttp) from 3.12.13 to 3.12.14.
- [Release notes](https://github.com/aio-libs/aiohttp/releases)
- [Changelog](https://github.com/aio-libs/aiohttp/blob/master/CHANGES.rst)
- [Commits](https://github.com/aio-libs/aiohttp/compare/v3.12.13...v3.12.14)

---
updated-dependencies:
- dependency-name: aiohttp
  dependency-version: 3.12.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 05:37:47 +00:00
dependabot[bot] 7c9fe22b9f chore(deps): bump pandas from 2.3.0 to 2.3.1
Bumps [pandas](https://github.com/pandas-dev/pandas) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/pandas-dev/pandas/releases)
- [Commits](https://github.com/pandas-dev/pandas/compare/v2.3.0...v2.3.1)

---
updated-dependencies:
- dependency-name: pandas
  dependency-version: 2.3.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 05:37:46 +00:00
Matthias 53aecfa856 Merge pull request #11981 from freqtrade/dependabot/pip/develop/ccxt-4.4.94
chore(deps): bump ccxt from 4.4.92 to 4.4.94
2025-07-14 07:36:31 +02:00
Matthias bf511f12d4 Merge pull request #11977 from freqtrade/dependabot/pip/develop/ruff-0.12.3
chore(deps-dev): bump ruff from 0.12.2 to 0.12.3
2025-07-14 07:19:19 +02:00
Matthias 0eed655e7c chore: bump types-dateutil in pre-commit config 2025-07-14 06:42:42 +02:00
dependabot[bot] d2d283a4b2 chore(deps): bump ccxt from 4.4.92 to 4.4.94
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.4.92 to 4.4.94.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.4.92...v4.4.94)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.4.94
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 04:28:22 +00:00
dependabot[bot] 85492c1084 chore(deps): bump python-rapidjson from 1.20 to 1.21
Bumps [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) from 1.20 to 1.21.
- [Changelog](https://github.com/python-rapidjson/python-rapidjson/blob/master/CHANGES.rst)
- [Commits](https://github.com/python-rapidjson/python-rapidjson/compare/v1.20...v1.21)

---
updated-dependencies:
- dependency-name: python-rapidjson
  dependency-version: '1.21'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 04:28:21 +00:00
dependabot[bot] f07134bf66 chore(deps): bump fastapi from 0.115.14 to 0.116.1
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.115.14 to 0.116.1.
- [Release notes](https://github.com/fastapi/fastapi/releases)
- [Commits](https://github.com/fastapi/fastapi/compare/0.115.14...0.116.1)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-version: 0.116.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 04:28:19 +00:00
dependabot[bot] 7678a59b1f chore(deps): bump certifi from 2025.6.15 to 2025.7.14
Bumps [certifi](https://github.com/certifi/python-certifi) from 2025.6.15 to 2025.7.14.
- [Commits](https://github.com/certifi/python-certifi/compare/2025.06.15...2025.07.14)

---
updated-dependencies:
- dependency-name: certifi
  dependency-version: 2025.7.14
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 04:27:14 +00:00
dependabot[bot] daced63d00 chore(deps-dev): bump ruff from 0.12.2 to 0.12.3
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.12.2 to 0.12.3.
- [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.12.2...0.12.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 04:25:44 +00:00
dependabot[bot] 002d8c4022 chore(deps-dev): bump types-python-dateutil in the types group
Bumps the types group with 1 update: [types-python-dateutil](https://github.com/typeshed-internal/stub_uploader).


Updates `types-python-dateutil` from 2.9.0.20250516 to 2.9.0.20250708
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: types-python-dateutil
  dependency-version: 2.9.0.20250708
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: types
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 04:21:02 +00:00
Matthias 8c85448ed7 chore: remove unused import 2025-07-13 16:04:25 +02:00
Matthias 2236b08fc2 refactor: improved exchange init sequence 2025-07-13 16:03:51 +02:00
Matthias 24f904efc4 test: fix failing test 2025-07-13 15:41:00 +02:00
Matthias 3eaa862caf chore: remove modetrade wrong imports 2025-07-13 13:34:03 +02:00
Matthias 469587e656 feat: add modetrade exchange base config 2025-07-13 13:08:47 +02:00
Matthias b24064d706 refactor: move default trading mode determination to exchange 2025-07-13 13:04:37 +02:00
Matthias c4a29a0178 test: ensure candle_type_def is set properly 2025-07-13 13:04:37 +02:00
Matthias aedbe0d1d2 chore: add spot to available trading modes 2025-07-13 13:04:37 +02:00
Matthias c5e3f7d0ba chore: default trading-mode to first in supported list 2025-07-13 13:04:37 +02:00
Matthias bc019d6b6d chore: Explicitly type variable 2025-07-13 13:04:33 +02:00
Matthias f889061b95 refactor: don't assume all exchanges support spot markets 2025-07-13 10:27:33 +02:00
Matthias 1f52ff3f94 feat: enable websocket support for hyperliquid
This should be treated as experimental (experimental).
2025-07-13 10:20:48 +02:00
Matthias d0c3b30289 docs: add explanation message about "couldn't reuse" 2025-07-13 09:55:36 +02:00
Matthias e77feafee0 fix: avoid unnecessary log message when filling ws message 2025-07-13 09:52:05 +02:00
Matthias 1889a315a3 chore: fix comment location 2025-07-13 09:41:48 +02:00
Matthias cc998afb44 chore: explicitly disable hyperliquid websockets
Add comment explaining the reason
2025-07-13 09:37:05 +02:00
qqqqqf 97f30cf13d feat(telegram): Add /profit long and /profit short commands
This commit enhances the /profit Telegram command to allow filtering by trade direction.

- The `_profit` handler in `telegram.py` now parses 'long'/'short' arguments and passes the direction to the RPC layer.
- The `_rpc_trade_statistics` method in `rpc.py` is updated to filter trades based on the provided direction. It has also been refactored for lower complexity.
- The `/help` command documentation is updated to reflect the new functionality.
- Corresponding unit tests in `test_rpc_telegram.py` are updated and extended to cover the new cases.
2025-07-12 08:41:39 +08:00
Matthias ccbc48b590 refactor: improve method ordering 2025-07-10 07:08:35 +02:00
Matthias dde6001ad0 Merge pull request #11972 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-07-10 06:30:36 +02:00
Freqtrade Bot aae3ab23ac chore: update pre-commit hooks 2025-07-10 03:27:16 +00:00
Matthias 604e08382e Merge pull request #11899 from mrpabloyeah/add-current-drawdown-in-telegram-profit-command
Add current drawdown in telegram profit command
2025-07-09 06:40:28 +02:00
Matthias 2ecadabd92 chore: align API endpoints 2025-07-08 20:09:17 +02:00
Matthias 17c7826756 Merge branch 'develop' into add-current-drawdown-in-telegram-profit-command 2025-07-08 19:59:42 +02:00
Matthias fe92df7842 chore: revert unnecessary edits 2025-07-08 19:59:37 +02:00
mrpabloyeah e6dd932436 Expand calculate_max_drawdown() to return the current drawdown data and use it instead of calculate_current_drawdown() 2025-07-08 13:00:48 +02:00
Matthias 8acc05bb2d chore: update wording in exception message 2025-07-08 06:59:52 +02:00
Matthias c39f6f892b Merge pull request #11968 from freqtrade/update/pre-commit-hooks
Update pre-commit hooks
2025-07-08 06:54:38 +02:00
Freqtrade Bot f13b51cf91 chore: update pre-commit hooks 2025-07-08 03:26:25 +00:00
Matthias e90c60c940 chore: improved response on delete order 2025-07-07 19:26:35 +02:00
Matthias 60029c2a8b fix: improved message when nonexisting trade is deleted
part of #11967
2025-07-07 19:20:24 +02:00
Matthias 14429d449c Merge pull request #11965 from freqtrade/dependabot/pip/develop/scipy-stubs-1.16.0.2
chore(deps-dev): bump scipy-stubs from 1.15.3.0 to 1.16.0.2
2025-07-07 07:15:41 +02:00
Matthias cba9d6078c Merge pull request #11964 from freqtrade/dependabot/pip/develop/cryptography-45.0.5
chore(deps): bump cryptography from 45.0.4 to 45.0.5
2025-07-07 07:09:44 +02:00
Matthias 2dfad98ed6 Merge pull request #11962 from freqtrade/dependabot/pip/develop/mkdocs-7fcd3881cb
chore(deps): bump mkdocs-material from 9.6.14 to 9.6.15 in the mkdocs group
2025-07-07 06:55:46 +02:00
Matthias 9de9cac23a chore: bump scipy-stubs in pre-commit config 2025-07-07 06:46:39 +02:00
dependabot[bot] d1fd7c3f6e chore(deps): bump cryptography from 45.0.4 to 45.0.5
Bumps [cryptography](https://github.com/pyca/cryptography) from 45.0.4 to 45.0.5.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/45.0.4...45.0.5)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 45.0.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 04:45:48 +00:00
Matthias 8fd5b93127 Merge pull request #11961 from freqtrade/dependabot/pip/develop/pytest-21071ef1ad
chore(deps-dev): bump pytest-xdist from 3.7.0 to 3.8.0 in the pytest group
2025-07-07 06:44:58 +02:00
Matthias dafa5d4bac Merge pull request #11966 from freqtrade/dependabot/pip/develop/ccxt-4.4.92
chore(deps): bump ccxt from 4.4.91 to 4.4.92
2025-07-07 06:44:34 +02:00
Matthias d29cd5b9d9 Merge pull request #11963 from freqtrade/dependabot/pip/develop/ruff-0.12.2
chore(deps-dev): bump ruff from 0.12.1 to 0.12.2
2025-07-07 06:44:18 +02:00
dependabot[bot] 60094c6581 chore(deps): bump ccxt from 4.4.91 to 4.4.92
Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.4.91 to 4.4.92.
- [Release notes](https://github.com/ccxt/ccxt/releases)
- [Changelog](https://github.com/ccxt/ccxt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ccxt/ccxt/compare/v4.4.91...v4.4.92)

---
updated-dependencies:
- dependency-name: ccxt
  dependency-version: 4.4.92
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 03:58:24 +00:00
dependabot[bot] dd32e228ce chore(deps-dev): bump scipy-stubs from 1.15.3.0 to 1.16.0.2
Bumps [scipy-stubs](https://github.com/scipy/scipy-stubs) from 1.15.3.0 to 1.16.0.2.
- [Release notes](https://github.com/scipy/scipy-stubs/releases)
- [Commits](https://github.com/scipy/scipy-stubs/compare/v1.15.3.0...v1.16.0.2)

---
updated-dependencies:
- dependency-name: scipy-stubs
  dependency-version: 1.16.0.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 03:58:09 +00:00
dependabot[bot] 81639c61a8 chore(deps-dev): bump ruff from 0.12.1 to 0.12.2
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.12.1 to 0.12.2.
- [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.12.1...0.12.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 03:55:54 +00:00
dependabot[bot] ae1fcbcffb 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.6.14 to 9.6.15
- [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.6.14...9.6.15)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 03:55:33 +00:00
dependabot[bot] 263d035181 chore(deps-dev): bump pytest-xdist in the pytest group
Bumps the pytest group with 1 update: [pytest-xdist](https://github.com/pytest-dev/pytest-xdist).


Updates `pytest-xdist` from 3.7.0 to 3.8.0
- [Release notes](https://github.com/pytest-dev/pytest-xdist/releases)
- [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v3.7.0...v3.8.0)

---
updated-dependencies:
- dependency-name: pytest-xdist
  dependency-version: 3.8.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: pytest
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 03:51:40 +00:00
Matthias 8ecd7011cb Merge pull request #11953 from freqtrade/drop_3.10
Drop support for python 3.10
2025-07-06 08:58:54 +02:00
Matthias f7d42ba60d chore: add TODO to eventually remove warning 2025-07-05 19:58:47 +02:00
Matthias 701cf47c4b fix: implement fall-through for leverage tier finding
We'll for now issue a warning about this - and use the "current" tier
This way, gaps in tier data (between maxNotional and the next
minNotional) no longer cause an operational exception.

closes #11923
2025-07-05 19:56:52 +02:00
Matthias 315009a7f0 chore: move comment to correct location 2025-07-05 19:50:26 +02:00
Matthias 6e98a369de test: add test case for #11923 2025-07-05 19:44:24 +02:00
Matthias fa69b7017b test: add TIA/USDT:USDT test leverage tier
part of #11923
2025-07-05 19:44:12 +02:00
Matthias e98f3cfedf docs: Update "tag" examples with advanced examples 2025-07-05 08:56:10 +02:00
Matthias 5f4184536a docs: update max enter_tag length 2025-07-05 08:41:08 +02:00
Matthias ac904c60c8 fix: powershell syntax error 2025-07-05 08:38:02 +02:00
Matthias 16defdbfdf chore: autoformat actual code 2025-07-04 19:29:12 +02:00
Matthias d010a050d3 chore: autoformat tests 2025-07-04 19:29:12 +02:00
Matthias 7b541ff958 test: refactor test to use asyncio.timeout 2025-07-04 19:29:12 +02:00
Matthias 78a47920ef chore: Update dockerfile syntax 2025-07-04 19:26:38 +02:00
Matthias e5a2011a85 ci: don't switch docker to experimental 2025-07-04 18:29:15 +02:00
Matthias 640cab2ca8 refactor: tests - update timezone.utc to UTC 2025-07-04 18:22:42 +02:00
Matthias deb8bde078 refactor: tests - update timezone.utc to UTC 2025-07-04 18:22:42 +02:00
Matthias 79f0271720 refactor: Asyncio timeoutError update 2025-07-04 18:22:42 +02:00
Matthias 5b8b80cf59 refactor: Update timezone.utc to UTC 2025-07-04 18:22:42 +02:00
Matthias a7ee45a0ba refactor: Update timezone.utc to UTC 2025-07-04 18:22:42 +02:00
Matthias 37cc949d94 refactor: Update utc to UTC 2025-07-04 18:22:42 +02:00
Matthias 5f59e1435e chore: bump known 3.11+ dependencies 2025-07-04 18:22:42 +02:00
Matthias e1f26aeb4e chore!: drop support for python 3.10 2025-07-04 18:22:42 +02:00
Matthias b49dafc412 docs: update to 3.11+ version requirement 2025-07-04 18:22:42 +02:00
Matthias 7c84059b3a chore: drop support for pytohn 3.10 in setup scripts 2025-07-04 18:22:42 +02:00
Matthias 10a0bf386b ci: Don't test against 3.10 2025-07-04 18:22:42 +02:00
Matthias 2936cb425d Merge pull request #11948 from jorenham/scipy-stubs
Add `scipy-stubs` as dev dependency
2025-07-04 15:55:56 +02:00
Matthias e5a9c65e66 ci: improve pre-commit-update check 2025-07-04 15:25:27 +02:00
Matthias 81fdff1039 chore: simplify exchangews_ohlcv further 2025-07-04 15:24:44 +02:00
Matthias 5101b1767b test: slightly cleanup ws_ohlcv test 2025-07-04 15:04:24 +02:00
Matthias e90aa6abda test: Increased asyncio.sleep for ws_ohlcv test 2025-07-04 14:39:19 +02:00
Matthias 1dd56df5d8 chore: improve sorting in mypy deps 2025-07-04 14:24:30 +02:00
Matthias 9bd8b7acf5 test: use event based init for telegram 2025-07-03 21:08:09 +02:00
Matthias 2a5a422079 test: attempt to fix test_exchangews_ohlcv flakyness 2025-07-03 21:08:09 +02:00
Matthias e92afb74c6 test: improve event-loop mocking 2025-07-03 21:08:09 +02:00
Matthias 4421e54cde fix: don't disable existing loggers when reinitializing logging
closes #11944
2025-07-03 17:44:23 +02:00
Matthias b5938985f2 fix: don't log at "root" level. 2025-07-03 15:21:51 +02:00
jorenham 0601f15bd0 Add scipy-stubs as dev dependency
https://github.com/scipy/scipy-stubs
2025-07-03 13:58:12 +02:00
Matthias 66020d250c test: update test trades pagination handling to use _ft_has 2025-07-03 09:00:27 +02:00
Matthias 909286c0f7 chore: luno - remove unnecessary config 2025-07-03 08:58:16 +02:00
Matthias 5efad94d3d chore: add zizmor github action 2025-07-03 08:41:59 +02:00
Matthias 1e24653e79 feat: add luno basic exchange configuration
closes #11928
2025-07-03 08:37:54 +02:00
Matthias c9bc2b880a feat: add always_require_api_keys to ft_has 2025-07-03 08:33:15 +02:00
Matthias 545cd3a994 chore: ft_has should be before remove_credentials 2025-07-03 08:33:12 +02:00
Matthias 51a09585db refactor: extract final ft_has construction to it's own method 2025-07-03 08:19:04 +02:00
Matthias b98816635d chore: simplify exchange class setup
remove attributes that are only used once.
2025-07-03 08:18:58 +02:00
Matthias f6ed609134 Merge pull request #11946 from freqtrade/update/binance-leverage-tiers
Update Binance Leverage Tiers
2025-07-03 07:34:36 +02:00
Freqtrade Bot aec2dc5bb0 chore: update pre-commit hooks 2025-07-03 03:27:09 +00:00
Matthias 15c836c566 chore: bump version to 2025.7-dev 2025-07-02 20:18:15 +02:00
mrpabloyeah 2ebc5374f4 Add current drawdown in telegram profit command 2025-06-21 12:10:53 +02:00
Ali Salama 4e2ccfc091 Added use_parallel_download command line option 2025-04-25 15:50:56 +01:00
Ali Salama e4b1e1118b Changed filter to pop 2025-04-25 10:33:39 +01:00
Ali Salama ba2e798f7d Added data.empty / new pair check 2025-04-12 11:35:23 +01:00
Ali Salama 85edef8394 Changed to use refresh_latest_ohlcv 2025-04-12 10:15:31 +01:00
Ali Salama 559f6e2791 Parallelisation of iterative data downloads 2025-04-11 16:16:07 +01:00
416 changed files with 82022 additions and 47684 deletions
+2 -1
View File
@@ -14,10 +14,11 @@ MANIFEST.in
README.md
freqtrade.service
freqtrade.egg-info
.venv/
config.json*
*.sqlite
user_data
user_data/
*.log
.vscode
+5
View File
@@ -1,5 +1,10 @@
<!-- Thank you for sending your pull request. But first, have you included
unit tests, and is your code PEP8 conformant? [More details](https://github.com/freqtrade/freqtrade/blob/develop/CONTRIBUTING.md)
Did you use AI to create your changes?
If so, please state it clearly in the PR description (failing to do so may result in your PR being closed).
Also, please do a self review of the changes made before submitting the PR to make sure only relevant changes are included.
-->
## Summary
+93
View File
@@ -0,0 +1,93 @@
name: 'docker-tags'
description: 'Set Docker default Tag environment variables'
# inputs:
outputs:
BRANCH_NAME:
description: 'The branch name'
value: ${{ steps.tags.outputs.BRANCH_NAME }}
TAG:
description: 'The Docker tag'
value: ${{ steps.tags.outputs.TAG }}
TAG_PLOT:
description: 'The Docker tag for the plot'
value: ${{ steps.tags.outputs.TAG_PLOT }}
TAG_FREQAI:
description: 'The Docker tag for the freqai'
value: ${{ steps.tags.outputs.TAG_FREQAI }}
TAG_FREQAI_RL:
description: 'The Docker tag for the freqai_rl'
value: ${{ steps.tags.outputs.TAG_FREQAI_RL }}
TAG_FREQAI_TORCH:
description: 'The Docker tag for the freqai_torch'
value: ${{ steps.tags.outputs.TAG_FREQAI_TORCH }}
TAG_ARM:
description: 'The Docker tag for the arm'
value: ${{ steps.tags.outputs.TAG_ARM }}
TAG_PLOT_ARM:
description: 'The Docker tag for the plot arm'
value: ${{ steps.tags.outputs.TAG_PLOT_ARM }}
TAG_FREQAI_ARM:
description: 'The Docker tag for the freqai arm'
value: ${{ steps.tags.outputs.TAG_FREQAI_ARM }}
TAG_FREQAI_RL_ARM:
description: 'The Docker tag for the freqai_rl arm'
value: ${{ steps.tags.outputs.TAG_FREQAI_RL_ARM }}
TAG_PI:
description: 'The Docker tag for the pi'
value: ${{ steps.tags.outputs.TAG_PI }}
CACHE_TAG_PI:
description: 'The Docker cache tag for the pi'
value: ${{ steps.tags.outputs.CACHE_TAG_PI }}
runs:
using: "composite"
steps:
- name: Extract branch name
shell: bash
id: tags
env:
BRANCH_NAME_INPUT: ${{ github.event.inputs.branch_name }}
EVENT_NAME: ${{ github.event_name }}
run: |
if [ "${EVENT_NAME}" = "workflow_dispatch" ]; then
BRANCH_NAME="${BRANCH_NAME_INPUT}"
else
BRANCH_NAME="${GITHUB_REF##*/}"
fi
# Replace / with _ to create a valid tag
TAG=$(echo "${BRANCH_NAME}" | sed -e "s/\//_/g")
TAG_PLOT=${TAG}_plot
TAG_FREQAI=${TAG}_freqai
TAG_FREQAI_RL=${TAG_FREQAI}rl
TAG_FREQAI_TORCH=${TAG_FREQAI}torch
TAG_ARM=${TAG}_arm
TAG_PLOT_ARM=${TAG_PLOT}_arm
TAG_FREQAI_ARM=${TAG_FREQAI}_arm
TAG_FREQAI_RL_ARM=${TAG_FREQAI_RL}_arm
TAG_PI="${TAG}_pi"
CACHE_TAG_PI=${CACHE_IMAGE}:${TAG_PI}_cache
echo "BRANCH_NAME=${BRANCH_NAME}" >> "$GITHUB_OUTPUT"
echo "TAG=${TAG}" >> "$GITHUB_OUTPUT"
echo "TAG_PLOT=${TAG_PLOT}" >> "$GITHUB_OUTPUT"
echo "TAG_FREQAI=${TAG_FREQAI}" >> "$GITHUB_OUTPUT"
echo "TAG_FREQAI_RL=${TAG_FREQAI_RL}" >> "$GITHUB_OUTPUT"
echo "TAG_FREQAI_TORCH=${TAG_FREQAI_TORCH}" >> "$GITHUB_OUTPUT"
echo "TAG_ARM=${TAG_ARM}" >> "$GITHUB_OUTPUT"
echo "TAG_PLOT_ARM=${TAG_PLOT_ARM}" >> "$GITHUB_OUTPUT"
echo "TAG_FREQAI_ARM=${TAG_FREQAI_ARM}" >> "$GITHUB_OUTPUT"
echo "TAG_FREQAI_RL_ARM=${TAG_FREQAI_RL_ARM}" >> "$GITHUB_OUTPUT"
echo "TAG_PI=${TAG_PI}" >> "$GITHUB_OUTPUT"
echo "CACHE_TAG_PI=${CACHE_TAG_PI}" >> "$GITHUB_OUTPUT"
cat "$GITHUB_OUTPUT"
- name: Save commit SHA to file
shell: bash
# Add commit to docker container
run: |
echo "${GITHUB_SHA}" > freqtrade_commit
+41 -6
View File
@@ -1,6 +1,10 @@
version: 2
updates:
- package-ecosystem: docker
- package-ecosystem: docker # zizmor: ignore[dependabot-cooldown] Docker does not support cooldowns at the moment.
# Docker does not support cooldowns at the moment.
# https://github.com/dependabot/dependabot-core/issues/14044
# cooldown:
# default-days: 7
directories:
- "/"
- "/docker"
@@ -11,12 +15,24 @@ updates:
update-types: ["version-update:semver-major"]
open-pull-requests-limit: 10
- package-ecosystem: devcontainers
directory: "/"
cooldown:
default-days: 7
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: pip
directory: "/"
cooldown:
default-days: 7
exclude:
- ccxt
schedule:
interval: weekly
time: "03:00"
timezone: "Etc/UTC"
interval: "cron"
# Monday at 03:00
cronjob: "0 3 * * 1"
open-pull-requests-limit: 15
target-branch: develop
groups:
@@ -29,10 +45,29 @@ updates:
mkdocs:
patterns:
- "mkdocs*"
scipy:
patterns:
- "scipy"
- "scipy-stubs"
gymnasium:
patterns:
- "gymnasium"
- "stable-baselines3"
- "sb3-contrib"
- package-ecosystem: "github-actions"
directory: "/"
cooldown:
default-days: 7
schedule:
interval: "weekly"
interval: "cron"
# Monday at 03:00
cronjob: "0 3 * * 1"
open-pull-requests-limit: 10
target-branch: develop
groups:
actions:
patterns:
- "actions/*"
docker:
patterns:
- "docker/*"
+15 -7
View File
@@ -2,29 +2,37 @@ name: Binance Leverage tiers update
on:
schedule:
- cron: "0 3 * * 4"
- cron: "25 2 * * 4"
# on demand
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}
cancel-in-progress: true
permissions:
contents: read
jobs:
auto-update:
name: "Auto Update Binance Leverage Tiers"
runs-on: ubuntu-latest
environment:
name: develop
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/setup-python@v5
- name: Install uv and Python 🐍
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
python-version: "3.12"
activate-environment: true
enable-cache: false
python-version: "3.14"
- name: Install ccxt
run: pip install ccxt
run: uv pip install $(grep -E "^ccxt==" requirements.txt) $(grep -E "^orjson==" requirements.txt)
- name: Run leverage tier update
env:
@@ -34,7 +42,7 @@ jobs:
run: python build_helpers/binance_update_lev_tiers.py
- uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e # v7.0.8
- uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1
with:
token: ${{ secrets.REPO_SCOPED_TOKEN }}
add-paths: freqtrade/exchange/binance_leverage_tiers.json
@@ -43,7 +51,7 @@ jobs:
Dependencies
branch: update/binance-leverage-tiers
title: Update Binance Leverage Tiers
commit-message: "chore: update pre-commit hooks"
commit-message: "chore: update binance leverage tiers"
committer: Freqtrade Bot <154552126+freqtrade-bot@users.noreply.github.com>
author: Freqtrade Bot <154552126+freqtrade-bot@users.noreply.github.com>
body: Update binance leverage tiers.
+144 -351
View File
@@ -16,55 +16,40 @@ on:
concurrency:
group: "${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}"
cancel-in-progress: true
permissions:
repository-projects: read
jobs:
build-linux:
permissions: {}
jobs:
tests:
name: "Tests and Linting"
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ "ubuntu-22.04", "ubuntu-24.04" ]
python-version: ["3.10", "3.11", "3.12", "3.13"]
os: [ "ubuntu-22.04", "ubuntu-24.04", "macos-14", "macos-15" , "windows-2022", "windows-2025" ]
python-version: ["3.11", "3.12", "3.13", "3.14"]
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install uv
uses: astral-sh/setup-uv@bd01e18f51369d5a26f1651c3cb451d3417e3bba # v6.3.1
- name: Install uv and Python 🐍
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
activate-environment: true
enable-cache: true
python-version: ${{ matrix.python-version }}
cache-dependency-glob: "requirements**.txt"
cache-suffix: "${{ matrix.python-version }}"
prune-cache: false
- name: Cache_dependencies
uses: actions/cache@v4
id: cache
with:
path: ~/dependencies/
key: ${{ runner.os }}-dependencies
- name: TA binary *nix
if: steps.cache.outputs.cache-hit != 'true'
- name: Installation - macOS (Brew)
if: ${{ runner.os == 'macOS' }}
run: |
cd build_helpers && ./install_ta-lib.sh ${HOME}/dependencies/; cd ..
# brew update
# TODO: Should be the brew upgrade
brew install libomp
- name: Installation - *nix
- name: Installation (python)
run: |
uv pip install --upgrade wheel
export LD_LIBRARY_PATH=${HOME}/dependencies/lib:$LD_LIBRARY_PATH
export TA_LIBRARY_PATH=${HOME}/dependencies/lib
export TA_INCLUDE_PATH=${HOME}/dependencies/include
uv pip install -r requirements-dev.txt
uv pip install -e ft_client/
uv pip install -e .
@@ -76,36 +61,38 @@ jobs:
- name: Tests
if: (!(runner.os == 'Linux' && matrix.python-version == '3.12' && matrix.os == 'ubuntu-24.04'))
run: |
pytest --random-order
pytest --random-order --durations 20 -n auto
- name: Tests with Coveralls
if: (runner.os == 'Linux' && matrix.python-version == '3.12' && matrix.os == 'ubuntu-24.04')
run: |
pytest --random-order --cov=freqtrade --cov=freqtrade_client --cov-config=.coveragerc
- name: Coveralls
- uses: codecov/codecov-action@e79a6962e0d4c0c17b229090214935d2e33f8354 # v6.0.1
if: (runner.os == 'Linux' && matrix.python-version == '3.12' && matrix.os == 'ubuntu-24.04')
with:
fail_ci_if_error: true
token: ${{ secrets.CODECOV_TOKEN }} # zizmor: ignore[secrets-outside-env] Intentionally not using environment variable.
- name: Cleanup codecov dirty state files
if: (runner.os == 'Linux' && matrix.python-version == '3.12' && matrix.os == 'ubuntu-24.04')
env:
# Coveralls token. Not used as secret due to github not providing secrets to forked repositories
COVERALLS_REPO_TOKEN: 6D1m0xupS3FgutfuGao8keFf9Hc0FpIXu
run: |
# Allow failure for coveralls
uv pip install coveralls
coveralls || true
# See https://github.com/codecov/codecov-action/issues/1851
rm -rf codecov codecov.SHA256SUM codecov.SHA256SUM.sig
- name: Run json schema extract
# This should be kept before the repository check to ensure that the schema is up-to-date
# This must be kept before the repository check to ensure that the schema is up-to-date
run: |
python build_helpers/extract_config_json_schema.py
- name: Run command docs partials extract
# This should be kept before the repository check to ensure that the docs are up-to-date
# This must be kept before the repository check to ensure that the docs are up-to-date
if: ${{ (matrix.python-version == '3.13') }}
run: |
python build_helpers/create_command_partials.py
- name: Check for repository changes
# TODO: python 3.13 slightly changed the output of argparse.
if: (matrix.python-version != '3.13')
- name: Check for repository changes - *nix
if: ${{ (runner.os != 'Windows') }}
run: |
if [ -n "$(git status --porcelain)" ]; then
echo "Repository is dirty, changes detected:"
@@ -116,212 +103,8 @@ jobs:
echo "Repository is clean, no changes detected."
fi
- name: Backtesting (multi)
run: |
cp tests/testdata/config.tests.json config.json
freqtrade create-userdir --userdir user_data
freqtrade new-strategy -s AwesomeStrategy
freqtrade new-strategy -s AwesomeStrategyMin --template minimal
freqtrade backtesting --datadir tests/testdata --strategy-list AwesomeStrategy AwesomeStrategyMin -i 5m
- name: Hyperopt
run: |
cp tests/testdata/config.tests.json config.json
freqtrade create-userdir --userdir user_data
freqtrade hyperopt --datadir tests/testdata -e 6 --strategy SampleStrategy --hyperopt-loss SharpeHyperOptLossDaily --print-all
- name: Sort imports (isort)
run: |
isort --check .
- name: Run Ruff
run: |
ruff check --output-format=github
- name: Run Ruff format check
run: |
ruff format --check
- name: Mypy
if: matrix.os == 'ubuntu-24.04'
run: |
mypy freqtrade scripts tests
- name: Discord notification
uses: rjstone/discord-webhook-notify@c2597273488aeda841dd1e891321952b51f7996f #v2.2.1
if: failure() && ( github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == false)
with:
severity: error
details: Freqtrade CI failed on ${{ matrix.os }}
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
build-macos:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ "macos-14", "macos-15" ]
python-version: ["3.10", "3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@v4
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
check-latest: true
- name: Install uv
uses: astral-sh/setup-uv@bd01e18f51369d5a26f1651c3cb451d3417e3bba # v6.3.1
with:
activate-environment: true
enable-cache: true
python-version: ${{ matrix.python-version }}
cache-dependency-glob: "requirements**.txt"
cache-suffix: "${{ matrix.python-version }}"
prune-cache: false
- name: Cache_dependencies
uses: actions/cache@v4
id: cache
with:
path: ~/dependencies/
key: ${{ matrix.os }}-dependencies
- name: TA binary *nix
if: steps.cache.outputs.cache-hit != 'true'
run: |
cd build_helpers && ./install_ta-lib.sh ${HOME}/dependencies/; cd ..
- name: Installation - macOS (Brew)
run: |
# brew update
# TODO: Should be the brew upgrade
# homebrew fails to update python due to unlinking failures
# https://github.com/actions/runner-images/issues/6817
rm /usr/local/bin/2to3 || true
rm /usr/local/bin/2to3-3.11 || true
rm /usr/local/bin/2to3-3.12 || true
rm /usr/local/bin/idle3 || true
rm /usr/local/bin/idle3.11 || true
rm /usr/local/bin/idle3.12 || true
rm /usr/local/bin/pydoc3 || true
rm /usr/local/bin/pydoc3.11 || true
rm /usr/local/bin/pydoc3.12 || true
rm /usr/local/bin/python3 || true
rm /usr/local/bin/python3.11 || true
rm /usr/local/bin/python3.12 || true
rm /usr/local/bin/python3-config || true
rm /usr/local/bin/python3.11-config || true
rm /usr/local/bin/python3.12-config || true
brew install libomp
- name: Installation (python)
run: |
uv pip install wheel
export LD_LIBRARY_PATH=${HOME}/dependencies/lib:$LD_LIBRARY_PATH
export TA_LIBRARY_PATH=${HOME}/dependencies/lib
export TA_INCLUDE_PATH=${HOME}/dependencies/include
uv pip install -r requirements-dev.txt
uv pip install -e ft_client/
uv pip install -e .
- name: Tests
run: |
pytest --random-order
- name: Check for repository changes
run: |
if [ -n "$(git status --porcelain)" ]; then
echo "Repository is dirty, changes detected:"
git status
git diff
exit 1
else
echo "Repository is clean, no changes detected."
fi
- name: Backtesting
run: |
cp tests/testdata/config.tests.json config.json
freqtrade create-userdir --userdir user_data
freqtrade new-strategy -s AwesomeStrategyAdv --template advanced
freqtrade backtesting --datadir tests/testdata --strategy AwesomeStrategyAdv
- name: Hyperopt
run: |
cp tests/testdata/config.tests.json config.json
freqtrade create-userdir --userdir user_data
freqtrade hyperopt --datadir tests/testdata -e 5 --strategy SampleStrategy --hyperopt-loss SharpeHyperOptLossDaily --print-all
- name: Sort imports (isort)
run: |
isort --check .
- name: Run Ruff
run: |
ruff check --output-format=github
- name: Run Ruff format check
run: |
ruff format --check
- name: Mypy
if: matrix.os == 'macos-15'
run: |
mypy freqtrade scripts
- name: Discord notification
uses: rjstone/discord-webhook-notify@c2597273488aeda841dd1e891321952b51f7996f #v2.2.1
if: failure() && ( github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == false)
with:
severity: info
details: Test Succeeded!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
build-windows:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ windows-latest ]
python-version: ["3.10", "3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@v4
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install uv
uses: astral-sh/setup-uv@bd01e18f51369d5a26f1651c3cb451d3417e3bba # v6.3.1
with:
activate-environment: true
enable-cache: true
python-version: ${{ matrix.python-version }}
cache-dependency-glob: "requirements**.txt"
cache-suffix: "${{ matrix.python-version }}"
prune-cache: false
- name: Installation
run: |
function uvpipFunction { uv pip $args }
Set-Alias -name pip -value uvpipFunction
./build_helpers/install_windows.ps1
- name: Tests
run: |
pytest --random-order --durations 20 -n auto
- name: Check for repository changes
- name: Check for repository changes - Windows
if: ${{ runner.os == 'Windows' }}
run: |
if (git status --porcelain) {
Write-Host "Repository is dirty, changes detected:"
@@ -333,17 +116,20 @@ jobs:
Write-Host "Repository is clean, no changes detected."
}
- name: Backtesting
- name: Backtesting (multi)
run: |
cp tests/testdata/config.tests.json config.json
freqtrade create-userdir --userdir user_data
freqtrade backtesting --datadir tests/testdata --strategy SampleStrategy
cp tests/testdata/config.tests.json user_data/config.json
freqtrade new-strategy -s AwesomeStrategy
freqtrade new-strategy -s AwesomeStrategyMin --template minimal
freqtrade new-strategy -s AwesomeStrategyAdv --template advanced
freqtrade backtesting --datadir tests/testdata --strategy-list AwesomeStrategy AwesomeStrategyMin AwesomeStrategyAdv -i 5m
- name: Hyperopt
run: |
cp tests/testdata/config.tests.json config.json
freqtrade create-userdir --userdir user_data
freqtrade hyperopt --datadir tests/testdata -e 5 --strategy SampleStrategy --hyperopt-loss SharpeHyperOptLossDaily --print-all
freqtrade hyperopt --datadir tests/testdata -e 6 --strategy SampleStrategy --hyperopt-loss SharpeHyperOptLossDaily --print-all
- name: Run Ruff
run: |
@@ -354,61 +140,72 @@ jobs:
ruff format --check
- name: Mypy
if: ${{ matrix.os == 'ubuntu-24.04' || matrix.os == 'macos-15' }}
run: |
mypy freqtrade scripts tests
- name: Run Pester tests (PowerShell)
if: ${{ runner.os == 'Windows' }}
shell: powershell
run: |
$PSVersionTable
Set-PSRepository psgallery -InstallationPolicy trusted
Install-Module -Name Pester -RequiredVersion 5.3.1 -Confirm:$false -Force -SkipPublisherCheck
Get-PSRepository | Format-List *
if (-not (Get-PSRepository -Name PSGallery -ErrorAction SilentlyContinue)) {
Register-PSRepository -Default
}
Set-PSRepository PSGallery -InstallationPolicy Trusted
Install-Module -Name Pester -RequiredVersion 5.7.1 -Confirm:$false -Force -SkipPublisherCheck
$Error.clear()
Invoke-Pester -Path "tests" -CI
if ($Error.Length -gt 0) {exit 1}
shell: powershell
- name: Discord notification
uses: rjstone/discord-webhook-notify@c2597273488aeda841dd1e891321952b51f7996f #v2.2.1
if: failure() && ( github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == false)
uses: sarisia/actions-status-discord@eb045afee445dc055c18d3d90bd0f244fd062708 # v1.16.0
if: ${{ failure() && ( github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == false) }}
with:
severity: error
details: Test Failed
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
color: '#FF0000' # red
title: Freqtrade CI failed on ${{ matrix.os }} with Python ${{ matrix.python-version }}!
webhook: ${{ secrets.DISCORD_WEBHOOK }} # zizmor: ignore[secrets-outside-env] Intentionally not using environment variable.
mypy-version-check:
runs-on: ubuntu-22.04
name: "Mypy Version Check"
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
- name: Install uv and Python 🐍
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
python-version: "3.12"
activate-environment: true
python-version: "3.13"
- name: pre-commit dependencies
run: |
pip install pyaml
uv pip install $(grep -E "^pyyaml==" requirements-dev.txt)
python build_helpers/pre_commit_update.py
pre-commit:
name: "Pre-commit checks"
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/setup-python@v5
- name: Set up Python 🐍
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "3.12"
python-version: "3.13"
- uses: pre-commit/action@2c7b3805fd2a0fd8c1884dcaebf91fc102a13ecd # v3.0.1
docs-check:
name: "Documentation build"
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
@@ -416,134 +213,118 @@ jobs:
run: |
./tests/test_docs.sh
- name: Set up Python
uses: actions/setup-python@v5
- name: Install uv and Python 🐍
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
python-version: "3.12"
activate-environment: true
python-version: "3.13"
- name: Documentation build
run: |
pip install -r docs/requirements-docs.txt
uv pip install -r docs/requirements-docs.txt
mkdocs build
- name: Discord notification
uses: rjstone/discord-webhook-notify@c2597273488aeda841dd1e891321952b51f7996f #v2.2.1
uses: sarisia/actions-status-discord@eb045afee445dc055c18d3d90bd0f244fd062708 # v1.16.0
if: failure() && ( github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == false)
with:
severity: error
details: Freqtrade doc test failed!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
color: '#FF0000' # red
title: Freqtrade doc test failed!
webhook: ${{ secrets.DISCORD_WEBHOOK }} # zizmor: ignore[secrets-outside-env] Intentionally not using environment variable.
build-linux-online:
# Run pytest with "live" checks
name: "Online / live tests"
runs-on: ubuntu-24.04
strategy:
matrix:
python-version: ["3.12"]
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install uv
uses: astral-sh/setup-uv@bd01e18f51369d5a26f1651c3cb451d3417e3bba # v6.3.1
- name: Install uv and Python 🐍
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
activate-environment: true
enable-cache: true
python-version: "3.12"
python-version: "${{ matrix.python-version }}"
cache-dependency-glob: "requirements**.txt"
cache-suffix: "3.12"
prune-cache: false
- name: Cache_dependencies
uses: actions/cache@v4
id: cache
with:
path: ~/dependencies/
key: ${{ runner.os }}-dependencies
- name: TA binary *nix
if: steps.cache.outputs.cache-hit != 'true'
run: |
cd build_helpers && ./install_ta-lib.sh ${HOME}/dependencies/; cd ..
- name: Installation - *nix
run: |
uv pip install --upgrade wheel
export LD_LIBRARY_PATH=${HOME}/dependencies/lib:$LD_LIBRARY_PATH
export TA_LIBRARY_PATH=${HOME}/dependencies/lib
export TA_INCLUDE_PATH=${HOME}/dependencies/include
uv pip install -r requirements-dev.txt
uv pip install -e ft_client/
uv pip install -e .
- name: Tests incl. ccxt compatibility tests
env:
CI_WEB_PROXY: http://152.67.78.211:13128
CI_WEB_PROXY: http://152.67.66.8:13128
run: |
pytest --random-order --longrun --durations 20 -n auto
# Notify only once - when CI completes (and after deploy) in case it's successful
notify-complete:
name: "Notify CI Completion"
needs: [
build-linux,
build-macos,
build-windows,
docs-check,
mypy-version-check,
pre-commit,
build,
build-linux-online
]
runs-on: ubuntu-22.04
# Discord notification can't handle schedule events
if: github.event_name != 'schedule' && github.repository == 'freqtrade/freqtrade'
permissions:
repository-projects: read
steps:
- name: Check user permission
id: check
uses: scherermichael-oss/action-has-permission@136e061bfe093832d87f090dd768e14e27a740d3 # 1.0.6
with:
required-permission: write
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Discord notification
uses: rjstone/discord-webhook-notify@c2597273488aeda841dd1e891321952b51f7996f #v2.2.1
if: always() && steps.check.outputs.has-permission && ( github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == false)
uses: sarisia/actions-status-discord@eb045afee445dc055c18d3d90bd0f244fd062708 # v1.16.0
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == false
with:
severity: info
details: Test Completed!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
color: '#00FF00' # green
title: Test Completed!
webhook: ${{ secrets.DISCORD_WEBHOOK }} # zizmor: ignore[secrets-outside-env] Intentionally not using environment variable.
build:
if: always()
name: "Build"
needs: [ build-linux, build-macos, build-windows, docs-check, mypy-version-check, pre-commit ]
needs: [
tests,
docs-check,
mypy-version-check,
pre-commit,
]
runs-on: ubuntu-22.04
strategy:
matrix:
python-version: ["3.13"]
steps:
- uses: actions/checkout@v4
- name: Decide whether the needed jobs succeeded or failed
uses: re-actors/alls-green@05ac9388f0aebcb5727afa17fcccfecd6f8ec5fe # v1.2.2
with:
jobs: ${{ toJSON(needs) }}
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
- name: Install uv and Python 🐍
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
python-version: "3.12"
activate-environment: true
python-version: "${{ matrix.python-version }}"
- name: Build distribution
run: |
pip install -U build
uv pip install $(grep -E "^build==" requirements-dev.txt)
python -m build --sdist --wheel
- name: Upload artifacts 📦
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: freqtrade-build
path: |
@@ -552,11 +333,10 @@ jobs:
- name: Build Client distribution
run: |
pip install -U build
python -m build --sdist --wheel ft_client
- name: Upload artifacts 📦
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: freqtrade-client-build
path: |
@@ -572,22 +352,22 @@ jobs:
name: testpypi
url: https://test.pypi.org/p/freqtrade
permissions:
id-token: write
id-token: write # Needed for pypa/gh-action-pypi-publish
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Download artifact 📦
uses: actions/download-artifact@v4
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
pattern: freqtrade*-build
path: dist
merge-multiple: true
- name: Publish to PyPI (Test)
uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4
uses: pypa/gh-action-pypi-publish@cef221092ed1bacb1cc03d23a2d87d1d172e277b # v1.14.0
with:
repository-url: https://test.pypi.org/legacy/
@@ -601,33 +381,46 @@ jobs:
name: pypi
url: https://pypi.org/p/freqtrade
permissions:
id-token: write
id-token: write # Needed for pypa/gh-action-pypi-publish
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Download artifact 📦
uses: actions/download-artifact@v4
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
pattern: freqtrade*-build
path: dist
merge-multiple: true
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4
uses: pypa/gh-action-pypi-publish@cef221092ed1bacb1cc03d23a2d87d1d172e277b # v1.14.0
docker-build:
name: "Docker Build and Deploy"
needs: [ build-linux, build-macos, build-windows, docs-check, mypy-version-check, pre-commit ]
needs: [
build,
]
if: (github.event_name == 'push' || github.event_name == 'schedule' || github.event_name == 'release') && github.repository == 'freqtrade/freqtrade'
uses: ./.github/workflows/docker-build.yml
permissions:
packages: write
packages: write # Needed to push package versions
contents: read
secrets:
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} # zizmor: ignore[secrets-outside-env] Intentionally not using environment variable.
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }}
packages-cleanup:
name: "Docker Package Cleanup"
uses: ./.github/workflows/packages-cleanup.yml
# Only run on push, schedule, or release events
if: (github.event_name == 'push' || github.event_name == 'schedule') && github.repository == 'freqtrade/freqtrade'
permissions:
packages: write # Needed to delete package versions
with:
package_name: 'freqtrade'
+9 -6
View File
@@ -11,6 +11,9 @@ on:
# disable permissions for all of the available permissions
permissions: {}
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
build-docs:
@@ -19,19 +22,19 @@ jobs:
name: Deploy Docs through mike
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: true
- name: Set up Python
uses: actions/setup-python@v5
- name: Install uv and Python 🐍
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
python-version: '3.12'
activate-environment: true
python-version: '3.13'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r docs/requirements-docs.txt
uv pip install -r docs/requirements-docs.txt
- name: Fetch gh-pages branch
run: |
+18 -4
View File
@@ -17,26 +17,40 @@ concurrency:
group: "${{ github.workflow }}"
cancel-in-progress: true
permissions:
contents: read
jobs:
build-and-push:
name: "Build and Push Devcontainer Image"
permissions:
packages: write
packages: write # Needed to push package versions
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Login to GitHub Container Registry
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Pre-build dev container image
uses: devcontainers/ci@8bf61b26e9c3a98f69cb6ce2f88d24ff59b785c6 # v0.3.19
uses: devcontainers/ci@b63b30de439b47a52267f241112c5b453b673db5 # v0.3.1900000449
with:
subFolder: .github
imageName: ghcr.io/${{ github.repository }}-devcontainer
cacheFrom: ghcr.io/${{ github.repository }}-devcontainer
push: always
packages-cleanup:
name: "Docker Package Cleanup"
uses: ./.github/workflows/packages-cleanup.yml
# Only run on push, schedule, or release events
if: (github.event_name == 'push' || github.event_name == 'schedule') && github.repository == 'freqtrade/freqtrade'
permissions:
packages: write # Needed to delete package versions
with:
package_name: 'freqtrade-devcontainer'
+254 -69
View File
@@ -3,9 +3,9 @@ name: Docker Build and Deploy
on:
workflow_call:
secrets:
DOCKER_PASSWORD:
DOCKERHUB_USERNAME:
required: true
DOCKER_USERNAME:
DOCKERHUB_TOKEN:
required: true
DISCORD_WEBHOOK:
required: false
@@ -17,116 +17,301 @@ on:
default: 'develop'
type: string
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
permissions:
contents: read
env:
IMAGE_NAME: "freqtradeorg/freqtrade"
CACHE_IMAGE: "freqtradeorg/freqtrade_cache"
GHCR_IMAGE_NAME: "ghcr.io/freqtrade/freqtrade"
PI_PLATFORM: "linux/arm/v7"
jobs:
deploy-docker:
name: "Deploy Docker x64 and armv7l"
runs-on: ubuntu-22.04
if: github.repository == 'freqtrade/freqtrade'
environment:
name: docker
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
- name: Visualize disk usage before build
run: df -h
- name: Cleanup some disk space
run: |
docker system prune -a --force || true
docker builder prune -af || true
- name: Visualize disk usage after cleanup
run: df -h
- name: Set docker tag names
id: tags
uses: ./.github/actions/docker-tags
- name: Login to Docker Hub
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
with:
python-version: "3.12"
- name: Extract branch name
id: extract-branch
env:
BRANCH_NAME_INPUT: ${{ github.event.inputs.branch_name }}
run: |
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
BRANCH_NAME="${BRANCH_NAME_INPUT}"
else
BRANCH_NAME="${GITHUB_REF##*/}"
fi
echo "GITHUB_REF='${GITHUB_REF}'"
echo "branch=${BRANCH_NAME}" >> "$GITHUB_OUTPUT"
- name: Dockerhub login
env:
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
run: |
echo "${DOCKER_PASSWORD}" | docker login --username ${DOCKER_USERNAME} --password-stdin
# We need docker experimental to pull the ARM image.
- name: Switch docker to experimental
run: |
docker version -f '{{.Server.Experimental}}'
echo $'{\n "experimental": true\n}' | sudo tee /etc/docker/daemon.json
sudo systemctl restart docker
docker version -f '{{.Server.Experimental}}'
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Set up QEMU
uses: docker/setup-qemu-action@29109295f81e9208d7d86ff1c6c12d2833863392 # v3.6.0
uses: docker/setup-qemu-action@ce360397dd3f832beb865e1373c09c0e9f86d70a # v4.0.0
with:
cache-image: false
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 #v3.11.1
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd #v4.0.0
- name: Available platforms
run: echo ${PLATFORMS}
env:
PLATFORMS: ${{ steps.buildx.outputs.platforms }}
- name: Build and test and push docker images
- name: Build image without cache
if: github.event_name == 'schedule'
env:
BRANCH_NAME: ${{ steps.extract-branch.outputs.branch }}
TAG: ${{ steps.tags.outputs.TAG }}
run: |
build_helpers/publish_docker_multi.sh
docker build -t ${CACHE_IMAGE}:${TAG} .
- name: Build ARMHF image without cache
if: github.event_name == 'schedule'
env:
TAG_PI: ${{ steps.tags.outputs.TAG_PI }}
CACHE_TAG_PI: ${{ steps.tags.outputs.CACHE_TAG_PI }}
run: |
docker buildx build \
--cache-to=type=registry,ref=${CACHE_TAG_PI} \
-f docker/Dockerfile.armhf \
--platform ${PI_PLATFORM} \
-t ${IMAGE_NAME}:${TAG_PI} \
--push \
--provenance=false \
.
- name: Build image with cache
if: github.event_name != 'schedule'
env:
TAG: ${{ steps.tags.outputs.TAG }}
run: |
docker pull ${IMAGE_NAME}:${TAG} || true
docker build --cache-from ${IMAGE_NAME}:${TAG} -t ${CACHE_IMAGE}:${TAG} .
- name: Build ARMHF image with cache
if: github.event_name != 'schedule'
# disable provenance due to https://github.com/docker/buildx/issues/1509
env:
TAG_PI: ${{ steps.tags.outputs.TAG_PI }}
CACHE_TAG_PI: ${{ steps.tags.outputs.CACHE_TAG_PI }}
run: |
docker buildx build \
--cache-from=type=registry,ref=${CACHE_TAG_PI} \
--cache-to=type=registry,ref=${CACHE_TAG_PI} \
-f docker/Dockerfile.armhf \
--platform ${PI_PLATFORM} \
-t ${IMAGE_NAME}:${TAG_PI} \
--push \
--provenance=false \
.
- name: Run build for AI images
env:
TAG: ${{ steps.tags.outputs.TAG }}
TAG_PLOT: ${{ steps.tags.outputs.TAG_PLOT }}
TAG_FREQAI: ${{ steps.tags.outputs.TAG_FREQAI }}
TAG_FREQAI_RL: ${{ steps.tags.outputs.TAG_FREQAI_RL }}
run: |
docker build --build-arg sourceimage=${CACHE_IMAGE} --build-arg sourcetag=${TAG} -t ${CACHE_IMAGE}:${TAG_PLOT} -f docker/Dockerfile.plot .
docker build --build-arg sourceimage=${CACHE_IMAGE} --build-arg sourcetag=${TAG} -t ${CACHE_IMAGE}:${TAG_FREQAI} -f docker/Dockerfile.freqai .
docker build --build-arg sourceimage=${CACHE_IMAGE} --build-arg sourcetag=${TAG_FREQAI} -t ${CACHE_IMAGE}:${TAG_FREQAI_RL} -f docker/Dockerfile.freqai_rl .
- name: Run backtest in Docker
env:
TAG: ${{ steps.tags.outputs.TAG }}
run: |
docker run --rm -v $(pwd)/tests/testdata/config.tests.json:/freqtrade/config.json:ro -v $(pwd)/tests:/tests ${CACHE_IMAGE}:${TAG} backtesting --datadir /tests/testdata --strategy-path /tests/strategy/strats/ --strategy StrategyTestV3
- name: Push cache images
env:
TAG: ${{ steps.tags.outputs.TAG }}
TAG_PLOT: ${{ steps.tags.outputs.TAG_PLOT }}
TAG_FREQAI: ${{ steps.tags.outputs.TAG_FREQAI }}
TAG_FREQAI_RL: ${{ steps.tags.outputs.TAG_FREQAI_RL }}
run: |
docker push ${CACHE_IMAGE}:$TAG
docker push ${CACHE_IMAGE}:$TAG_PLOT
docker push ${CACHE_IMAGE}:$TAG_FREQAI
docker push ${CACHE_IMAGE}:$TAG_FREQAI_RL
- name: list Images
run: |
docker images
- name: Visualize disk usage after build
run: df -h
deploy-arm:
name: "Deploy Docker"
name: "Deploy Docker ARM64"
permissions:
packages: write
packages: write # Needed to push package versions
needs: [ deploy-docker ]
# Only run on 64bit machines
runs-on: [self-hosted, linux, ARM64]
if: github.repository == 'freqtrade/freqtrade'
environment:
name: docker
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Extract branch name
id: extract-branch
env:
BRANCH_NAME_INPUT: ${{ github.event.inputs.branch_name }}
run: |
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
BRANCH_NAME="${BRANCH_NAME_INPUT}"
else
BRANCH_NAME="${GITHUB_REF##*/}"
fi
echo "GITHUB_REF='${GITHUB_REF}'"
echo "branch=${BRANCH_NAME}" >> "$GITHUB_OUTPUT"
- name: Set docker tag names
id: tags
uses: ./.github/actions/docker-tags
- name: Dockerhub login
env:
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
run: |
echo "${DOCKER_PASSWORD}" | docker login --username ${DOCKER_USERNAME} --password-stdin
- name: Login to Docker Hub
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and test and push docker images
- name: Login to github
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build image without cache
if: github.event_name == 'schedule'
env:
BRANCH_NAME: ${{ steps.extract-branch.outputs.branch }}
GHCR_USERNAME: ${{ github.actor }}
GHCR_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAG_ARM: ${{ steps.tags.outputs.TAG_ARM }}
run: |
build_helpers/publish_docker_arm64.sh
docker build -t ${IMAGE_NAME}:${TAG_ARM} .
- name: Build image with cache
if: github.event_name != 'schedule'
env:
TAG_ARM: ${{ steps.tags.outputs.TAG_ARM }}
run: |
docker pull ${IMAGE_NAME}:${TAG_ARM} || true
docker build --cache-from ${IMAGE_NAME}:${TAG_ARM} -t ${CACHE_IMAGE}:${TAG_ARM} .
- name: Run build for AI images
env:
TAG_ARM: ${{ steps.tags.outputs.TAG_ARM }}
TAG_PLOT_ARM: ${{ steps.tags.outputs.TAG_PLOT_ARM }}
TAG_FREQAI_ARM: ${{ steps.tags.outputs.TAG_FREQAI_ARM }}
TAG_FREQAI_RL_ARM: ${{ steps.tags.outputs.TAG_FREQAI_RL_ARM }}
run: |
docker build --build-arg sourceimage=${CACHE_IMAGE} --build-arg sourcetag=${TAG_ARM} -t ${CACHE_IMAGE}:${TAG_PLOT_ARM} -f docker/Dockerfile.plot .
docker build --build-arg sourceimage=${CACHE_IMAGE} --build-arg sourcetag=${TAG_ARM} -t ${CACHE_IMAGE}:${TAG_FREQAI_ARM} -f docker/Dockerfile.freqai .
docker build --build-arg sourceimage=${CACHE_IMAGE} --build-arg sourcetag=${TAG_FREQAI_ARM} -t ${CACHE_IMAGE}:${TAG_FREQAI_RL_ARM} -f docker/Dockerfile.freqai_rl .
- name: Run backtest in Docker
env:
TAG_ARM: ${{ steps.tags.outputs.TAG_ARM }}
run: |
docker run --rm -v $(pwd)/tests/testdata/config.tests.json:/freqtrade/config.json:ro -v $(pwd)/tests:/tests ${CACHE_IMAGE}:${TAG_ARM} backtesting --datadir /tests/testdata --strategy-path /tests/strategy/strats/ --strategy StrategyTestV3
- name: Docker images
run: |
docker images
- name: Push cache images
env:
TAG_ARM: ${{ steps.tags.outputs.TAG_ARM }}
TAG_PLOT_ARM: ${{ steps.tags.outputs.TAG_PLOT_ARM }}
TAG_FREQAI_ARM: ${{ steps.tags.outputs.TAG_FREQAI_ARM }}
TAG_FREQAI_RL_ARM: ${{ steps.tags.outputs.TAG_FREQAI_RL_ARM }}
run: |
docker push ${CACHE_IMAGE}:$TAG_PLOT_ARM
docker push ${CACHE_IMAGE}:$TAG_FREQAI_ARM
docker push ${CACHE_IMAGE}:$TAG_FREQAI_RL_ARM
docker push ${CACHE_IMAGE}:$TAG_ARM
- name: Create manifests
env:
TAG_ARM: ${{ steps.tags.outputs.TAG_ARM }}
TAG: ${{ steps.tags.outputs.TAG }}
TAG_PI: ${{ steps.tags.outputs.TAG_PI }}
run: |
docker buildx imagetools create \
--tag ${IMAGE_NAME}:${TAG} \
--tag ${GHCR_IMAGE_NAME}:${TAG} \
${CACHE_IMAGE}:${TAG} ${CACHE_IMAGE}:${TAG_ARM} ${IMAGE_NAME}:${TAG_PI}
- name: Create multiarch image - Plot
env:
TAG_PLOT: ${{ steps.tags.outputs.TAG_PLOT }}
TAG_PLOT_ARM: ${{ steps.tags.outputs.TAG_PLOT_ARM }}
run: |
docker buildx imagetools create \
--tag ${IMAGE_NAME}:${TAG_PLOT} \
--tag ${GHCR_IMAGE_NAME}:${TAG_PLOT} \
${CACHE_IMAGE}:${TAG_PLOT} ${CACHE_IMAGE}:${TAG_PLOT_ARM}
- name: Create multiarch image - FreqAI
env:
TAG_FREQAI: ${{ steps.tags.outputs.TAG_FREQAI }}
TAG_FREQAI_ARM: ${{ steps.tags.outputs.TAG_FREQAI_ARM }}
run: |
docker buildx imagetools create \
--tag ${IMAGE_NAME}:${TAG_FREQAI} \
--tag ${GHCR_IMAGE_NAME}:${TAG_FREQAI} \
${CACHE_IMAGE}:${TAG_FREQAI} ${CACHE_IMAGE}:${TAG_FREQAI_ARM}
- name: Create multiarch image - FreqAI RL
env:
TAG_FREQAI_RL: ${{ steps.tags.outputs.TAG_FREQAI_RL }}
TAG_FREQAI_RL_ARM: ${{ steps.tags.outputs.TAG_FREQAI_RL_ARM }}
TAG_FREQAI_TORCH: ${{ steps.tags.outputs.TAG_FREQAI_TORCH }}
run: |
# Create special Torch tag - which is identical to the RL tag.
docker buildx imagetools create \
--tag ${IMAGE_NAME}:${TAG_FREQAI_RL} \
--tag ${GHCR_IMAGE_NAME}:${TAG_FREQAI_RL} \
--tag ${IMAGE_NAME}:${TAG_FREQAI_TORCH} \
--tag ${GHCR_IMAGE_NAME}:${TAG_FREQAI_TORCH} \
${CACHE_IMAGE}:${TAG_FREQAI_RL} ${CACHE_IMAGE}:${TAG_FREQAI_RL_ARM}
- name: Tag latest
if: env.TAG == 'develop'
env:
TAG: ${{ steps.tags.outputs.TAG }}
run: |
# Tag image as latest
docker buildx imagetools create \
--tag ${GHCR_IMAGE_NAME}:${TAG} \
--tag ${GHCR_IMAGE_NAME}:latest \
--tag ${IMAGE_NAME}:latest \
${IMAGE_NAME}:${TAG}
- name: Docker images
run: |
docker images
- name: Image cleanup
run: |
docker image prune -a --force --filter "until=24h"
- name: Discord notification
uses: rjstone/discord-webhook-notify@c2597273488aeda841dd1e891321952b51f7996f #v2.2.1
uses: sarisia/actions-status-discord@eb045afee445dc055c18d3d90bd0f244fd062708 # v1.16.0
if: always() && ( github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == false) && (github.event_name != 'schedule')
with:
severity: info
details: Deploy Succeeded!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
title: Deploy Succeeded!
webhook: ${{ secrets.DISCORD_WEBHOOK }}
+12 -4
View File
@@ -3,21 +3,29 @@ on:
push:
branches:
- stable
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}
cancel-in-progress: true
# disable permissions for all of the available permissions
permissions: {}
jobs:
dockerHubDescription:
name: "Update Docker Hub Description"
runs-on: ubuntu-latest
environment:
name: docker
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Docker Hub Description
uses: peter-evans/dockerhub-description@432a30c9e07499fd01da9f8a49f0faf9e0ca5b77 # v4.0.2
uses: peter-evans/dockerhub-description@1b9a80c056b620d92cedb9d9b5a223409c68ddfa # v5.0.0
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
repository: freqtradeorg/freqtrade
+52
View File
@@ -0,0 +1,52 @@
name: Cleanup Packages
on:
workflow_call:
inputs:
package_name:
description: 'Package name to clean up'
required: false
default: 'freqtrade'
type: string
workflow_dispatch:
inputs:
package_name:
description: 'Package name to clean up'
required: false
default: 'freqtrade'
type: choice
options:
- 'freqtrade'
- 'freqtrade-devcontainer'
delete-untagged:
description: 'Whether to delete only untagged images'
required: false
default: true
type: boolean
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: false
env:
PACKAGE_NAME: "freqtrade"
permissions: {}
jobs:
deploy-docker:
name: "Delete Packages"
runs-on: ubuntu-24.04
if: github.repository == 'freqtrade/freqtrade'
permissions:
packages: write # Needed to delete package versions
steps:
- name: "Delete untagged Package Versions"
uses: actions/delete-package-versions@e5bc658cc4c965c472efe991f8beea3981499c55 # v5.0.0
with:
package-name: ${{ inputs.package_name || env.PACKAGE_NAME }}
package-type: 'container'
min-versions-to-keep: 10
delete-only-untagged-versions: ${{ inputs.delete-untagged || 'true' }}
@@ -0,0 +1,53 @@
name: Pre-commit Types update
on:
pull_request:
branches:
- "develop"
concurrency:
group: "${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}"
cancel-in-progress: true
permissions: {}
jobs:
mypy-version-update:
name: "Pre-commit mypy type versions update"
runs-on: ubuntu-24.04
# Only run this job for pull requests created by dependabot[bot]
if: >
github.event.pull_request.user.login == 'dependabot[bot]' &&
github.repository == github.event.pull_request.head.repo.full_name &&
github.event_name == 'pull_request' &&
startsWith(github.head_ref, 'dependabot/')
environment:
name: dependabot-pulls
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: true
token: ${{ secrets.REPO_SCOPED_TOKEN_DEP }}
ref: ${{ github.head_ref || github.ref }}
- name: Install uv and Python 🐍
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
activate-environment: true
python-version: "3.13"
- name: Install PyYAML
run: |
- name: pre-commit dependencies
run: |
uv pip install $(grep -E "^pyyaml==" requirements-dev.txt)
python build_helpers/pre_commit_update.py --update
- uses: stefanzweifel/git-auto-commit-action@04702edda442b2e678b25b537cec683a1493fcb9 # v7
with:
commit_message: "chore(deps): Apply pre-commit types update"
commit_user_name: Freqtrade Bot
commit_user_email: 154552126+freqtrade-bot@users.noreply.github.com
commit_author: Freqtrade Bot <154552126+freqtrade-bot@users.noreply.github.com>
+16 -7
View File
@@ -2,33 +2,42 @@ name: Pre-commit auto-update
on:
schedule:
- cron: "0 3 * * 2"
- cron: "13 1 * * 2"
# on demand
workflow_dispatch:
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
auto-update:
name: Auto-update pre-commit hooks
runs-on: ubuntu-latest
environment:
name: develop
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/setup-python@v5
- name: Install uv and Python 🐍
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
python-version: "3.12"
activate-environment: true
python-version: "3.13"
- name: Install pre-commit
run: pip install pre-commit
run: uv pip install $(grep -E "^pre-commit==" requirements-dev.txt)
- name: Run auto-update
run: pre-commit autoupdate
- uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e # v7.0.8
- uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1
with:
token: ${{ secrets.REPO_SCOPED_TOKEN }}
add-paths: .pre-commit-config.yaml
+34
View File
@@ -0,0 +1,34 @@
name: GitHub Actions Security Analysis with zizmor 🌈
on:
push:
branches:
- develop
- stable
pull_request:
branches:
- develop
- stable
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: false
permissions: {}
jobs:
zizmor:
name: Run zizmor 🌈
runs-on: ubuntu-latest
permissions:
security-events: write # Required for upload-sarif (used by zizmor-action) to upload SARIF files.
# contents: read # Only needed for private repos. Needed to clone the repo.
# actions: read # Only needed for private repos. Needed for upload-sarif to read workflow run info.
steps:
- name: Checkout repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Run zizmor 🌈
uses: zizmorcore/zizmor-action@b1d7e1fb5de872772f31590499237e7cce841e8e # v0.5.3
+12 -24
View File
@@ -13,43 +13,31 @@ repos:
pass_filenames: false
additional_dependencies: ["python-rapidjson", "jsonschema"]
- repo: https://github.com/pycqa/flake8
rev: "7.3.0"
hooks:
- id: flake8
additional_dependencies: [Flake8-pyproject]
# stages: [push]
- repo: https://github.com/pre-commit/mirrors-mypy
rev: "v1.16.1"
rev: "v2.1.0"
hooks:
- id: mypy
exclude: build_helpers
additional_dependencies:
- types-cachetools==6.0.0.20250525
- types-cachetools==7.0.0.20260503
- types-filelock==3.2.7
- types-requests==2.32.4.20250611
- types-tabulate==0.9.0.20241207
- types-python-dateutil==2.9.0.20250516
- SQLAlchemy==2.0.41
# stages: [push]
- repo: https://github.com/pycqa/isort
rev: "6.0.1"
hooks:
- id: isort
name: isort (python)
- types-requests==2.33.0.20260508
- types-tabulate==0.10.0.20260508
- types-python-dateutil==2.9.0.20260508
- scipy-stubs==1.17.1.4
- SQLAlchemy==2.0.49
# stages: [push]
- repo: https://github.com/charliermarsh/ruff-pre-commit
# Ruff version.
rev: 'v0.12.1'
rev: 'v0.15.13'
hooks:
- id: ruff
- id: ruff-format
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
rev: v6.0.0
hooks:
- id: end-of-file-fixer
exclude: |
@@ -69,12 +57,12 @@ repos:
)$
- repo: https://github.com/stefmolin/exif-stripper
rev: 1.0.0
rev: 1.2.0
hooks:
- id: strip-exif
- repo: https://github.com/codespell-project/codespell
rev: v2.4.1
rev: v2.4.2
hooks:
- id: codespell
additional_dependencies:
@@ -82,6 +70,6 @@ repos:
# Ensure github actions remain safe
- repo: https://github.com/woodruffw/zizmor-pre-commit
rev: v1.11.0
rev: v1.24.1
hooks:
- id: zizmor
+34 -32
View File
@@ -9,8 +9,11 @@ Issues labeled [good first issue](https://github.com/freqtrade/freqtrade/labels/
Few pointers for contributions:
- Create your PR against the `develop` branch, not `stable`.
- New features need to contain unit tests, must conform to PEP8 (max-line-length = 100) and should be documented with the introduction PR.
- PR's can be declared as `[WIP]` - which signify Work in Progress Pull Requests (which are not finished).
- Stick to english in both commit messages, PR descriptions and code comments and variable names.
- New features need to contain unit tests, must pass CI (run pre-commit and pytest to get an early feedback) and should be documented with the introduction PR.
- PR's can be declared as draft - signaling Work in Progress for Pull Requests (which are not finished). We'll still aim to provide feedback on draft PR's in a timely manner.
- If you're using AI for your PR, please both mention it in the PR description and do a thorough review of the generated code yourself.
The final responsibility for the code with the PR author, not with the AI, which also means that commits must be linked to your (human) account, not some generic AI account.
If you are unsure, discuss the feature on our [discord server](https://discord.gg/p7nuUNVfP7) or in a [issue](https://github.com/freqtrade/freqtrade/issues) before a Pull Request.
@@ -22,8 +25,7 @@ Best start by reading the [documentation](https://www.freqtrade.io/) to get a fe
### 1. Run unit tests
All unit tests must pass. If a unit test is broken, change your code to
make it pass. It means you have introduced a regression.
All unit tests must pass. If a unit test is broken, change your code to make it pass. It means you have introduced a regression.
#### Test the whole project
@@ -43,43 +45,43 @@ pytest tests/test_<file_name>.py
pytest tests/test_<file_name>.py::test_<method_name>
```
### 2. Test if your code is PEP8 compliant
### 2. Test if your code corresponds to our style guide
#### Run Ruff
We receive a lot of code that fails preliminary CI checks.
To help with that, we encourage contributors to install the git pre-commit hook that will let you know immediately when you try to commit code that fails these checks.
You can manually run pre-commit with `pre-commit run -a` - or install the git hook with `pre-commit install` to have it run automatically on each commit.
Running `pre-commit run -a` will run all checks, including `ruff`, `mypy` and `codespell` (among others).
#### Additional styles applied
- Have docstrings on all public methods
- Use double-quotes for docstrings
- Multiline docstrings should be indented to the level of the first quote
- Doc-strings should follow the reST format (`:param xxx: ...`, `:return: ...`, `:raises KeyError: ...`)
#### Manually run the individual checks
The following sections describe how to run the individual checks that are running as part of the pre-commit hook.
##### Run ruff
Check your code with ruff to ensure that it follows the style guide.
```bash
ruff check .
ruff format .
```
We receive a lot of code that fails the `ruff` checks.
To help with that, we encourage you to install the git pre-commit
hook that will warn you when you try to commit code that fails these checks.
##### Run mypy
you can manually run pre-commit with `pre-commit run -a`.
##### Additional styles applied
* Have docstrings on all public methods
* Use double-quotes for docstrings
* Multiline docstrings should be indented to the level of the first quote
* Doc-strings should follow the reST format (`:param xxx: ...`, `:return: ...`, `:raises KeyError: ... `)
### 3. Test if all type-hints are correct
#### Run mypy
Check your code with mypy to ensure that it follows the type-hinting rules.
``` bash
mypy freqtrade
```
### 4. Ensure formatting is correct
#### Run ruff
``` bash
ruff format .
```
## (Core)-Committer Guide
### Process: Pull Requests
@@ -118,18 +120,18 @@ Exceptions:
- Ensure cross-platform compatibility for every change that's accepted. Windows, Mac & Linux.
- Ensure no malicious code is introduced into the core code.
- Create issues for any major changes and enhancements that you wish to make. Discuss things transparently and get community feedback.
- Keep feature versions as small as possible, preferably one new feature per version.
- Keep feature PR's as small as possible, preferably one new feature per PR.
- Be welcoming to newcomers and encourage diverse new contributors from all backgrounds. See the Python Community Code of Conduct (https://www.python.org/psf/codeofconduct/).
### Becoming a Committer
Contributors may be given commit privileges. Preference will be given to those with:
1. Past contributions to Freqtrade and other related open-source projects. Contributions to Freqtrade include both code (both accepted and pending) and friendly participation in the issue tracker and Pull request reviews. Both quantity and quality are considered.
1. Past contributions to Freqtrade and other related open source projects. Contributions to Freqtrade include both code (both accepted and pending) and friendly participation in the issue tracker and Pull request reviews. Both quantity and quality are considered.
1. A coding style that the other core committers find simple, minimal, and clean.
1. Access to resources for cross-platform development and testing.
1. Time to devote to the project regularly.
Being a Committer does not grant write permission on `develop` or `stable` for security reasons (Users trust Freqtrade with their Exchange API keys).
Being a Committer does not automatically grant write permission on `develop` or `stable` for security reasons (Users trust Freqtrade with their Exchange API keys).
After being Committer for some time, a Committer may be named Core Committer and given full repository access.
+9 -14
View File
@@ -1,10 +1,10 @@
FROM python:3.13.5-slim-bookworm as base
FROM python:3.14.5-slim-trixie AS base
# Setup env
ENV LANG C.UTF-8
ENV LC_ALL C.UTF-8
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONFAULTHANDLER 1
ENV LANG=C.UTF-8
ENV LC_ALL=C.UTF-8
ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONFAULTHANDLER=1
ENV PATH=/home/ftuser/.local/bin:$PATH
ENV FT_APP_ENV="docker"
@@ -21,17 +21,12 @@ RUN mkdir /freqtrade \
WORKDIR /freqtrade
# Install dependencies
FROM base as python-deps
FROM base AS python-deps
RUN apt-get update \
&& apt-get -y install build-essential libssl-dev git libffi-dev libgfortran5 pkg-config cmake gcc \
&& apt-get clean \
&& pip install --upgrade pip wheel
# Install TA-lib
COPY build_helpers/* /tmp/
RUN cd /tmp && /tmp/install_ta-lib.sh && rm -r /tmp/*ta-lib*
ENV LD_LIBRARY_PATH /usr/local/lib
# Install dependencies
COPY --chown=ftuser:ftuser requirements.txt requirements-hyperopt.txt /freqtrade/
USER ftuser
@@ -39,9 +34,9 @@ RUN pip install --user --no-cache-dir "numpy<3.0" \
&& pip install --user --no-cache-dir -r requirements-hyperopt.txt
# Copy dependencies to runtime-image
FROM base as runtime-image
FROM base AS runtime-image
COPY --from=python-deps /usr/local/lib /usr/local/lib
ENV LD_LIBRARY_PATH /usr/local/lib
ENV LD_LIBRARY_PATH=/usr/local/lib
COPY --from=python-deps --chown=ftuser:ftuser /home/ftuser/.local /home/ftuser/.local
@@ -49,7 +44,7 @@ USER ftuser
# Install and execute
COPY --chown=ftuser:ftuser . /freqtrade/
RUN pip install -e . --user --no-cache-dir --no-build-isolation \
RUN pip install -e . --user --no-cache-dir \
&& mkdir /freqtrade/user_data/ \
&& freqtrade install-ui
+19 -11
View File
@@ -1,10 +1,10 @@
# ![freqtrade](https://raw.githubusercontent.com/freqtrade/freqtrade/develop/docs/assets/freqtrade_poweredby.svg)
[![Freqtrade CI](https://github.com/freqtrade/freqtrade/actions/workflows/ci.yml/badge.svg?branch=develop)](https://github.com/freqtrade/freqtrade/actions/)
[![Freqtrade CI](https://github.com/freqtrade/freqtrade/actions/workflows/ci.yml/badge.svg?branch=develop)](https://github.com/freqtrade/freqtrade/actions/workflows/ci.yml)
[![DOI](https://joss.theoj.org/papers/10.21105/joss.04864/status.svg)](https://doi.org/10.21105/joss.04864)
[![Coverage Status](https://coveralls.io/repos/github/freqtrade/freqtrade/badge.svg?branch=develop&service=github)](https://coveralls.io/github/freqtrade/freqtrade?branch=develop)
[![codecov](https://codecov.io/gh/freqtrade/freqtrade/branch/develop/graph/badge.svg?token=AD5BG3ATKI)](https://codecov.io/gh/freqtrade/freqtrade)
[![Documentation](https://readthedocs.org/projects/freqtrade/badge/)](https://www.freqtrade.io)
[![Maintainability](https://api.codeclimate.com/v1/badges/5737e6d668200b7518ff/maintainability)](https://codeclimate.com/github/freqtrade/freqtrade/maintainability)
[![Discord Server](https://img.shields.io/badge/Freqtrade_Discord-4E4E4E?logo=discord)](https://discord.gg/p7nuUNVfP7)
Freqtrade is a free and open source crypto trading bot written in Python. It is designed to support all major exchanges and be controlled via Telegram or webUI. It contains backtesting, plotting and money management tools as well as strategy optimization by machine learning.
@@ -16,7 +16,7 @@ This software is for educational purposes only. Do not risk money which
you are afraid to lose. USE THE SOFTWARE AT YOUR OWN RISK. THE AUTHORS
AND ALL AFFILIATES ASSUME NO RESPONSIBILITY FOR YOUR TRADING RESULTS.
Always start by running a trading bot in Dry-run and do not engage money
Always start by running a trading bot in Dry-Run and do not engage money
before you understand how it works and what profit/loss you should
expect.
@@ -25,11 +25,14 @@ hesitate to read the source code and understand the mechanism of this bot.
## Supported Exchange marketplaces
Please read the [exchange specific notes](docs/exchanges.md) to learn about eventual, special configurations needed for each exchange.
Please read the [exchange-specific notes](https://www.freqtrade.io/en/stable/exchanges/) to learn about special configurations that maybe needed for each exchange.
### Supported Spot Exchanges
- [X] [Binance](https://www.binance.com/)
- [X] [Bitmart](https://bitmart.com/)
- [X] [BingX](https://bingx.com/invite/0EM9RX)
- [X] [Bitget](https://www.bitget.com/)
- [X] [Bitmart](https://bitmart.com/)
- [X] [Bybit](https://bybit.com/)
- [X] [Gate.io](https://www.gate.io/ref/6266643)
- [X] [HTX](https://www.htx.com/)
@@ -39,15 +42,17 @@ Please read the [exchange specific notes](docs/exchanges.md) to learn about even
- [X] [MyOKX](https://okx.com/) (OKX EEA)
- [ ] [potentially many others](https://github.com/ccxt/ccxt/). _(We cannot guarantee they will work)_
### Supported Futures Exchanges (experimental)
### Supported Futures Exchanges
- [X] [Binance](https://www.binance.com/)
- [X] [Bitget](https://www.bitget.com/)
- [X] [Gate.io](https://www.gate.io/ref/6266643)
- [X] [Hyperliquid](https://hyperliquid.xyz/) (A decentralized exchange, or DEX)
- [X] [OKX](https://okx.com/)
- [X] [Bybit](https://bybit.com/)
- [X] [Kraken](https://www.kraken.com/features/futures)
Please make sure to read the [exchange specific notes](docs/exchanges.md), as well as the [trading with leverage](docs/leverage.md) documentation before diving in.
Please make sure to read the [exchange specific notes](https://www.freqtrade.io/en/stable/exchanges/), as well as the [trading with leverage](https://www.freqtrade.io/en/stable/leverage/) documentation before diving in.
### Community tested
@@ -64,7 +69,7 @@ Please find the complete documentation on the [freqtrade website](https://www.fr
## Features
- [x] **Based on Python 3.10+**: For botting on any operating system - Windows, macOS and Linux.
- [x] **Based on Python 3.11+**: For botting on any operating system - Windows, macOS and Linux.
- [x] **Persistence**: Persistence is achieved through sqlite.
- [x] **Dry-run**: Run the bot without paying money.
- [x] **Backtesting**: Run a simulation of your buy/sell strategy.
@@ -139,13 +144,15 @@ options:
### Telegram RPC commands
Telegram is not mandatory. However, this is a great way to control your bot. More details and the full command list on the [documentation](https://www.freqtrade.io/en/latest/telegram-usage/)
Telegram is not mandatory. However, this is a great way to control your bot. More details and the full command list on the [documentation](https://www.freqtrade.io/en/stable/telegram-usage/)
- `/start`: Starts the trader.
- `/stop`: Stops the trader.
- `/stopentry`: Stop entering new trades.
- `/status <trade_id>|[table]`: Lists all or specific open trades.
- `/profit [<n>]`: Lists cumulative profit from all finished trades, over the last n days.
- `/profit_long [<n>]`: Lists cumulative profit from all finished long trades, over the last n days.
- `/profit_short [<n>]`: Lists cumulative profit from all finished short trades, over the last n days.
- `/forceexit <trade_id>|all`: Instantly exits the given trade (Ignoring `minimum_roi`).
- `/fx <trade_id>|all`: Alias to `/forceexit`
- `/performance`: Show performance of each finished trade grouped by pair
@@ -154,6 +161,7 @@ Telegram is not mandatory. However, this is a great way to control your bot. Mor
- `/help`: Show help message.
- `/version`: Show version.
## Development branches
The project is currently setup in two main branches:
@@ -219,7 +227,7 @@ To run this bot we recommend you a cloud instance with a minimum of:
### Software requirements
- [Python >= 3.10](http://docs.python-guide.org/en/latest/starting/installation/)
- [Python >= 3.11](http://docs.python-guide.org/en/latest/starting/installation/)
- [pip](https://pip.pypa.io/en/stable/installing/)
- [git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)
- [TA-Lib](https://ta-lib.github.io/ta-lib-python/)
+98 -46
View File
@@ -1,53 +1,105 @@
import os
import subprocess # noqa: S404, RUF100
import sys
from io import StringIO
from pathlib import Path
subcommands = [
"trade",
"create-userdir",
"new-config",
"show-config",
"new-strategy",
"download-data",
"convert-data",
"convert-trade-data",
"trades-to-ohlcv",
"list-data",
"backtesting",
"backtesting-show",
"backtesting-analysis",
"edge",
"hyperopt",
"hyperopt-list",
"hyperopt-show",
"list-exchanges",
"list-markets",
"list-pairs",
"list-strategies",
"list-hyperoptloss",
"list-freqaimodels",
"list-timeframes",
"show-trades",
"test-pairlist",
"convert-db",
"install-ui",
"plot-dataframe",
"plot-profit",
"webserver",
"strategy-updater",
"lookahead-analysis",
"recursive-analysis",
]
result = subprocess.run(["freqtrade", "--help"], capture_output=True, text=True)
with Path("docs/commands/main.md").open("w") as f:
f.write(f"```\n{result.stdout}\n```\n")
def _write_partial_file(filename: str, content: str):
with Path(filename).open("w") as f:
f.write(f"``` output\n{content}\n```\n")
for command in subcommands:
print(f"Running for {command}")
result = subprocess.run(["freqtrade", command, "--help"], capture_output=True, text=True)
def _get_help_output(parser) -> str:
"""Capture the help output from a parser."""
output = StringIO()
parser.print_help(file=output)
return output.getvalue()
with Path(f"docs/commands/{command}.md").open("w") as f:
f.write(f"```\n{result.stdout}\n```\n")
def extract_command_partials():
# Set terminal width to 80 columns for consistent output formatting
os.environ["COLUMNS"] = "80"
# Import Arguments here to avoid circular imports and ensure COLUMNS is set
from freqtrade.commands.arguments import Arguments
subcommands = [
"trade",
"create-userdir",
"new-config",
"show-config",
"new-strategy",
"download-data",
"convert-data",
"convert-trade-data",
"trades-to-ohlcv",
"list-data",
"backtesting",
"backtesting-show",
"backtesting-analysis",
"edge",
"hyperopt",
"hyperopt-list",
"hyperopt-show",
"list-exchanges",
"list-markets",
"list-pairs",
"list-strategies",
"list-hyperoptloss",
"list-freqaimodels",
"list-timeframes",
"show-trades",
"test-pairlist",
"convert-db",
"install-ui",
"plot-dataframe",
"plot-profit",
"webserver",
"strategy-updater",
"lookahead-analysis",
"recursive-analysis",
]
# Build the Arguments class to get the parser with all subcommands
args = Arguments(None)
args._build_subcommands()
# Get main help output
main_help = _get_help_output(args.parser)
_write_partial_file("docs/commands/main.md", main_help)
# Get subparsers from the main parser
# The subparsers are stored in _subparsers._group_actions[0].choices
subparsers_action = None
for action in args.parser._subparsers._group_actions:
if hasattr(action, "choices"):
subparsers_action = action
break
if subparsers_action is None:
raise RuntimeError("Could not find subparsers in the main parser")
for command in subcommands:
print(f"Running for {command}")
if command in subparsers_action.choices:
subparser = subparsers_action.choices[command]
help_output = _get_help_output(subparser)
_write_partial_file(f"docs/commands/{command}.md", help_output)
else:
print(f" Warning: subcommand '{command}' not found in parser")
# freqtrade-client still uses subprocess as requested
print("Running for freqtrade-client")
result_client = subprocess.run(["freqtrade-client", "--show"], capture_output=True, text=True)
_write_partial_file("docs/commands/freqtrade-client.md", result_client.stdout)
if __name__ == "__main__":
if sys.version_info < (3, 13): # pragma: no cover
sys.exit(
"argparse output changed in Python 3.13+. "
"To keep command partials up to date, please run this script with Python 3.13+."
)
extract_command_partials()
-35
View File
@@ -1,35 +0,0 @@
if [ -z "$1" ]; then
INSTALL_LOC=/usr/local
else
INSTALL_LOC=${1}
fi
echo "Installing to ${INSTALL_LOC}"
if [ -n "$2" ] || [ ! -f "${INSTALL_LOC}/lib/libta_lib.a" ]; then
tar zxvf ta-lib-0.4.0-src.tar.gz
cd ta-lib \
&& sed -i.bak "s|0.00000001|0.000000000000000001 |g" src/ta_func/ta_utility.h \
&& echo "Downloading gcc config.guess and config.sub" \
&& curl -s 'https://raw.githubusercontent.com/gcc-mirror/gcc/master/config.guess' -o config.guess \
&& curl -s 'https://raw.githubusercontent.com/gcc-mirror/gcc/master/config.sub' -o config.sub \
&& ./configure --prefix=${INSTALL_LOC}/ \
&& make
if [ $? -ne 0 ]; then
echo "Failed building ta-lib."
cd .. && rm -rf ./ta-lib/
exit 1
fi
if [ -z "$2" ]; then
which sudo && sudo make install || make install
if [ -x "$(command -v apt-get)" ]; then
echo "Updating library path using ldconfig"
sudo ldconfig
fi
else
# Don't install with sudo
make install
fi
cd .. && rm -rf ./ta-lib/
else
echo "TA-lib already installed, skipping installation"
fi
-10
View File
@@ -1,10 +0,0 @@
# vendored Wheels compiled via https://github.com/xmatthias/ta-lib-python/tree/ta_bundled_040
python -m pip install --upgrade pip
python -c "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}')"
pip install -U wheel "numpy<3.0"
pip install --only-binary ta-lib --find-links=build_helpers\ ta-lib
pip install -r requirements-dev.txt
pip install -e .
+48 -6
View File
@@ -1,5 +1,7 @@
# File used in CI to ensure pre-commit dependencies are kept up-to-date.
import argparse
import re
import sys
from pathlib import Path
@@ -10,16 +12,48 @@ pre_commit_file = Path(".pre-commit-config.yaml")
require_dev = Path("requirements-dev.txt")
require = Path("requirements.txt")
parser = argparse.ArgumentParser()
parser.add_argument("--update", action="store_true")
args = parser.parse_args()
def replace_dependency_version(pre_commit_text: str, dependency: str) -> tuple[str, bool]:
"""
Regex-based replacement of a dependency version in the pre-commit config file.
using regex here ensures we only replace the version of the dependency while
keeping the overall file intact.
"""
package_name = dependency.split("==", 1)[0]
pattern = re.compile(rf"^(\s*-\s+){re.escape(package_name)}==.*$", re.MULTILINE)
updated_text, replacements = pattern.subn(rf"\1{dependency}", pre_commit_text, count=1)
return updated_text, replacements > 0 and updated_text != pre_commit_text
with require_dev.open("r") as rfile:
requirements = rfile.readlines()
with require.open("r") as rfile:
requirements.extend(rfile.readlines())
# Extract types only
type_reqs = [
r.strip("\n") for r in requirements if r.startswith("types-") or r.startswith("SQLAlchemy")
]
# Extract relevant types only
supported = ("types-", "SQLAlchemy", "scipy-stubs")
# Find relevant dependencies
# Only keep the first part of the line up to the first space
type_reqs = [r.strip("\n").split()[0] for r in requirements if r.startswith(supported)]
with pre_commit_file.open("r") as file:
pre_commit_text = file.read()
updated = False
for req in type_reqs:
pre_commit_text, req_updated = replace_dependency_version(pre_commit_text, req)
updated = updated or req_updated
if args.update and updated:
with pre_commit_file.open("w") as file:
file.write(pre_commit_text)
with pre_commit_file.open("r") as file:
f = yaml.load(file, Loader=yaml.SafeLoader)
@@ -38,12 +72,20 @@ for hook in hooks:
for req in type_reqs:
if req not in hooks:
errors.append(f"{req} is missing in pre-config file.")
errors.append(f"{req} is missing in pre-commit config file.")
if updated:
if args.update:
errors.append(".pre-commit-config.yaml was updated to match the requirements files.")
else:
errors.append(
".pre-commit-config.yaml is outdated. Run build_helpers/pre_commit_update.py --update."
)
if errors:
for e in errors:
print(e)
sys.exit(1)
sys.exit(1 if not (args.update and updated) else 0)
sys.exit(0)
-119
View File
@@ -1,119 +0,0 @@
#!/bin/sh
# Use BuildKit, otherwise building on ARM fails
export DOCKER_BUILDKIT=1
IMAGE_NAME=freqtradeorg/freqtrade
CACHE_IMAGE=freqtradeorg/freqtrade_cache
GHCR_IMAGE_NAME=ghcr.io/freqtrade/freqtrade
# Replace / with _ to create a valid tag
TAG=$(echo "${BRANCH_NAME}" | sed -e "s/\//_/g")
TAG_PLOT=${TAG}_plot
TAG_FREQAI=${TAG}_freqai
TAG_FREQAI_RL=${TAG_FREQAI}rl
TAG_FREQAI_TORCH=${TAG_FREQAI}torch
TAG_PI="${TAG}_pi"
TAG_ARM=${TAG}_arm
TAG_PLOT_ARM=${TAG_PLOT}_arm
TAG_FREQAI_ARM=${TAG_FREQAI}_arm
TAG_FREQAI_RL_ARM=${TAG_FREQAI_RL}_arm
echo "Running for ${TAG}"
# Add commit and commit_message to docker container
echo "${GITHUB_SHA}" > freqtrade_commit
if [ "${GITHUB_EVENT_NAME}" = "schedule" ]; then
echo "event ${GITHUB_EVENT_NAME}: full rebuild - skipping cache"
# Build regular image
docker build -t freqtrade:${TAG_ARM} .
else
echo "event ${GITHUB_EVENT_NAME}: building with cache"
# Build regular image
docker pull ${IMAGE_NAME}:${TAG_ARM}
docker build --cache-from ${IMAGE_NAME}:${TAG_ARM} -t freqtrade:${TAG_ARM} .
fi
if [ $? -ne 0 ]; then
echo "failed building multiarch images"
return 1
fi
docker build --build-arg sourceimage=freqtrade --build-arg sourcetag=${TAG_ARM} -t freqtrade:${TAG_PLOT_ARM} -f docker/Dockerfile.plot .
docker build --build-arg sourceimage=freqtrade --build-arg sourcetag=${TAG_ARM} -t freqtrade:${TAG_FREQAI_ARM} -f docker/Dockerfile.freqai .
docker build --build-arg sourceimage=freqtrade --build-arg sourcetag=${TAG_FREQAI_ARM} -t freqtrade:${TAG_FREQAI_RL_ARM} -f docker/Dockerfile.freqai_rl .
# Tag image for upload and next build step
docker tag freqtrade:$TAG_ARM ${CACHE_IMAGE}:$TAG_ARM
docker tag freqtrade:$TAG_PLOT_ARM ${CACHE_IMAGE}:$TAG_PLOT_ARM
docker tag freqtrade:$TAG_FREQAI_ARM ${CACHE_IMAGE}:$TAG_FREQAI_ARM
docker tag freqtrade:$TAG_FREQAI_RL_ARM ${CACHE_IMAGE}:$TAG_FREQAI_RL_ARM
# Run backtest
docker run --rm -v $(pwd)/tests/testdata/config.tests.json:/freqtrade/config.json:ro -v $(pwd)/tests:/tests freqtrade:${TAG_ARM} backtesting --datadir /tests/testdata --strategy-path /tests/strategy/strats/ --strategy StrategyTestV3
if [ $? -ne 0 ]; then
echo "failed running backtest"
return 1
fi
docker images
docker push ${CACHE_IMAGE}:$TAG_PLOT_ARM
docker push ${CACHE_IMAGE}:$TAG_FREQAI_ARM
docker push ${CACHE_IMAGE}:$TAG_FREQAI_RL_ARM
docker push ${CACHE_IMAGE}:$TAG_ARM
# Create multi-arch image
# Make sure that all images contained here are pushed to github first.
# Otherwise installation might fail.
echo "create manifests"
docker manifest create ${IMAGE_NAME}:${TAG} ${CACHE_IMAGE}:${TAG} ${CACHE_IMAGE}:${TAG_ARM} ${IMAGE_NAME}:${TAG_PI}
docker manifest push -p ${IMAGE_NAME}:${TAG}
docker manifest create ${IMAGE_NAME}:${TAG_PLOT} ${CACHE_IMAGE}:${TAG_PLOT} ${CACHE_IMAGE}:${TAG_PLOT_ARM}
docker manifest push -p ${IMAGE_NAME}:${TAG_PLOT}
docker manifest create ${IMAGE_NAME}:${TAG_FREQAI} ${CACHE_IMAGE}:${TAG_FREQAI} ${CACHE_IMAGE}:${TAG_FREQAI_ARM}
docker manifest push -p ${IMAGE_NAME}:${TAG_FREQAI}
docker manifest create ${IMAGE_NAME}:${TAG_FREQAI_RL} ${CACHE_IMAGE}:${TAG_FREQAI_RL} ${CACHE_IMAGE}:${TAG_FREQAI_RL_ARM}
docker manifest push -p ${IMAGE_NAME}:${TAG_FREQAI_RL}
# Create special Torch tag - which is identical to the RL tag.
docker manifest create ${IMAGE_NAME}:${TAG_FREQAI_TORCH} ${CACHE_IMAGE}:${TAG_FREQAI_RL} ${CACHE_IMAGE}:${TAG_FREQAI_RL_ARM}
docker manifest push -p ${IMAGE_NAME}:${TAG_FREQAI_TORCH}
# copy images to ghcr.io
alias crane="docker run --rm -i -v $(pwd)/.crane:/home/nonroot/.docker/ gcr.io/go-containerregistry/crane"
mkdir .crane
chmod a+rwx .crane
echo "${GHCR_TOKEN}" | crane auth login ghcr.io -u "${GHCR_USERNAME}" --password-stdin
crane copy ${IMAGE_NAME}:${TAG_FREQAI_RL} ${GHCR_IMAGE_NAME}:${TAG_FREQAI_RL}
crane copy ${IMAGE_NAME}:${TAG_FREQAI_RL} ${GHCR_IMAGE_NAME}:${TAG_FREQAI_TORCH}
crane copy ${IMAGE_NAME}:${TAG_FREQAI} ${GHCR_IMAGE_NAME}:${TAG_FREQAI}
crane copy ${IMAGE_NAME}:${TAG_PLOT} ${GHCR_IMAGE_NAME}:${TAG_PLOT}
crane copy ${IMAGE_NAME}:${TAG} ${GHCR_IMAGE_NAME}:${TAG}
# Tag as latest for develop builds
if [ "${TAG}" = "develop" ]; then
echo 'Tagging image as latest'
docker manifest create ${IMAGE_NAME}:latest ${CACHE_IMAGE}:${TAG_ARM} ${IMAGE_NAME}:${TAG_PI} ${CACHE_IMAGE}:${TAG}
docker manifest push -p ${IMAGE_NAME}:latest
crane copy ${IMAGE_NAME}:latest ${GHCR_IMAGE_NAME}:latest
fi
docker images
rm -rf .crane
# Cleanup old images from arm64 node.
docker image prune -a --force --filter "until=24h"
-89
View File
@@ -1,89 +0,0 @@
#!/bin/sh
# The below assumes a correctly setup docker buildx environment
IMAGE_NAME=freqtradeorg/freqtrade
CACHE_IMAGE=freqtradeorg/freqtrade_cache
# Replace / with _ to create a valid tag
TAG=$(echo "${BRANCH_NAME}" | sed -e "s/\//_/g")
TAG_PLOT=${TAG}_plot
TAG_FREQAI=${TAG}_freqai
TAG_FREQAI_RL=${TAG_FREQAI}rl
TAG_PI="${TAG}_pi"
PI_PLATFORM="linux/arm/v7"
echo "Running for ${TAG}"
CACHE_TAG=${CACHE_IMAGE}:${TAG_PI}_cache
# Add commit and commit_message to docker container
echo "${GITHUB_SHA}" > freqtrade_commit
if [ "${GITHUB_EVENT_NAME}" = "schedule" ]; then
echo "event ${GITHUB_EVENT_NAME}: full rebuild - skipping cache"
# Build regular image
docker build -t freqtrade:${TAG} .
# Build PI image
docker buildx build \
--cache-to=type=registry,ref=${CACHE_TAG} \
-f docker/Dockerfile.armhf \
--platform ${PI_PLATFORM} \
-t ${IMAGE_NAME}:${TAG_PI} \
--push \
--provenance=false \
.
else
echo "event ${GITHUB_EVENT_NAME}: building with cache"
# Build regular image
docker pull ${IMAGE_NAME}:${TAG}
docker build --cache-from ${IMAGE_NAME}:${TAG} -t freqtrade:${TAG} .
# Pull last build to avoid rebuilding the whole image
# docker pull --platform ${PI_PLATFORM} ${IMAGE_NAME}:${TAG}
# disable provenance due to https://github.com/docker/buildx/issues/1509
docker buildx build \
--cache-from=type=registry,ref=${CACHE_TAG} \
--cache-to=type=registry,ref=${CACHE_TAG} \
-f docker/Dockerfile.armhf \
--platform ${PI_PLATFORM} \
-t ${IMAGE_NAME}:${TAG_PI} \
--push \
--provenance=false \
.
fi
if [ $? -ne 0 ]; then
echo "failed building multiarch images"
return 1
fi
# Tag image for upload and next build step
docker tag freqtrade:$TAG ${CACHE_IMAGE}:$TAG
docker build --build-arg sourceimage=freqtrade --build-arg sourcetag=${TAG} -t freqtrade:${TAG_PLOT} -f docker/Dockerfile.plot .
docker build --build-arg sourceimage=freqtrade --build-arg sourcetag=${TAG} -t freqtrade:${TAG_FREQAI} -f docker/Dockerfile.freqai .
docker build --build-arg sourceimage=freqtrade --build-arg sourcetag=${TAG_FREQAI} -t freqtrade:${TAG_FREQAI_RL} -f docker/Dockerfile.freqai_rl .
docker tag freqtrade:$TAG_PLOT ${CACHE_IMAGE}:$TAG_PLOT
docker tag freqtrade:$TAG_FREQAI ${CACHE_IMAGE}:$TAG_FREQAI
docker tag freqtrade:$TAG_FREQAI_RL ${CACHE_IMAGE}:$TAG_FREQAI_RL
# Run backtest
docker run --rm -v $(pwd)/tests/testdata/config.tests.json:/freqtrade/config.json:ro -v $(pwd)/tests:/tests freqtrade:${TAG} backtesting --datadir /tests/testdata --strategy-path /tests/strategy/strats/ --strategy StrategyTestV3
if [ $? -ne 0 ]; then
echo "failed running backtest"
return 1
fi
docker images
docker push ${CACHE_IMAGE}:$TAG
docker push ${CACHE_IMAGE}:$TAG_PLOT
docker push ${CACHE_IMAGE}:$TAG_FREQAI
docker push ${CACHE_IMAGE}:$TAG_FREQAI_RL
docker images
if [ $? -ne 0 ]; then
echo "failed building image"
return 1
fi
+91 -3
View File
@@ -180,6 +180,16 @@
"description": "Offset for profit exit. \nUsually specified in the strategy and missing in the configuration.",
"type": "number"
},
"recursive_strategy_search": {
"description": "Enable recursive strategy search.",
"type": "boolean"
},
"user_data_dir": {
"description": "Path to the user data directory."
},
"datadir": {
"description": "Path to the data directory."
},
"fee": {
"description": "Trading fee percentage. Can help to simulate slippage in backtesting",
"type": "number",
@@ -258,10 +268,77 @@
"day",
"week",
"month",
"year"
"year",
"weekday"
]
}
},
"backtest_cache": {
"description": "Load a cached backtest result no older than specified age.",
"type": "string",
"enum": [
"none",
"day",
"week",
"month"
]
},
"skip_wallet_history_migration": {
"description": "Disable wallet history migration.",
"type": "boolean"
},
"hyperopt_path": {
"description": "Specify additional lookup path for Hyperopt Loss functions.",
"type": "string"
},
"epochs": {
"description": "Number of training epochs for Hyperopt.",
"type": "integer",
"minimum": 1
},
"early_stop": {
"description": "Early stop hyperopt if no improvement after <epochs>. Set to 0 to disable.",
"type": "integer",
"minimum": 0
},
"spaces": {
"description": "Hyperopt parameter spaces to optimize. Default is the default set andincludes all spaces except for 'trailing', 'protection', and 'trades'.",
"type": "array",
"items": {
"type": "string"
},
"default": [
"default"
]
},
"analyze_per_epoch": {
"description": "Perform analysis after each epoch in Hyperopt.",
"type": "boolean"
},
"print_all": {
"description": "Print all hyperopt trials, not just the best ones.",
"type": "boolean",
"default": false
},
"hyperopt_jobs": {
"description": "The number of concurrently running jobs for hyperoptimization (hyperopt worker processes). If -1 (default), all CPUs are used, for -2, all CPUs but one are used, etc. If 1 is given, no parallel computing is used.",
"type": "integer",
"default": -1
},
"hyperopt_random_state": {
"description": "Random state for hyperopt trials.",
"type": "integer",
"minimum": 0
},
"hyperopt_min_trades": {
"description": "Minimum number of trades per epoch for hyperopt.",
"type": "integer",
"minimum": 0
},
"hyperopt_loss": {
"description": "The class name of the hyperopt loss function class (IHyperOptLoss). Different functions can generate completely different results, since the target for optimization is different. Built-in Hyperopt-loss-functions are: ShortTradeDurHyperOptLoss, OnlyProfitHyperOptLoss, SharpeHyperOptLoss, SharpeHyperOptLossDaily, SortinoHyperOptLoss, SortinoHyperOptLossDaily, CalmarHyperOptLoss, MaxDrawDownHyperOptLoss, MaxDrawDownRelativeHyperOptLoss, MaxDrawDownPerPairHyperOptLoss, ProfitDrawDownHyperOptLoss, MultiMetricHyperOptLoss",
"type": "string"
},
"bot_name": {
"description": "Name of the trading bot. Passed via API to a client.",
"type": "string"
@@ -562,6 +639,7 @@
"pairlists": {
"description": "Configuration for pairlists.",
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"properties": {
@@ -575,7 +653,9 @@
"ProducerPairList",
"RemotePairList",
"MarketCapPairList",
"CrossMarketPairList",
"AgeFilter",
"DelistFilter",
"FullTradesFilter",
"OffsetFilter",
"PerformanceFilter",
@@ -982,7 +1062,9 @@
},
"jwt_secret_key": {
"description": "Secret key for JWT authentication.",
"type": "string"
"type": "string",
"default": "somethingRandomSomethingRandom123",
"minLength": 32
},
"CORS_origins": {
"description": "List of allowed CORS origins.",
@@ -1005,7 +1087,8 @@
"listen_ip_address",
"listen_port",
"username",
"password"
"password",
"jwt_secret_key"
]
},
"db_url": {
@@ -1449,6 +1532,11 @@
"type": "boolean",
"default": false
},
"override_exchange_check": {
"description": "Override the exchange check to force FreqAI to use exchanges that may not have enough historic data. Turn this to True if you know your FreqAI model and strategy do not require historical data.",
"type": "boolean",
"default": false
},
"feature_parameters": {
"description": "The parameters used to engineer the feature set",
"type": "object",
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -70,7 +70,7 @@
"listen_ip_address": "127.0.0.1",
"listen_port": 8080,
"verbosity": "error",
"jwt_secret_key": "somethingrandom",
"jwt_secret_key": "somethingRandomSomethingRandom123",
"CORS_origins": [],
"username": "freqtrader",
"password": "SuperSecurePassword"
+38 -18
View File
@@ -25,10 +25,10 @@
"trading_mode": "spot",
"margin_mode": "",
"minimal_roi": {
"40": 0.0,
"30": 0.01,
"20": 0.02,
"0": 0.04
"40": 0.0,
"30": 0.01,
"20": 0.02,
"0": 0.04
},
"stoploss": -0.10,
"unfilledtimeout": {
@@ -47,7 +47,7 @@
"bids_to_ask_delta": 1
}
},
"exit_pricing":{
"exit_pricing": {
"price_side": "same",
"use_order_book": true,
"order_book_top": 1,
@@ -70,18 +70,38 @@
"exit": "GTC"
},
"pairlists": [
{"method": "StaticPairList"},
{"method": "FullTradesFilter"},
{
"method": "StaticPairList"
},
{
"method": "DelistFilter",
"max_days_from_now": 0,
},
{
"method": "FullTradesFilter"
},
{
"method": "VolumePairList",
"number_assets": 20,
"sort_key": "quoteVolume",
"refresh_period": 1800
},
{"method": "AgeFilter", "min_days_listed": 10},
{"method": "PrecisionFilter"},
{"method": "PriceFilter", "low_price_ratio": 0.01, "min_price": 0.00000010},
{"method": "SpreadFilter", "max_spread_ratio": 0.005},
{
"method": "AgeFilter",
"min_days_listed": 10
},
{
"method": "PrecisionFilter"
},
{
"method": "PriceFilter",
"low_price_ratio": 0.01,
"min_price": 0.00000010
},
{
"method": "SpreadFilter",
"max_spread_ratio": 0.005
},
{
"method": "RangeStabilityFilter",
"lookback_days": 10,
@@ -157,7 +177,7 @@
"listen_port": 8080,
"verbosity": "error",
"enable_openapi": false,
"jwt_secret_key": "somethingrandom",
"jwt_secret_key": "somethingRandomSomethingRandom123",
"CORS_origins": [],
"username": "freqtrader",
"password": "SuperSecurePassword",
@@ -166,12 +186,12 @@
"external_message_consumer": {
"enabled": false,
"producers": [
{
"name": "default",
"host": "127.0.0.2",
"port": 8080,
"ws_token": "secret_ws_t0ken."
}
{
"name": "default",
"host": "127.0.0.2",
"port": 8080,
"ws_token": "secret_ws_t0ken."
}
],
"wait_timeout": 300,
"ping_timeout": 10,
+1 -1
View File
@@ -75,7 +75,7 @@
"listen_ip_address": "127.0.0.1",
"listen_port": 8080,
"verbosity": "error",
"jwt_secret_key": "somethingrandom",
"jwt_secret_key": "somethingRandomSomethingRandom123",
"CORS_origins": [],
"username": "freqtrader",
"password": "SuperSecurePassword"
+10 -11
View File
@@ -1,10 +1,10 @@
FROM python:3.11.13-slim-bookworm as base
FROM python:3.11.15-slim-bookworm AS base
# Setup env
ENV LANG C.UTF-8
ENV LC_ALL C.UTF-8
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONFAULTHANDLER 1
ENV LANG=C.UTF-8
ENV LC_ALL=C.UTF-8
ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONFAULTHANDLER=1
ENV PATH=/home/ftuser/.local/bin:$PATH
ENV FT_APP_ENV="docker"
@@ -22,7 +22,7 @@ RUN mkdir /freqtrade \
WORKDIR /freqtrade
# Install dependencies
FROM base as python-deps
FROM base AS python-deps
RUN apt-get update \
&& apt-get -y install build-essential libssl-dev libffi-dev libgfortran5 pkg-config cmake gcc \
&& apt-get clean \
@@ -34,14 +34,13 @@ COPY build_helpers/* /tmp/
# Install dependencies
COPY --chown=ftuser:ftuser requirements.txt /freqtrade/
USER ftuser
RUN pip install --user --no-cache-dir "numpy<3.0" \
&& pip install --user --no-index --find-links /tmp/ pyarrow TA-Lib \
RUN pip install --user --only-binary=:all: --find-links /tmp/ pyarrow TA-Lib \
&& pip install --user --no-cache-dir -r requirements.txt
# Copy dependencies to runtime-image
FROM base as runtime-image
FROM base AS runtime-image
COPY --from=python-deps /usr/local/lib /usr/local/lib
ENV LD_LIBRARY_PATH /usr/local/lib
ENV LD_LIBRARY_PATH=/usr/local/lib
COPY --from=python-deps --chown=ftuser:ftuser /home/ftuser/.local /home/ftuser/.local
@@ -49,7 +48,7 @@ USER ftuser
# Install and execute
COPY --chown=ftuser:ftuser . /freqtrade/
RUN pip install -e . --user --no-cache-dir --no-build-isolation\
RUN pip install -e . --user --no-cache-dir \
&& mkdir /freqtrade/user_data/ \
&& freqtrade install-ui
-10
View File
@@ -1,10 +0,0 @@
FROM freqtradeorg/freqtrade:develop
# Install dependencies
COPY requirements-dev.txt /freqtrade/
RUN pip install numpy --user --no-cache-dir \
&& pip install -r requirements-dev.txt --user --no-cache-dir
# Empty the ENTRYPOINT to allow all commands
ENTRYPOINT []
+36 -34
View File
@@ -41,34 +41,36 @@ ranging from the simplest (0) to the most detailed per pair, per buy and per sel
* 1: profit summaries grouped by enter_tag
* 2: profit summaries grouped by enter_tag and exit_tag
* 3: profit summaries grouped by pair and enter_tag
* 4: profit summaries grouped by pair, enter_ and exit_tag (this can get quite large)
* 4: profit summaries grouped by pair, enter_tag and exit_tag (this can get quite large)
* 5: profit summaries grouped by exit_tag
More options are available by running with the `-h` option.
### Using export-filename
### Using backtest-filename
Normally, `backtesting-analysis` uses the latest backtest results, but if you wanted to go
back to a previous backtest output, you need to supply the `--export-filename` option.
You can supply the same parameter to `backtest-analysis` with the name of the final backtest
output file. This allows you to keep historical versions of backtest results and re-analyse
them at a later date:
By default, `backtesting-analysis` processes the most recent backtest results in the `user_data/backtest_results` directory.
If you want to analyze results from an earlier backtest, use the `--backtest-filename` option to specify the desired file. This lets you revisit and re-analyze historical backtest outputs at any time by providing the filename of the relevant backtest result:
``` bash
freqtrade backtesting -c <config.json> --timeframe <tf> --strategy <strategy_name> --timerange=<timerange> --export=signals --export-filename=/tmp/mystrat_backtest.json
freqtrade backtesting -c <config.json> --strategy <strategy_name> --timerange <timerange> --export signals --backtest-filename backtest-result-2025-03-05_20-38-34.zip
```
You should see some output similar to below in the logs with the name of the timestamped
filename that was exported:
You should see some output similar to below in the logs with the name of the timestamped filename that was exported:
```
2022-06-14 16:28:32,698 - freqtrade.misc - INFO - dumping json to "/tmp/mystrat_backtest-2022-06-14_16-28-32.json"
2022-06-14 16:28:32,698 - freqtrade.misc - INFO - dumping json to "mystrat_backtest-2022-06-14_16-28-32.json"
```
You can then use that filename in `backtesting-analysis`:
``` bash
freqtrade backtesting-analysis -c <config.json> --backtest-filename=backtest-result-2025-03-05_20-38-34.zip
```
freqtrade backtesting-analysis -c <config.json> --export-filename=/tmp/mystrat_backtest-2022-06-14_16-28-32.json
To use a result from a different results directory, you can use `--backtest-directory` to specify the directory
``` bash
freqtrade backtesting-analysis -c <config.json> --backtest-directory custom_results/ --backtest-filename backtest-result-2025-03-05_20-38-34.zip
```
### Tuning the buy tags and sell tags to display
@@ -82,7 +84,7 @@ To show only certain buy and sell tags in the displayed output, use the followin
For example:
```bash
``` bash
freqtrade backtesting-analysis -c <config.json> --analysis-groups 0 2 --enter-reason-list enter_tag_a enter_tag_b --exit-reason-list roi custom_exit_tag_a stop_loss
```
@@ -93,7 +95,7 @@ values present on signal candles to allow fine-grained investigation and tuning
indicators. To print out a column for a given set of indicators, use the `--indicator-list`
option:
```bash
``` bash
freqtrade backtesting-analysis -c <config.json> --analysis-groups 0 2 --enter-reason-list enter_tag_a enter_tag_b --exit-reason-list roi custom_exit_tag_a stop_loss --indicator-list rsi rsi_1h bb_lowerband ema_9 macd macdsignal
```
@@ -105,24 +107,24 @@ output.
The indicator values will be displayed for both entry and exit points. If `--indicator-list all` is specified,
only the indicators at the entry point will be shown to avoid excessively large lists, which could occur depending on the strategy.
There are a range of candle and trade-related fields that are included in the analysis so are
There are a range of candle and trade-related fields that are included in the analysis so are
automatically accessible by including them on the indicator-list, and these include:
- **open_date :** trade open datetime
- **close_date :** trade close datetime
- **min_rate :** minimum price seen throughout the position
- **max_rate :** maximum price seen throughout the position
- **open :** signal candle open price
- **close :** signal candle close price
- **high :** signal candle high price
- **low :** signal candle low price
- **volume :** signal candle volume
- **profit_ratio :** trade profit ratio
- **profit_abs :** absolute profit return of the trade
* **open_date :** trade open datetime
* **close_date :** trade close datetime
* **min_rate :** minimum price seen throughout the position
* **max_rate :** maximum price seen throughout the position
* **open :** signal candle open price
* **close :** signal candle close price
* **high :** signal candle high price
* **low :** signal candle low price
* **volume :** signal candle volume
* **profit_ratio :** trade profit ratio
* **profit_abs :** absolute profit return of the trade
#### Sample Output for Indicator Values
```bash
``` bash
freqtrade backtesting-analysis -c user_data/config.json --analysis-groups 0 --indicator-list chikou_span tenkan_sen
```
@@ -155,13 +157,13 @@ The `--indicator-list` option, by default, displays indicator values for both en
Example: Display indicator values at entry signals:
```bash
``` bash
freqtrade backtesting-analysis -c user_data/config.json --analysis-groups 0 --indicator-list chikou_span tenkan_sen --entry-only
```
Example: Display indicator values at exit signals:
```bash
``` bash
freqtrade backtesting-analysis -c user_data/config.json --analysis-groups 0 --indicator-list chikou_span tenkan_sen --exit-only
```
@@ -178,7 +180,7 @@ To show only trades between dates within your backtested timerange, supply the u
For example, if your backtest timerange was `20220101-20221231` but you only want to output trades in January:
```bash
``` bash
freqtrade backtesting-analysis -c <config.json> --timerange 20220101-20220201
```
@@ -186,7 +188,7 @@ freqtrade backtesting-analysis -c <config.json> --timerange 20220101-20220201
Use the `--rejected-signals` option to print out rejected signals.
```bash
``` bash
freqtrade backtesting-analysis -c <config.json> --rejected-signals
```
@@ -195,13 +197,13 @@ freqtrade backtesting-analysis -c <config.json> --rejected-signals
Some of the tabular outputs can become large, so printing them out to the terminal is not preferable.
Use the `--analysis-to-csv` option to disable printing out of tables to standard out and write them to CSV files.
```bash
``` bash
freqtrade backtesting-analysis -c <config.json> --analysis-to-csv
```
By default this will write one file per output table you specified in the `backtesting-analysis` command, e.g.
```bash
``` bash
freqtrade backtesting-analysis -c <config.json> --analysis-to-csv --rejected-signals --analysis-groups 0 1
```
@@ -213,6 +215,6 @@ This will write to `user_data/backtest_results`:
To override where the files will be written, also specify the `--analysis-csv-path` option.
```bash
``` bash
freqtrade backtesting-analysis -c <config.json> --analysis-to-csv --analysis-csv-path another/data/path/
```
+3 -4
View File
@@ -133,7 +133,7 @@ class MyAwesomeStrategy(IStrategy):
]
# Define a custom max_open_trades space
def max_open_trades_space(self) -> List[Dimension]:
def max_open_trades_space() -> List[Dimension]:
return [
Integer(-1, 10, name='max_open_trades'),
]
@@ -142,7 +142,7 @@ class MyAwesomeStrategy(IStrategy):
!!! Note
All overrides are optional and can be mixed/matched as necessary.
### Dynamic parameters
## Dynamic parameters
Parameters can also be defined dynamically, but must be available to the instance once the [`bot_start()` callback](strategy-callbacks.md#bot-start) has been called.
@@ -159,7 +159,7 @@ class MyAwesomeStrategy(IStrategy):
!!! Warning
Parameters created this way will not show up in the `list-strategies` parameter count.
### Overriding Base estimator
## Overriding Base estimator
You can define your own optuna sampler for Hyperopt by implementing `generate_estimator()` in the Hyperopt subclass.
@@ -208,7 +208,6 @@ Some research will be necessary to find additional Samplers (from optunahub) for
Obviously the same approach will work for all other Samplers optuna supports.
## Space options
For the additional spaces, scikit-optimize (in combination with Freqtrade) provides the following space types:
+4 -4
View File
@@ -73,7 +73,7 @@ services:
volumes:
- "./user_data:/freqtrade/user_data"
# Expose api on port 8080 (localhost only)
# Please read the https://www.freqtrade.io/en/latest/rest-api/ documentation
# Please read the https://www.freqtrade.io/en/stable/rest-api/ documentation
# before enabling this.
ports:
- "127.0.0.1:8080:8080"
@@ -100,7 +100,7 @@ services:
volumes:
- "./user_data:/freqtrade/user_data"
# Expose api on port 8080 (localhost only)
# Please read the https://www.freqtrade.io/en/latest/rest-api/ documentation
# Please read the https://www.freqtrade.io/en/stable/rest-api/ documentation
# before enabling this.
ports:
- "127.0.0.1:8081:8080"
@@ -134,10 +134,10 @@ The following systems have been tested and are known to work with freqtrade:
### PostgreSQL
Installation:
`pip install psycopg2-binary`
`pip install "psycopg[binary]"`
Usage:
`... --db-url postgresql+psycopg2://<username>:<password>@localhost:5432/<database>`
`... --db-url postgresql+psycopg://<username>:<password>@localhost:5432/<database>`
Freqtrade will automatically create the tables necessary upon startup.
+282 -207
View File
@@ -105,12 +105,14 @@ Only use this if you're sure you'll not want to plot or analyze your results fur
---
Exporting trades to file specifying a custom filename
Exporting trades to file specifying a custom directory
```bash
freqtrade backtesting --strategy backtesting --export trades --export-filename=backtest_samplestrategy.json
freqtrade backtesting --strategy backtesting --export trades --backtest-directory=user_data/custom-backtest-results
```
---
Please also read about the [strategy startup period](strategy-customization.md#strategy-startup-period).
---
@@ -158,117 +160,150 @@ The most important in the backtesting is to understand the result.
A backtesting result will look like that:
```
================================================ BACKTESTING REPORT =================================================
| Pair | Trades | Avg Profit % | Tot Profit BTC | Tot Profit % | Avg Duration | Wins Draws Loss Win% |
|----------+--------+----------------+------------------+----------------+--------------+--------------------------|
| ADA/BTC | 35 | -0.11 | -0.00019428 | -1.94 | 4:35:00 | 14 0 21 40.0 |
| ARK/BTC | 11 | -0.41 | -0.00022647 | -2.26 | 2:03:00 | 3 0 8 27.3 |
| BTS/BTC | 32 | 0.31 | 0.00048938 | 4.89 | 5:05:00 | 18 0 14 56.2 |
| DASH/BTC | 13 | -0.08 | -0.00005343 | -0.53 | 4:39:00 | 6 0 7 46.2 |
| ENG/BTC | 18 | 1.36 | 0.00122807 | 12.27 | 2:50:00 | 8 0 10 44.4 |
| EOS/BTC | 36 | 0.08 | 0.00015304 | 1.53 | 3:34:00 | 16 0 20 44.4 |
| ETC/BTC | 26 | 0.37 | 0.00047576 | 4.75 | 6:14:00 | 11 0 15 42.3 |
| ETH/BTC | 33 | 0.30 | 0.00049856 | 4.98 | 7:31:00 | 16 0 17 48.5 |
| IOTA/BTC | 32 | 0.03 | 0.00005444 | 0.54 | 3:12:00 | 14 0 18 43.8 |
| LSK/BTC | 15 | 1.75 | 0.00131413 | 13.13 | 2:58:00 | 6 0 9 40.0 |
| LTC/BTC | 32 | -0.04 | -0.00006886 | -0.69 | 4:49:00 | 11 0 21 34.4 |
| NANO/BTC | 17 | 1.26 | 0.00107058 | 10.70 | 1:55:00 | 10 0 7 58.5 |
| NEO/BTC | 23 | 0.82 | 0.00094936 | 9.48 | 2:59:00 | 10 0 13 43.5 |
| REQ/BTC | 9 | 1.17 | 0.00052734 | 5.27 | 3:47:00 | 4 0 5 44.4 |
| XLM/BTC | 16 | 1.22 | 0.00097800 | 9.77 | 3:15:00 | 7 0 9 43.8 |
| XMR/BTC | 23 | -0.18 | -0.00020696 | -2.07 | 5:30:00 | 12 0 11 52.2 |
| XRP/BTC | 35 | 0.66 | 0.00114897 | 11.48 | 3:49:00 | 12 0 23 34.3 |
| ZEC/BTC | 22 | -0.46 | -0.00050971 | -5.09 | 2:22:00 | 7 0 15 31.8 |
| TOTAL | 429 | 0.36 | 0.00762792 | 76.20 | 4:12:00 | 186 0 243 43.4 |
============================================= LEFT OPEN TRADES REPORT =============================================
| Pair | Trades | Avg Profit % | Tot Profit BTC | Tot Profit % | Avg Duration | Win Draw Loss Win% |
|----------+---------+----------------+------------------+----------------+----------------+---------------------|
| ADA/BTC | 1 | 0.89 | 0.00004434 | 0.44 | 6:00:00 | 1 0 0 100 |
| LTC/BTC | 1 | 0.68 | 0.00003421 | 0.34 | 2:00:00 | 1 0 0 100 |
| TOTAL | 2 | 0.78 | 0.00007855 | 0.78 | 4:00:00 | 2 0 0 100 |
==================== EXIT REASON STATS ====================
| Exit Reason | Exits | Wins | Draws | Losses |
|--------------------+---------+-------+--------+---------|
| trailing_stop_loss | 205 | 150 | 0 | 55 |
| stop_loss | 166 | 0 | 0 | 166 |
| exit_signal | 56 | 36 | 0 | 20 |
| force_exit | 2 | 0 | 0 | 2 |
BACKTESTING REPORT
┏━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Pair ┃ Trades ┃ Avg Profit % ┃ Tot Profit ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃
┡━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
│ LTC/USDT:USDT │ 16 │ 1.01 56.882 │ 5.69 │ 16:16:00 │ 16 0 0 100 │
│ ETC/USDT:USDT │ 12 0.73 │ 31.513 │ 3.15 │ 9:55:00 │ 11 0 1 91.7 │
│ ETH/USDT:USDT │ 8 │ 0.69 │ 18.659 │ 1.87 │ 1 day, 13:55:00 7 0 1 87.5 │
│ XLM/USDT:USDT │ 10 │ 0.3 │ 10.694 │ 1.07 │ 12:08:00 9 0 1 90.0 │
│ BTC/USDT:USDT │ 8 │ 0.22 │ 7.502 │ 0.75 │ 3 days, 1:24:00 │ 6 0 2 75.0 │
│ XRP/USDT:USDT │ 9 │ -0.13 │ -6.837 -0.68 │ 21:18:00 8 0 1 88.9 │
│ DOT/USDT:USDT │ 6 │ -0.39 │ -9.169 │ -0.92 │ 5:35:00 4 0 2 66.7 │
│ ADA/USDT:USDT │ 8 │ -1.75 │ -52.089 │ -5.21 │ 11:38:00 │ 6 0 2 75.0 │
│ TOTAL │ 77 │ 0.23 │ 57.157 │ 5.72 │ 22:12:00 │ 67 0 10 87.0
└───────────────┴────────┴──────────────┴─────────────┴──────────────┴─────────────────┴────────────────────────┘
LEFT OPEN TRADES REPORT
┏━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Pair ┃ Trades ┃ Avg Profit % ┃ Tot Profit ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃
┡━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
│ BTC/USDT:USDT │ 1 │ -4.14 │ -9.930 │ -0.99 │ 17 days, 8:00:00 0 0 1 0 │
│ ETC/USDT:USDT │ 1 │ -4.24 │ -15.365 │ -1.54 │ 10:40:00 0 0 1 0 │
│ DOT/USDT:USDT │ 1 │ -5.29 │ -19.166 │ -1.92 │ 11:30:00 │ 0 0 1 0 │
│ TOTAL │ 3 │ -4.56 │ -44.461 │ -4.45 │ 6 days, 2:03:00 0 0 3 0 │
└───────────────┴────────┴──────────────┴─────────────┴──────────────┴──────────────────┴────────────────────────┘
ENTER TAG STATS
┏━━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Enter Tag ┃ Entries ┃ Avg Profit % ┃ Tot Profit ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃
┡━━━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
│ OTHER │ 77 │ 0.23 │ 57.157 │ 5.72 │ 22:12:00 │ 67 0 10 87.0
│ TOTAL │ 77 │ 0.23 │ 57.157 │ 5.72 │ 22:12:00 │ 67 0 10 87.0 │
└───────────┴─────────┴──────────────┴─────────────┴──────────────┴──────────────┴────────────────────────┘
EXIT REASON STATS
┏━━━━━━━━━━━━━┳━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Exit Reason ┃ Exits ┃ Avg Profit % ┃ Tot Profit ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃
┡━━━━━━━━━━━━━╇━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
│ roi │ 67 │ 1.06 │ 245.117 │ 24.51 │ 15:49:00 67 0 0 100 │
│ exit_signal │ 4 │ -2.23 │ -31.226 │ -3.12 │ 1 day, 8:38:00 │ 0 0 4 0 │
│ force_exit │ 3 │ -4.56 │ -44.461 │ -4.45 │ 6 days, 2:03:00 │ 0 0 3 0 │
│ stop_loss │ 3 │ -10.14 │ -112.273 │ -11.23 │ 1 day, 3:05:00 │ 0 0 3 0 │
│ TOTAL │ 77 │ 0.23 │ 57.157 │ 5.72 │ 22:12:00 │ 67 0 10 87.0 │
└─────────────┴───────┴──────────────┴─────────────┴──────────────┴─────────────────┴────────────────────────┘
MIXED TAG STATS
┏━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Enter Tag ┃ Exit Reason ┃ Trades ┃ Avg Profit % ┃ Tot Profit ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃
┡━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
│ │ roi │ 67 │ 1.06 │ 245.117 │ 24.51 │ 15:49:00 │ 67 0 0 100 │
│ │ exit_signal │ 4 │ -2.23 │ -31.226 │ -3.12 │ 1 day, 8:38:00 │ 0 0 4 0 │
│ │ force_exit │ 3 │ -4.56 │ -44.461 │ -4.45 │ 6 days, 2:03:00 │ 0 0 3 0 │
│ │ stop_loss │ 3 │ -10.14 │ -112.273 │ -11.23 │ 1 day, 3:05:00 │ 0 0 3 0 │
│ TOTAL │ │ 77 │ 0.23 │ 57.157 │ 5.72 │ 22:12:00 │ 67 0 10 87.0 │
└───────────┴─────────────┴────────┴──────────────┴─────────────┴──────────────┴─────────────────┴────────────────────────┘
SUMMARY METRICS
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Metric ┃ Value ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ Backtesting from │ 2025-07-01 00:00:00 │
│ Backtesting to │ 2025-08-01 00:00:00 │
│ Trading Mode │ Isolated Futures │
│ Max open trades │ 3 │
│ │ │
│ Total/Daily Avg Trades │ 77 / 2.48 │
│ Starting balance │ 1000 USDT │
│ Final balance │ 1057.157 USDT │
│ Absolute profit │ 57.157 USDT │
│ Total profit % │ 5.72% │
│ CAGR % │ 92.41% │
│ Sharpe (closed trades) │ 3.89 │
│ Sortino (closed trades) │ 2.57 │
│ Calmar (closed trades) │ 43.03 │
│ SQN │ 0.71 │
│ Profit factor │ 1.30 │
│ Expectancy (Ratio) │ 0.74 (0.04) │
│ Avg. daily profit │ 1.844 USDT │
│ Avg. stake amount │ 345.478 USDT │
│ Market change │ 30.51% │
│ Total trade volume │ 53390.788 USDT │
│ │ │
│ Long / Short trades │ 67 / 10 │
│ Long / Short profit % │ 9.19% / -3.48% │
│ Long / Short profit USDT │ 91.940 / -34.783 │
│ │ │
│ Best Pair │ LTC/USDT:USDT 5.69% │
│ Worst Pair │ ADA/USDT:USDT -5.21% │
│ Best trade │ XRP/USDT:USDT 2.00% │
│ Worst trade │ ADA/USDT:USDT -10.17% │
│ Best day │ 27.031 USDT │
│ Worst day │ -47.826 USDT │
│ Days win/draw/lose │ 20 / 6 / 5 │
│ Min/Max/Avg. Duration Winners │ 0d 00:35 / 5d 18:15 / 0d 15:49 │
│ Min/Max/Avg. Duration Losers │ 0d 10:40 / 17d 08:00 / 2d 17:00 │
│ Max Consecutive Wins / Loss │ 36 / 3 │
│ Rejected Entry signals │ 258 │
│ Entry/Exit Timeouts │ 0 / 0 │
│ │ │
│ Min/Max balance (closed trades) │ 1003.205 USDT / 1151.425 USDT │
│ Max % of account underwater │ 8.19% │
│ Absolute drawdown │ 94.268 USDT (8.19%) │
│ Drawdown duration │ 9 days 08:50:00 │
│ Profit at drawdown start │ 151.425 USDT │
│ Profit at drawdown end │ 57.157 USDT │
│ Drawdown start │ 2025-07-22 15:10:00 │
│ Drawdown end │ 2025-08-01 00:00:00 │
│ │ │
│ Wallet based Metrics │ │
│ Min/Max balance (wallet balance) │ 1000 USDT / 1151.425 USDT │
│ Min/Max balance dates (wallet balance) │ 2025-07-01 00:05:00 / 2025-07-22 15:15:00 │
│ Max % of account underwater (balance) │ 5.01% │
│ Absolute drawdown (wallet balance) │ 54.76 USDT (4.76%) │
│ Drawdown duration │ 7 days 20:35:00 │
│ Profit at drawdown start │ 151.425 USDT │
│ Profit at drawdown end │ 96.664 USDT │
│ Drawdown start │ 2025-07-22 15:15:00 │
│ Drawdown end │ 2025-07-30 11:50:00 │
│ Sharpe (daily wallet balance) │ 4.42 │
│ Sortino (daily wallet balance) │ 4.35 │
│ Calmar (daily wallet balance) │ 136.07 │
└────────────────────────────────────────┴───────────────────────────────────────────┘
Backtested 2025-07-01 00:00:00 -> 2025-08-01 00:00:00 | Max open trades : 3
STRATEGY SUMMARY
┏━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━┓
┃ Strategy ┃ Trades ┃ Avg Profit % ┃ Tot Profit ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃ Drawdown ┃
┡━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━┩
│ SampleStrategy │ 77 │ 0.23 │ 57.157 │ 5.72 │ 22:12:00 │ 67 0 10 87.0 │ 94.268 8.19% │
└────────────────┴────────┴──────────────┴─────────────┴──────────────┴──────────────┴────────────────────────┴────────────────┘
================== SUMMARY METRICS ==================
| Metric | Value |
|-----------------------------+---------------------|
| Backtesting from | 2019-01-01 00:00:00 |
| Backtesting to | 2019-05-01 00:00:00 |
| Trading Mode | Spot |
| Max open trades | 3 |
| | |
| Total/Daily Avg Trades | 429 / 3.575 |
| Starting balance | 0.01000000 BTC |
| Final balance | 0.01762792 BTC |
| Absolute profit | 0.00762792 BTC |
| Total profit % | 76.2% |
| CAGR % | 460.87% |
| Sortino | 1.88 |
| Sharpe | 2.97 |
| Calmar | 6.29 |
| SQN | 2.45 |
| Profit factor | 1.11 |
| Expectancy (Ratio) | -0.15 (-0.05) |
| Avg. stake amount | 0.001 BTC |
| Total trade volume | 0.429 BTC |
| | |
| Long / Short | 352 / 77 |
| Total profit Long % | 1250.58% |
| Total profit Short % | -15.02% |
| Absolute profit Long | 0.00838792 BTC |
| Absolute profit Short | -0.00076 BTC |
| | |
| Best Pair | LSK/BTC 26.26% |
| Worst Pair | ZEC/BTC -10.18% |
| Best Trade | LSK/BTC 4.25% |
| Worst Trade | ZEC/BTC -10.25% |
| Best day | 0.00076 BTC |
| Worst day | -0.00036 BTC |
| Days win/draw/lose | 12 / 82 / 25 |
| Avg. Duration Winners | 4:23:00 |
| Avg. Duration Loser | 6:55:00 |
| Max Consecutive Wins / Loss | 3 / 4 |
| Rejected Entry signals | 3089 |
| Entry/Exit Timeouts | 0 / 0 |
| Canceled Trade Entries | 34 |
| Canceled Entry Orders | 123 |
| Replaced Entry Orders | 89 |
| | |
| Min balance | 0.00945123 BTC |
| Max balance | 0.01846651 BTC |
| Max % of account underwater | 25.19% |
| Absolute Drawdown (Account) | 13.33% |
| Drawdown | 0.0015 BTC |
| Drawdown high | 0.0013 BTC |
| Drawdown low | -0.0002 BTC |
| Drawdown Start | 2019-02-15 14:10:00 |
| Drawdown End | 2019-04-11 18:15:00 |
| Market change | -5.88% |
=====================================================
```
### Backtesting report table
The 1st table contains all trades the bot made, including "left open trades".
The first table contains all trades the bot made, including "left open trades".
The last line will give you the overall performance of your strategy,
here:
```
| TOTAL | 429 | 0.36 | 152.41 | 0.00762792 | 76.20 | 4:12:00 | 186 0 243 43.4 |
TOTAL 77 │ 0.22 │ 54.774 │ 5.48 │ 22:12:00 67 0 10 87.0 │
```
The bot has made `429` trades for an average duration of `4:12:00`, with a performance of `76.20%` (profit), that means it has
earned a total of `0.00762792 BTC` starting with a capital of 0.01 BTC.
The bot has made `77` trades for an average duration of `22:12:00`, with a performance of `5.48%` (profit), that means it has earned a total of `54.774 USDT` starting with a capital of 1000 USDT.
The column `Avg Profit %` shows the average profit for all trades made.
The column `Tot Profit %` shows instead the total profit % in relation to the starting balance.
In the above results, we have a starting balance of 0.01 BTC and an absolute profit of 0.00762792 BTC - so the `Tot Profit %` will be `(0.00762792 / 0.01) * 100 ~= 76.2%`.
In the above results, we have a starting balance of 1000 USDT and an absolute profit of 54.774 USDT - so the `Tot Profit %` will be `(54.774 / 1000) * 100 ~= 5.48%`.
Your strategy performance is influenced by your entry strategy, your exit strategy, and also by the `minimal_roi` and `stop_loss` you have set.
@@ -284,145 +319,185 @@ On the other hand, if you set a too high `minimal_roi` like `"0": 0.55`
(55%), there is almost no chance that the bot will ever reach this profit.
Hence, keep in mind that your performance is an integral mix of all different elements of the strategy, your configuration, and the crypto-currency pairs you have set up.
### Exit reasons table
The 2nd table contains a recap of exit reasons.
This table can tell you which area needs some additional work (e.g. all or many of the `exit_signal` trades are losses, so you should work on improving the exit signal, or consider disabling it).
### Left open trades table
The 3rd table contains all trades the bot had to `force_exit` at the end of the backtesting period to present you the full picture.
The second table contains all trades the bot had to `force_exit` at the end of the backtesting period to present you the full picture.
This is necessary to simulate realistic behavior, since the backtest period has to end at some point, while realistically, you could leave the bot running forever.
These trades are also included in the first table, but are also shown separately in this table for clarity.
### Enter tag stats table
The third table provides a breakdown of trades by their entry tags (e.g., `enter_long`, `enter_short`), showing the number of entries, average profit percentage, total profit in the stake currency, total profit percentage, average duration, and the number of wins, draws, and losses for each tag.
### Exit reason stats table
The fourth table contains a recap of exit reasons (e.g., `exit_signal`, `roi`, `stop_loss`, `force_exit`). This table can tell you which area needs additional work (e.g., if many `exit_signal` trades are losses, you should work on improving the exit signal or consider disabling it).
### Mixed tag stats table
The fifth table combines entry tags and exit reasons, providing a detailed view of how different entry tags performed with specific exit reasons. This can help identify which combinations of entry and exit strategies are most effective.
### Summary metrics
The last element of the backtest report is the summary metrics table.
It contains some useful key metrics about performance of your strategy on backtesting data.
It contains key metrics about the performance of your strategy on backtesting data.
```
================== SUMMARY METRICS ==================
| Metric | Value |
|-----------------------------+---------------------|
| Backtesting from | 2019-01-01 00:00:00 |
| Backtesting to | 2019-05-01 00:00:00 |
| Trading Mode | Spot |
| Max open trades | 3 |
| | |
| Total/Daily Avg Trades | 429 / 3.575 |
| Starting balance | 0.01000000 BTC |
| Final balance | 0.01762792 BTC |
| Absolute profit | 0.00762792 BTC |
| Total profit % | 76.2% |
| CAGR % | 460.87% |
| Sortino | 1.88 |
| Sharpe | 2.97 |
| Calmar | 6.29 |
| SQN | 2.45 |
| Profit factor | 1.11 |
| Expectancy (Ratio) | -0.15 (-0.05) |
| Avg. stake amount | 0.001 BTC |
| Total trade volume | 0.429 BTC |
| | |
| Long / Short | 352 / 77 |
| Total profit Long % | 1250.58% |
| Total profit Short % | -15.02% |
| Absolute profit Long | 0.00838792 BTC |
| Absolute profit Short | -0.00076 BTC |
| | |
| Best Pair | LSK/BTC 26.26% |
| Worst Pair | ZEC/BTC -10.18% |
| Best Trade | LSK/BTC 4.25% |
| Worst Trade | ZEC/BTC -10.25% |
| Best day | 0.00076 BTC |
| Worst day | -0.00036 BTC |
| Days win/draw/lose | 12 / 82 / 25 |
| Avg. Duration Winners | 4:23:00 |
| Avg. Duration Loser | 6:55:00 |
| Max Consecutive Wins / Loss | 3 / 4 |
| Rejected Entry signals | 3089 |
| Entry/Exit Timeouts | 0 / 0 |
| Canceled Trade Entries | 34 |
| Canceled Entry Orders | 123 |
| Replaced Entry Orders | 89 |
| | |
| Min balance | 0.00945123 BTC |
| Max balance | 0.01846651 BTC |
| Max % of account underwater | 25.19% |
| Absolute Drawdown (Account) | 13.33% |
| Drawdown | 0.0015 BTC |
| Drawdown high | 0.0013 BTC |
| Drawdown low | -0.0002 BTC |
| Drawdown Start | 2019-02-15 14:10:00 |
| Drawdown End | 2019-04-11 18:15:00 |
| Market change | -5.88% |
=====================================================
SUMMARY METRICS
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Metric ┃ Value ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
Backtesting from 2025-07-01 00:00:00
│ Backtesting to │ 2025-08-01 00:00:00 │
│ Trading Mode │ Isolated Futures │
│ Max open trades │ 3 │
│ │ │
│ Total/Daily Avg Trades │ 77 / 2.48 │
│ Starting balance │ 1000 USDT │
│ Final balance │ 1057.157 USDT │
│ Absolute profit │ 57.157 USDT │
│ Total profit % │ 5.72%
│ CAGR % │ 92.41% │
Sharpe (closed trades) │ 3.89
│ Sortino (closed trades) │ 2.57 │
│ Calmar (closed trades) │ 43.03 │
│ SQN │ 0.71 │
│ Profit factor │ 1.30 │
│ Expectancy (Ratio) 0.74 (0.04)
│ Avg. daily profit │ 1.844 USDT │
│ Avg. stake amount │ 345.478 USDT │
│ Market change 30.51%
Total trade volume │ 53390.788 USDT │
│ │ │
│ Long / Short trades │ 67 / 10 │
│ Long / Short profit % │ 9.19% / -3.48% │
│ Long / Short profit USDT │ 91.940 / -34.783 │
│ │ │
│ Best Pair │ LTC/USDT:USDT 5.69% │
│ Worst Pair │ ADA/USDT:USDT -5.21%
│ Best trade │ XRP/USDT:USDT 2.00% │
│ Worst trade │ ADA/USDT:USDT -10.17% │
│ Best day │ 27.031 USDT
│ Worst day │ -47.826 USDT │
│ Days win/draw/lose │ 20 / 6 / 5 │
│ Min/Max/Avg. Duration Winners │ 0d 00:35 / 5d 18:15 / 0d 15:49
Min/Max/Avg. Duration Losers │ 0d 10:40 / 17d 08:00 / 2d 17:00
│ Max Consecutive Wins / Loss │ 36 / 3 │
│ Rejected Entry signals │ 258 │
│ Entry/Exit Timeouts │ 0 / 0 │
│ │ │
│ Min/Max balance (closed trades) │ 1003.205 USDT / 1151.425 USDT
│ Max % of account underwater │ 8.19% │
│ Absolute drawdown │ 94.268 USDT (8.19%) │
│ Drawdown duration │ 9 days 08:50:00 │
│ Profit at drawdown start │ 151.425 USDT │
│ Profit at drawdown end │ 57.157 USDT │
Drawdown start │ 2025-07-22 15:10:00 │
Drawdown end │ 2025-08-01 00:00:00 │
│ │ │
│ Wallet based Metrics │ │
│ Min/Max balance (wallet balance) │ 1000 USDT / 1151.425 USDT │
Min/Max balance dates (wallet balance) │ 2025-07-01 00:05:00 / 2025-07-22 15:15:00 │
│ Max % of account underwater (balance) │ 5.01% │
│ Absolute drawdown (wallet balance) │ 54.76 USDT (4.76%) │
│ Drawdown duration │ 7 days 20:35:00 │
│ Profit at drawdown start │ 151.425 USDT │
│ Profit at drawdown end │ 96.664 USDT │
│ Drawdown start │ 2025-07-22 15:15:00 │
│ Drawdown end │ 2025-07-30 11:50:00 │
│ Sharpe (daily wallet balance) │ 4.42 │
│ Sortino (daily wallet balance) │ 4.35 │
│ Calmar (daily wallet balance) │ 136.07 │
└────────────────────────────────────────┴───────────────────────────────────────────┘
```
- `Backtesting from` / `Backtesting to`: Backtesting range (usually defined with the `--timerange` option).
- `Max open trades`: Setting of `max_open_trades` (or `--max-open-trades`) - or number of pairs in the pairlist (whatever is lower).
- `Trading Mode`: Spot or Futures trading.
- `Max open trades`: Setting of `max_open_trades` (or `--max-open-trades`) - or number of pairs in the pairlist (whatever is lower).
- `Total/Daily Avg Trades`: Identical to the total trades of the backtest output table / Total trades divided by the backtesting duration in days (this will give you information about how many trades to expect from the strategy).
- `Starting balance`: Start balance - as given by dry-run-wallet (config or command line).
- `Final balance`: Final balance - starting balance + absolute profit.
- `Absolute profit`: Profit made in stake currency.
- `Total profit %`: Total profit. Aligned to the `TOTAL` row's `Tot Profit %` from the first table. Calculated as `(End capital Starting capital) / Starting capital`.
- `CAGR %`: Compound annual growth rate.
- `Sortino`: Annualized Sortino ratio.
- `Sharpe`: Annualized Sharpe ratio.
- `Calmar`: Annualized Calmar ratio.
- `Sharpe (closed trades)`: Annualized Sharpe ratio including only closed trades (ignoring open trades with profits or losses).
- `Sortino (closed trades)`: Annualized Sortino ratio including only closed trades (ignoring open trades with profits or losses).
- `Calmar (closed trades)`: Annualized Calmar ratio including only closed trades (ignoring open trades with profits or losses).
- `SQN`: System Quality Number (SQN) - by Van Tharp.
- `Profit factor`: profit / loss.
- `Profit factor`: Sum of the profits of all winning trades divided by the sum of the losses of all losing trades.
- `Expectancy (Ratio)`: Expectancy ratio, which is the average profit or loss per trade. A negative expectancy ratio means that your strategy is not profitable.
- `Avg. daily profit`: Average profit per day, calculated as `(Total Profit / Backtest Days)`.
- `Avg. stake amount`: Average stake amount, either `stake_amount` or the average when using dynamic stake amount.
- `Market change`: Change of the market during the backtest period. Calculated as the average of all pairs' changes from the first to the last candle using the "close" column.
- `Total trade volume`: Volume generated on the exchange to reach the above profit.
- `Best Pair` / `Worst Pair`: Best and worst performing pair, and it's corresponding `Tot Profit %`.
- `Best Trade` / `Worst Trade`: Biggest single winning trade and biggest single losing trade.
- `Long / Short trades`: Split long/short trade counts (only shown when short trades were made).
- `Long / Short profit %`: Profit percentage for long and short trades (only shown when short trades were made).
- `Long / Short profit USDT`: Profit in stake currency for long and short trades (only shown when short trades were made).
- `Best Pair` / `Worst Pair`: Best and worst performing pair (based on total profit percentage), and its corresponding `Tot Profit %`.
- `Best trade` / `Worst trade`: Biggest single winning trade and biggest single losing trade.
- `Best day` / `Worst day`: Best and worst day based on daily profit.
- `Days win/draw/lose`: Winning / Losing days (draws are usually days without closed trade).
- `Avg. Duration Winners` / `Avg. Duration Loser`: Average durations for winning and losing trades.
- `Days win/draw/lose`: Winning / Losing days (draws are usually days without closed trades).
- `Min/Max/Avg. Duration Winners`: Minimum, maximum, and average durations for winning trades.
- `Min/Max/Avg. Duration Losers`: Minimum, maximum, and average durations for losing trades.
- `Max Consecutive Wins / Loss`: Maximum consecutive wins/losses in a row.
- `Rejected Entry signals`: Trade entry signals that could not be acted upon due to `max_open_trades` being reached.
- `Entry/Exit Timeouts`: Entry/exit orders which did not fill (only applicable if custom pricing is used).
- `Canceled Trade Entries`: Number of trades that have been canceled by user request via `adjust_entry_price`.
- `Canceled Entry Orders`: Number of entry orders that have been canceled by user request via `adjust_entry_price`.
- `Replaced Entry Orders`: Number of entry orders that have been replaced by user request via `adjust_entry_price`.
- `Min balance` / `Max balance`: Lowest and Highest Wallet balance during the backtest period.
- `Max % of account underwater`: Maximum percentage your account has decreased from the top since the simulation started.
Calculated as the maximum of `(Max Balance - Current Balance) / (Max Balance)`.
- `Absolute Drawdown (Account)`: Maximum Account Drawdown experienced. Calculated as `(Absolute Drawdown) / (DrawdownHigh + startingBalance)`.
- `Drawdown`: Maximum, absolute drawdown experienced. Difference between Drawdown High and Subsequent Low point.
- `Drawdown high` / `Drawdown low`: Profit at the beginning and end of the largest drawdown period. A negative low value means initial capital lost.
- `Drawdown Start` / `Drawdown End`: Start and end datetime for this largest drawdown (can also be visualized via the `plot-dataframe` sub-command).
- `Market change`: Change of the market during the backtest period. Calculated as average of all pairs changes from the first to the last candle using the "close" column.
- `Long / Short`: Split long/short values (Only shown when short trades were made).
- `Total profit Long %` / `Absolute profit Long`: Profit long trades only (Only shown when short trades were made).
- `Total profit Short %` / `Absolute profit Short`: Profit short trades only (Only shown when short trades were made).
- `Min/Max balance (closed trades)`: Lowest and Highest Wallet balance during the backtest period based on closed trades trades.
- `Max % of account underwater`: Maximum percentage your account has decreased from the top since the simulation started. Calculated as the maximum of `(Max Balance - Current Balance) / (Max Balance)`.
- `Absolute drawdown`: Maximum absolute drawdown experienced, including percentage relative to the account calculated as `(Absolute Drawdown) / (DrawdownHigh + startingBalance)`..
- `Absolute drawdown (wallet balance)`: Maximum absolute drawdown experienced based on the unrealized balance, including percentage relative to the account calculated as `(Absolute Drawdown) / (DrawdownHigh + startingBalance)`.
- `Drawdown duration`: Duration of the largest drawdown period.
- `Profit at drawdown start` / `Profit at drawdown end`: Profit at the beginning and end of the largest drawdown period.
- `Drawdown start` / `Drawdown end`: Start and end datetime for the largest drawdown (can also be visualized via the `plot-dataframe` sub-command).
- `Min/Max balance (wallet balance)`: Lowest and Highest Wallet balance during the backtest period - including capital tied in open trades.
- `Min/Max balance dates (wallet balance)`: Dates when the minimum and maximum unrealized balance occurred.
- `Sharpe (wallet balance)` Annualized Sharpe ratio calculation including unrealized profits.
- `Sortino (wallet balance)` Annualized Sortino ratio calculation including unrealized profits.
- `Calmar (wallet balance)` Annualized Calmar ratio calculation including unrealized profits.
### Daily / Weekly / Monthly breakdown
!!! Tip "Wallet based Metrics"
The metrics under the "Wallet based Metrics" section are calculated based on the unrealized balance, which includes the capital tied in open trades. This provides a more comprehensive view of the strategy's performance, as it accounts for both realized and unrealized profits and losses.
You can get an overview over daily / weekly or monthly results by using the `--breakdown <>` switch.
### Daily / Weekly / Monthly / Yearly breakdown
To visualize daily and weekly breakdowns, you can use the following:
You can get an overview over daily, weekly, monthly, or yearly results by using the `--breakdown <>` switch.
To visualize monthly and yearly breakdowns, you can use the following:
``` bash
freqtrade backtesting --strategy MyAwesomeStrategy --breakdown day week
freqtrade backtesting --strategy MyAwesomeStrategy --breakdown month year
```
``` output
======================== DAY BREAKDOWN =========================
| Day | Tot Profit USDT | Wins | Draws | Losses |
|------------+-------------------+--------+---------+----------|
| 03/07/2021 | 200.0 | 2 | 0 | 0 |
| 04/07/2021 | -50.31 | 0 | 0 | 2 |
| 05/07/2021 | 220.611 | 3 | 2 | 0 |
| 06/07/2021 | 150.974 | 3 | 0 | 2 |
| 07/07/2021 | -70.193 | 1 | 0 | 2 |
| 08/07/2021 | 212.413 | 2 | 0 | 3 |
MONTH BREAKDOWN
┏━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Month ┃ Trades ┃ Tot Profit USDT ┃ Profit Factor ┃ Win Draw Loss Win% ┃
┡━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
│ 31/01/2020 │ 12 │ 44.451 │ 7.28 │ 10 0 2 83.3 │
│ 29/02/2020 │ 30 │ 45.41 │ 2.36 │ 17 0 13 56.7 │
│ 31/03/2020 │ 35 │ 142.024 2.42 │ 14 0 21 40.0 │
│ 30/04/2020 │ 67 │ -23.692 │ 0.81 │ 24 0 43 35.8 │
...
...
│ 30/04/2025 │ 203 │ -63.43 │ 0.81 │ 73 0 130 36.0 │
│ 31/05/2025 │ 142 │ 104.675 │ 1.28 │ 59 0 83 41.5 │
│ 30/06/2025 │ 177 │ -1.014 │ 1.0 │ 85 0 92 48.0 │
│ 31/07/2025 │ 155 │ 232.762 │ 1.6 │ 63 0 92 40.6 │
└────────────┴────────┴─────────────────┴───────────────┴────────────────────────┘
YEAR BREAKDOWN
┏━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Year ┃ Trades ┃ Tot Profit USDT ┃ Profit Factor ┃ Win Draw Loss Win% ┃
┡━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
│ 31/12/2020 │ 896 │ 868.889 │ 1.46 │ 351 0 545 39.2 │
│ 31/12/2021 │ 1778 │ 4487.163 │ 1.93 │ 745 0 1033 41.9 │
│ 31/12/2022 │ 1736 │ 938.27 │ 1.27 │ 698 0 1038 40.2 │
│ 31/12/2023 │ 1712 │ 1677.126 │ 1.68 │ 670 0 1042 39.1 │
│ 31/12/2024 │ 1609 │ 3198.424 │ 2.22 │ 773 0 836 48.0 │
│ 31/12/2025 │ 1042 │ 716.174 │ 1.33 │ 420 0 622 40.3 │
└────────────┴────────┴─────────────────┴───────────────┴────────────────────────┘
```
The output will show a table containing the realized absolute Profit (in stake currency) for the given timeperiod, as well as wins, draws and losses that materialized (closed) on this day. Below that there will be a second table for the summarized values of weeks indicated by the date of the closing Sunday. The same would apply to a monthly breakdown indicated by the last day of the month.
The output will display tables containing the realized absolute profit (in stake currency) for the selected period, along with additional statistics such as number of trades, profit factor, and distribution of wins, draws, and losses that materialized (closed) on this period.
### Backtest result caching
@@ -446,10 +521,10 @@ For this mode - `--notes "<notes>"` can be used to add notes to the backtest res
The output file freqtrade produces is a zip file containing the following files:
- The backtest report in json format
- the market change data in feather format
- a copy of the strategy file
- a copy of the strategy parameters (if a parameter file was used)
- a sanitized copy of the config file
- The market change data in feather format
- A copy of the strategy file
- A copy of the strategy parameters (if a parameter file was used)
- A sanitized copy of the config file
This will ensure results are reproducible - under the assumption that the same data is available.
@@ -467,7 +542,7 @@ Since backtesting lacks some detailed information about what happens within a ca
- Exit-signal is favored over Stoploss, because exit-signals are assumed to trigger on candle's open
- ROI
- Exits are compared to high - but the ROI value is used (e.g. ROI = 2%, high=5% - so the exit will be at 2%)
- Exits are never "below the candle", so a ROI of 2% may result in a exit at 2.4% if low was at 2.4% profit
- Exits are never "below the candle", so a ROI of 2% may result in an exit at 2.4% if low was at 2.4% profit
- ROI entries which came into effect on the triggering candle (e.g. `120: 0.02` for 1h candles, from `60: 0.05`) will use the candle's open as exit rate
- Force-exits caused by `<N>=-1` ROI entries use low as exit value, unless N falls on the candle open (e.g. `120: -1` for 1h candles)
- Stoploss exits happen exactly at stoploss price, even if low was lower, but the loss will be `2 * fees` higher than the stoploss price
@@ -533,7 +608,7 @@ freqtrade backtesting --strategy AwesomeStrategy --timeframe 1h --timeframe-deta
This will load 1h data (the main timeframe) as well as 5m data (detail timeframe) for the selected timerange.
The strategy will be analyzed with the 1h timeframe.
Candles where activity may take place (there's an active signal, the pair is in a trade) are evaluated at the 5m timeframe.
Candles where activity may take place (there's an active signal, the pair is in a trade) are evaluated at the 5m timeframe.
This will allow for a more accurate simulation of intra-candle movements - and can lead to different results, especially on higher timeframes.
Entries will generally still happen at the main candle's open, however freed trade slots may be freed earlier (if the exit signal is triggered on the 5m candle), which can then be used for a new trade of a different pair.
@@ -596,5 +671,5 @@ Detailed output for all strategies one after the other will be available, so mak
## Next step
Great, your strategy is profitable. What if the bot can give your the optimal parameters to use for your strategy?
Great, your strategy is profitable. What if the bot can give you the optimal parameters to use for your strategy?
Your next step is to learn [how to find optimal parameters with Hyperopt](hyperopt.md)
+16 -11
View File
@@ -1,8 +1,9 @@
```
``` output
usage: freqtrade backtesting-analysis [-h] [-v] [--no-color] [--logfile FILE]
[-V] [-c PATH] [-d PATH]
[--userdir PATH]
[--export-filename PATH]
[--backtest-filename PATH]
[--backtest-directory PATH]
[--analysis-groups {0,1,2,3,4,5} [{0,1,2,3,4,5} ...]]
[--enter-reason-list ENTER_REASON_LIST [ENTER_REASON_LIST ...]]
[--exit-reason-list EXIT_REASON_LIST [EXIT_REASON_LIST ...]]
@@ -14,10 +15,15 @@ usage: freqtrade backtesting-analysis [-h] [-v] [--no-color] [--logfile FILE]
options:
-h, --help show this help message and exit
--export-filename PATH, --backtest-filename PATH
Use this filename for backtest results.Requires
`--export` to be set as well. Example: `--export-filen
ame=user_data/backtest_results/backtest_today.json`
--backtest-filename, --export-filename PATH
Use this filename for backtest results.Example:
`--backtest-
filename=backtest_results_2020-09-27_16-20-48.json`.
Assumes either `user_data/backtest_results/` or
`--export-directory` as base directory.
--backtest-directory, --export-directory PATH
Directory to use for backtest results. Example:
`--export-directory=user_data/backtest_results/`.
--analysis-groups {0,1,2,3,4,5} [{0,1,2,3,4,5} ...]
grouping output - 0: simple wins/losses by enter tag,
1: by enter_tag, 2: by enter_tag and exit_tag, 3: by
@@ -48,21 +54,20 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+20 -14
View File
@@ -1,39 +1,45 @@
```
``` output
usage: freqtrade backtesting-show [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH]
[--export-filename PATH] [--show-pair-list]
[--breakdown {day,week,month,year} [{day,week,month,year} ...]]
[--backtest-filename PATH]
[--backtest-directory PATH]
[--show-pair-list]
[--breakdown {day,week,month,year,weekday} [{day,week,month,year,weekday} ...]]
options:
-h, --help show this help message and exit
--export-filename PATH, --backtest-filename PATH
Use this filename for backtest results.Requires
`--export` to be set as well. Example: `--export-filen
ame=user_data/backtest_results/backtest_today.json`
--backtest-filename, --export-filename PATH
Use this filename for backtest results.Example:
`--backtest-
filename=backtest_results_2020-09-27_16-20-48.json`.
Assumes either `user_data/backtest_results/` or
`--export-directory` as base directory.
--backtest-directory, --export-directory PATH
Directory to use for backtest results. Example:
`--export-directory=user_data/backtest_results/`.
--show-pair-list Show backtesting pairlist sorted by profit.
--breakdown {day,week,month,year} [{day,week,month,year} ...]
--breakdown {day,week,month,year,weekday} [{day,week,month,year,weekday} ...]
Show backtesting breakdown per [day, week, month,
year].
year, weekday].
Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+34 -25
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade backtesting [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH] [-s NAME]
[--strategy-path PATH]
@@ -10,18 +10,20 @@ usage: freqtrade backtesting [-h] [-v] [--no-color] [--logfile FILE] [-V]
[--stake-amount STAKE_AMOUNT] [--fee FLOAT]
[-p PAIRS [PAIRS ...]] [--eps]
[--enable-protections]
[--enable-dynamic-pairlist]
[--dry-run-wallet DRY_RUN_WALLET]
[--timeframe-detail TIMEFRAME_DETAIL]
[--strategy-list STRATEGY_LIST [STRATEGY_LIST ...]]
[--export {none,trades,signals}]
[--export-filename PATH]
[--breakdown {day,week,month,year} [{day,week,month,year} ...]]
[--backtest-filename PATH]
[--backtest-directory PATH]
[--breakdown {day,week,month,year,weekday} [{day,week,month,year,weekday} ...]]
[--cache {none,day,week,month}]
[--freqai-backtest-live-models] [--notes TEXT]
options:
-h, --help show this help message and exit
-i TIMEFRAME, --timeframe TIMEFRAME
-i, --timeframe TIMEFRAME
Specify timeframe (`1m`, `5m`, `30m`, `1h`, `1d`).
--timerange TIMERANGE
Specify what timerange of data to use.
@@ -36,17 +38,24 @@ options:
setting.
--fee FLOAT Specify fee ratio. Will be applied twice (on trade
entry and exit).
-p PAIRS [PAIRS ...], --pairs PAIRS [PAIRS ...]
-p, --pairs PAIRS [PAIRS ...]
Limit command to these pairs. Pairs are space-
separated.
--eps, --enable-position-stacking
Allow buying the same pair multiple times (position
stacking).
stacking). Only applicable to backtesting and
hyperopt. Results archived by this cannot be
reproduced in dry/live trading.
--enable-protections, --enableprotections
Enable protections for backtesting.Will slow
Enable protections for backtesting. Will slow
backtesting down by a considerable amount, but will
include configured protections
--dry-run-wallet DRY_RUN_WALLET, --starting-balance DRY_RUN_WALLET
--enable-dynamic-pairlist
Enables dynamic pairlist refreshes in backtesting. The
pairlist will be generated for each new candle if
you're using a pairlist handler that supports this
feature, for example, ShuffleFilter.
--dry-run-wallet, --starting-balance DRY_RUN_WALLET
Starting balance, used for backtesting / hyperopt and
dry-runs.
--timeframe-detail TIMEFRAME_DETAIL
@@ -55,19 +64,21 @@ options:
--strategy-list STRATEGY_LIST [STRATEGY_LIST ...]
Provide a space-separated list of strategies to
backtest. Please note that timeframe needs to be set
either in config or via command line. When using this
together with `--export trades`, the strategy-name is
injected into the filename (so `backtest-data.json`
becomes `backtest-data-SampleStrategy.json`
either in config or via command line.
--export {none,trades,signals}
Export backtest results (default: trades).
--export-filename PATH, --backtest-filename PATH
Use this filename for backtest results.Requires
`--export` to be set as well. Example: `--export-filen
ame=user_data/backtest_results/backtest_today.json`
--breakdown {day,week,month,year} [{day,week,month,year} ...]
--backtest-filename, --export-filename PATH
DEPRECATED: This option is deprecated for backtesting
and will be removed in a future release. Using a
custom filename for backtest results is no longer
supported. Use `--backtest-directory` to specify the
directory.
--backtest-directory, --export-directory PATH
Directory to use for backtest results. Example:
`--export-directory=user_data/backtest_results/`.
--breakdown {day,week,month,year,weekday} [{day,week,month,year,weekday} ...]
Show backtesting breakdown per [day, week, month,
year].
year, weekday].
--cache {none,day,week,month}
Load a cached backtest result no older than specified
age (default: day).
@@ -79,26 +90,24 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
Strategy arguments:
-s NAME, --strategy NAME
Specify strategy class name which will be used by the
-s, --strategy NAME Specify strategy class name which will be used by the
bot.
--strategy-path PATH Specify additional strategy lookup path.
--recursive-strategy-search
+12 -13
View File
@@ -1,17 +1,17 @@
```
``` output
usage: freqtrade convert-data [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH]
[-p PAIRS [PAIRS ...]] --format-from
{json,jsongz,feather,parquet} --format-to
{json,jsongz,feather,parquet} [--erase]
[--exchange EXCHANGE]
[-p PAIRS [PAIRS ...]]
--format-from {json,jsongz,feather,parquet}
--format-to {json,jsongz,feather,parquet}
[--erase] [--exchange EXCHANGE]
[-t TIMEFRAMES [TIMEFRAMES ...]]
[--trading-mode {spot,margin,futures}]
[--candle-types {spot,futures,mark,index,premiumIndex,funding_rate} [{spot,futures,mark,index,premiumIndex,funding_rate} ...]]
options:
-h, --help show this help message and exit
-p PAIRS [PAIRS ...], --pairs PAIRS [PAIRS ...]
-p, --pairs PAIRS [PAIRS ...]
Limit command to these pairs. Pairs are space-
separated.
--format-from {json,jsongz,feather,parquet}
@@ -21,10 +21,10 @@ options:
--erase Clean all existing data for the selected
exchange/pairs/timeframes.
--exchange EXCHANGE Exchange name. Only valid if no config is provided.
-t TIMEFRAMES [TIMEFRAMES ...], --timeframes TIMEFRAMES [TIMEFRAMES ...]
-t, --timeframes TIMEFRAMES [TIMEFRAMES ...]
Specify which tickers to download. Space-separated
list. Default: `1m 5m`.
--trading-mode {spot,margin,futures}, --tradingmode {spot,margin,futures}
--trading-mode, --tradingmode {spot,margin,futures}
Select Trading mode
--candle-types {spot,futures,mark,index,premiumIndex,funding_rate} [{spot,futures,mark,index,premiumIndex,funding_rate} ...]
Select candle type to convert. Defaults to all
@@ -34,21 +34,20 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+1 -1
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade convert-db [-h] [--db-url PATH] [--db-url-from PATH]
options:
+8 -9
View File
@@ -1,14 +1,14 @@
```
``` output
usage: freqtrade convert-trade-data [-h] [-v] [--no-color] [--logfile FILE]
[-V] [-c PATH] [-d PATH] [--userdir PATH]
[-p PAIRS [PAIRS ...]] --format-from
{json,jsongz,feather,parquet,kraken_csv}
[-p PAIRS [PAIRS ...]]
--format-from {json,jsongz,feather,parquet,kraken_csv}
--format-to {json,jsongz,feather,parquet}
[--erase] [--exchange EXCHANGE]
options:
-h, --help show this help message and exit
-p PAIRS [PAIRS ...], --pairs PAIRS [PAIRS ...]
-p, --pairs PAIRS [PAIRS ...]
Limit command to these pairs. Pairs are space-
separated.
--format-from {json,jsongz,feather,parquet,kraken_csv}
@@ -23,21 +23,20 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+2 -2
View File
@@ -1,9 +1,9 @@
```
``` output
usage: freqtrade create-userdir [-h] [--userdir PATH] [--reset]
options:
-h, --help show this help message and exit
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
--reset Reset sample files to their original state.
+18 -9
View File
@@ -1,20 +1,22 @@
```
``` output
usage: freqtrade download-data [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH]
[-p PAIRS [PAIRS ...]] [--pairs-file FILE]
[--days INT] [--new-pairs-days INT]
[--include-inactive-pairs]
[--no-parallel-download]
[--timerange TIMERANGE] [--dl-trades]
[--convert] [--exchange EXCHANGE]
[-t TIMEFRAMES [TIMEFRAMES ...]] [--erase]
[--data-format-ohlcv {json,jsongz,feather,parquet}]
[--data-format-trades {json,jsongz,feather,parquet}]
[--trading-mode {spot,margin,futures}]
[--candle-types {spot,futures,mark,index,premiumIndex,funding_rate} [{spot,futures,mark,index,premiumIndex,funding_rate} ...]]
[--prepend]
options:
-h, --help show this help message and exit
-p PAIRS [PAIRS ...], --pairs PAIRS [PAIRS ...]
-p, --pairs PAIRS [PAIRS ...]
Limit command to these pairs. Pairs are space-
separated.
--pairs-file FILE File containing a list of pairs. Takes precedence over
@@ -24,6 +26,9 @@ options:
Default: `None`.
--include-inactive-pairs
Also download data from inactive pairs.
--no-parallel-download
Disable parallel startup download. Only use this if
you experience issues.
--timerange TIMERANGE
Specify what timerange of data to use.
--dl-trades Download trades instead of OHLCV data.
@@ -33,7 +38,7 @@ options:
OHLCV (e.g. Kraken). If not provided, use `trades-to-
ohlcv` to convert trades data to OHLCV data.
--exchange EXCHANGE Exchange name. Only valid if no config is provided.
-t TIMEFRAMES [TIMEFRAMES ...], --timeframes TIMEFRAMES [TIMEFRAMES ...]
-t, --timeframes TIMEFRAMES [TIMEFRAMES ...]
Specify which tickers to download. Space-separated
list. Default: `1m 5m`.
--erase Clean all existing data for the selected
@@ -44,29 +49,33 @@ options:
--data-format-trades {json,jsongz,feather,parquet}
Storage format for downloaded trades data. (default:
`feather`).
--trading-mode {spot,margin,futures}, --tradingmode {spot,margin,futures}
--trading-mode, --tradingmode {spot,margin,futures}
Select Trading mode
--candle-types {spot,futures,mark,index,premiumIndex,funding_rate} [{spot,futures,mark,index,premiumIndex,funding_rate} ...]
Select candle type to download. Defaults to the
necessary candles for the selected trading mode (e.g.
'spot' or ('futures', 'funding_rate' and 'mark') for
futures).
--prepend Allow data prepending. (Data-appending is disabled)
Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+8 -10
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade edge [-h] [-v] [--no-color] [--logfile FILE] [-V] [-c PATH]
[-d PATH] [--userdir PATH] [-s NAME]
[--strategy-path PATH] [--recursive-strategy-search]
@@ -10,7 +10,7 @@ usage: freqtrade edge [-h] [-v] [--no-color] [--logfile FILE] [-V] [-c PATH]
options:
-h, --help show this help message and exit
-i TIMEFRAME, --timeframe TIMEFRAME
-i, --timeframe TIMEFRAME
Specify timeframe (`1m`, `5m`, `30m`, `1h`, `1d`).
--timerange TIMERANGE
Specify what timerange of data to use.
@@ -25,7 +25,7 @@ options:
setting.
--fee FLOAT Specify fee ratio. Will be applied twice (on trade
entry and exit).
-p PAIRS [PAIRS ...], --pairs PAIRS [PAIRS ...]
-p, --pairs PAIRS [PAIRS ...]
Limit command to these pairs. Pairs are space-
separated.
@@ -33,26 +33,24 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
Strategy arguments:
-s NAME, --strategy NAME
Specify strategy class name which will be used by the
-s, --strategy NAME Specify strategy class name which will be used by the
bot.
--strategy-path PATH Specify additional strategy lookup path.
--recursive-strategy-search
+197
View File
@@ -0,0 +1,197 @@
``` output
Possible commands:
available_pairs
Return available pair (backtest data) based on timeframe / stake_currency selection
:param timeframe: Only pairs with this timeframe available.
:param stake_currency: Only pairs that include this stake currency.
balance
Get the account balance.
blacklist
Show the current blacklist.
:param add: List of coins to add (example: "BNB/BTC")
cancel_open_order
Cancel open order for trade.
:param trade_id: Cancels open orders for this trade.
count
Return the amount of open trades.
daily
Return the profits for each day, and amount of trades.
delete_lock
Delete (disable) lock from the database.
:param lock_id: ID for the lock to delete
delete_trade
Delete trade from the database.
Tries to close open orders. Requires manual handling of this asset on the exchange.
:param trade_id: Deletes the trade with this ID from the database.
entries
Returns List of dicts containing all Trades, based on buy tag performance
Can either be average for all pairs or a specific pair provided
exits
Returns List of dicts containing all Trades, based on exit reason performance
Can either be average for all pairs or a specific pair provided
forcebuy
Buy an asset.
:param pair: Pair to buy (ETH/BTC)
:param price: Optional - price to buy
forceenter
Force entering a trade
:param pair: Pair to buy (ETH/BTC)
:param side: 'long' or 'short'
:param price: Optional - price to buy
:param order_type: Optional keyword argument - 'limit' or 'market'
:param stake_amount: Optional keyword argument - stake amount (as float)
:param leverage: Optional keyword argument - leverage (as float)
:param enter_tag: Optional keyword argument - entry tag (as string, default: 'force_enter')
forceexit
Force-exit a trade.
:param tradeid: Id of the trade (can be received via status command)
:param ordertype: Order type to use (must be market or limit)
:param amount: Amount to sell. Full sell if not given
health
Provides a quick health check of the running bot.
list_custom_data
List custom-data of the running bot for a specific trade.
:param trade_id: ID of the trade
:param key: str, optional - Key of the custom-data
list_open_trades_custom_data
List open trades custom-data of the running bot.
:param key: str, optional - Key of the custom-data
:param limit: limit of trades
:param offset: trades offset for pagination
lock_add
Lock pair
:param pair: Pair to lock
:param until: Lock until this date (format "2024-03-30 16:00:00Z")
:param side: Side to lock (long, short, *)
:param reason: Reason for the lock
locks
Return current locks
logs
Show latest logs.
:param limit: Limits log messages to the last <limit> logs. No limit to get the entire log.
mix_tags
Returns List of dicts containing all Trades, based on entry_tag + exit_reason performance
Can either be average for all pairs or a specific pair provided
monthly
Return the profits for each month, and amount of trades.
pair_candles
Return live dataframe for <pair><timeframe>.
:param pair: Pair to get data for
:param timeframe: Only pairs with this timeframe available.
:param limit: Limit result to the last n candles.
:param columns: List of dataframe columns to return. Empty list will return OHLCV.
pair_history
Return historic, analyzed dataframe
:param pair: Pair to get data for
:param timeframe: Only pairs with this timeframe available.
:param strategy: Strategy to analyze and get values for
:param freqaimodel: FreqAI model to use for analysis
:param timerange: Timerange to get data for (same format than --timerange endpoints)
pairlists_available
Lists available pairlist providers
performance
Return the performance of the different coins.
ping
simple ping
plot_config
Return plot configuration if the strategy defines one.
profit
Return the profit summary.
reload_config
Reload configuration.
show_config
Returns part of the configuration, relevant for trading operations.
start
Start the bot if it's in the stopped state.
stats
Return the stats report (durations, sell-reasons).
status
Get the status of open trades.
stop
Stop the bot. Use `start` to restart.
stopbuy
Stop buying (but handle sells gracefully). Use `reload_config` to reset.
strategies
Lists available strategies
strategy
Get strategy details
:param strategy: Strategy class name
sysinfo
Provides system information (CPU, RAM usage)
trade
Return specific trade
:param trade_id: Specify which trade to get.
trades
Return trades history, sorted by id (or by latest timestamp if order_by_id=False)
:param limit: Limits trades to the X last trades. Max 500 trades.
:param offset: Offset by this amount of trades.
:param order_by_id: Sort trades by id (default: True). If False, sorts by latest timestamp.
version
Return the version of the bot.
weekly
Return the profits for each week, and amount of trades.
whitelist
Show the current whitelist.
```
+5 -6
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade hyperopt-list [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH] [--best]
[--profitable] [--min-trades INT]
@@ -44,21 +44,20 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+9 -10
View File
@@ -1,16 +1,16 @@
```
``` output
usage: freqtrade hyperopt-show [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH] [--best]
[--profitable] [-n INT] [--print-json]
[--hyperopt-filename FILENAME] [--no-header]
[--disable-param-export]
[--breakdown {day,week,month,year} [{day,week,month,year} ...]]
[--breakdown {day,week,month,year,weekday} [{day,week,month,year,weekday} ...]]
options:
-h, --help show this help message and exit
--best Select only best epochs.
--profitable Select only profitable epochs.
-n INT, --index INT Specify the index of the epoch to print details for.
-n, --index INT Specify the index of the epoch to print details for.
--print-json Print output in JSON format.
--hyperopt-filename FILENAME
Hyperopt result filename.Example: `--hyperopt-
@@ -18,29 +18,28 @@ options:
--no-header Do not print epoch details header.
--disable-param-export
Disable automatic hyperopt parameter export.
--breakdown {day,week,month,year} [{day,week,month,year} ...]
--breakdown {day,week,month,year,weekday} [{day,week,month,year,weekday} ...]
Show backtesting breakdown per [day, week, month,
year].
year, weekday].
Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+27 -24
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade hyperopt [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH] [-s NAME]
[--strategy-path PATH] [--recursive-strategy-search]
@@ -11,16 +11,15 @@ usage: freqtrade hyperopt [-h] [-v] [--no-color] [--logfile FILE] [-V]
[--eps] [--enable-protections]
[--dry-run-wallet DRY_RUN_WALLET]
[--timeframe-detail TIMEFRAME_DETAIL] [-e INT]
[--spaces {all,buy,sell,roi,stoploss,trailing,protection,trades,default} [{all,buy,sell,roi,stoploss,trailing,protection,trades,default} ...]]
[--print-all] [--print-json] [-j JOBS]
[--random-state INT] [--min-trades INT]
[--hyperopt-loss NAME] [--disable-param-export]
[--ignore-missing-spaces] [--analyze-per-epoch]
[--early-stop INT]
[--spaces SPACES [SPACES ...]] [--print-all]
[--print-json] [-j JOBS] [--random-state INT]
[--min-trades INT] [--hyperopt-loss NAME]
[--disable-param-export] [--ignore-missing-spaces]
[--analyze-per-epoch] [--early-stop INT]
options:
-h, --help show this help message and exit
-i TIMEFRAME, --timeframe TIMEFRAME
-i, --timeframe TIMEFRAME
Specify timeframe (`1m`, `5m`, `30m`, `1h`, `1d`).
--timerange TIMERANGE
Specify what timerange of data to use.
@@ -35,31 +34,37 @@ options:
setting.
--fee FLOAT Specify fee ratio. Will be applied twice (on trade
entry and exit).
-p PAIRS [PAIRS ...], --pairs PAIRS [PAIRS ...]
-p, --pairs PAIRS [PAIRS ...]
Limit command to these pairs. Pairs are space-
separated.
--hyperopt-path PATH Specify additional lookup path for Hyperopt Loss
functions.
--eps, --enable-position-stacking
Allow buying the same pair multiple times (position
stacking).
stacking). Only applicable to backtesting and
hyperopt. Results archived by this cannot be
reproduced in dry/live trading.
--enable-protections, --enableprotections
Enable protections for backtesting.Will slow
Enable protections for backtesting. Will slow
backtesting down by a considerable amount, but will
include configured protections
--dry-run-wallet DRY_RUN_WALLET, --starting-balance DRY_RUN_WALLET
--dry-run-wallet, --starting-balance DRY_RUN_WALLET
Starting balance, used for backtesting / hyperopt and
dry-runs.
--timeframe-detail TIMEFRAME_DETAIL
Specify detail timeframe for backtesting (`1m`, `5m`,
`30m`, `1h`, `1d`).
-e INT, --epochs INT Specify number of epochs (default: 100).
--spaces {all,buy,sell,roi,stoploss,trailing,protection,trades,default} [{all,buy,sell,roi,stoploss,trailing,protection,trades,default} ...]
-e, --epochs INT Specify number of epochs (default: 100).
--spaces SPACES [SPACES ...]
Specify which parameters to hyperopt. Space-separated
list.
list. Available builtin options (custom spaces will
not be listed here): default, all, buy, sell, enter,
exit, roi, stoploss, trailing, protection, trades.
Default: `default` - which includes all spaces except
for 'trailing', 'protection', and 'trades'.
--print-all Print all results, not only the best ones.
--print-json Print output in JSON format.
-j JOBS, --job-workers JOBS
-j, --job-workers JOBS
The number of concurrently running jobs for
hyperoptimization (hyperopt worker processes). If -1
(default), all CPUs are used, for -2, all CPUs but one
@@ -69,7 +74,7 @@ options:
reproducible hyperopt results.
--min-trades INT Set minimal desired number of trades for evaluations
in the hyperopt optimization path (default: 1).
--hyperopt-loss NAME, --hyperoptloss NAME
--hyperopt-loss, --hyperoptloss NAME
Specify the class name of the hyperopt loss function
class (IHyperOptLoss). Different functions can
generate completely different results, since the
@@ -95,26 +100,24 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
Strategy arguments:
-s NAME, --strategy NAME
Specify strategy class name which will be used by the
-s, --strategy NAME Specify strategy class name which will be used by the
bot.
--strategy-path PATH Specify additional strategy lookup path.
--recursive-strategy-search
+1 -1
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade install-ui [-h] [--erase] [--prerelease]
[--ui-version UI_VERSION]
+7 -8
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade list-data [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH]
[--exchange EXCHANGE]
@@ -18,10 +18,10 @@ options:
Storage format for downloaded trades data. (default:
`feather`).
--trades Work on trades data instead of OHLCV data.
-p PAIRS [PAIRS ...], --pairs PAIRS [PAIRS ...]
-p, --pairs PAIRS [PAIRS ...]
Limit command to these pairs. Pairs are space-
separated.
--trading-mode {spot,margin,futures}, --tradingmode {spot,margin,futures}
--trading-mode, --tradingmode {spot,margin,futures}
Select Trading mode
--show-timerange Show timerange available for available data. (May take
a while to calculate).
@@ -30,21 +30,20 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+10 -6
View File
@@ -1,31 +1,35 @@
```
``` output
usage: freqtrade list-exchanges [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH] [-1] [-a]
[--trading-mode {spot,margin,futures}]
[--dex-exchanges]
options:
-h, --help show this help message and exit
-1, --one-column Print output in one column.
-a, --all Print all exchanges known to the ccxt library.
--trading-mode, --tradingmode {spot,margin,futures}
Select Trading mode
--dex-exchanges Print only DEX exchanges.
Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+5 -6
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade list-freqaimodels [-h] [-v] [--no-color] [--logfile FILE]
[-V] [-c PATH] [-d PATH] [--userdir PATH]
[--freqaimodel-path PATH] [-1]
@@ -13,21 +13,20 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+5 -6
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade list-hyperoptloss [-h] [-v] [--no-color] [--logfile FILE]
[-V] [-c PATH] [-d PATH] [--userdir PATH]
[--hyperopt-path PATH] [-1]
@@ -13,21 +13,20 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+6 -7
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade list-markets [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH]
[--exchange EXCHANGE] [--print-list]
@@ -21,28 +21,27 @@ options:
Specify quote currency(-ies). Space-separated list.
-a, --all Print all pairs or market symbols. By default only
active ones are shown.
--trading-mode {spot,margin,futures}, --tradingmode {spot,margin,futures}
--trading-mode, --tradingmode {spot,margin,futures}
Select Trading mode
Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+6 -7
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade list-pairs [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH]
[--exchange EXCHANGE] [--print-list]
@@ -21,28 +21,27 @@ options:
Specify quote currency(-ies). Space-separated list.
-a, --all Print all pairs or market symbols. By default only
active ones are shown.
--trading-mode {spot,margin,futures}, --tradingmode {spot,margin,futures}
--trading-mode, --tradingmode {spot,margin,futures}
Select Trading mode
Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+5 -6
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade list-strategies [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH]
[--strategy-path PATH] [-1]
@@ -16,21 +16,20 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+8 -6
View File
@@ -1,32 +1,34 @@
```
``` output
usage: freqtrade list-timeframes [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH]
[--exchange EXCHANGE] [-1]
[--trading-mode {spot,margin,futures}]
options:
-h, --help show this help message and exit
--exchange EXCHANGE Exchange name. Only valid if no config is provided.
-1, --one-column Print output in one column.
--trading-mode, --tradingmode {spot,margin,futures}
Select Trading mode
Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+31 -21
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade lookahead-analysis [-h] [-v] [--no-color] [--logfile FILE]
[-V] [-c PATH] [-d PATH] [--userdir PATH]
[-s NAME] [--strategy-path PATH]
@@ -11,19 +11,22 @@ usage: freqtrade lookahead-analysis [-h] [-v] [--no-color] [--logfile FILE]
[--stake-amount STAKE_AMOUNT]
[--fee FLOAT] [-p PAIRS [PAIRS ...]]
[--enable-protections]
[--enable-dynamic-pairlist]
[--dry-run-wallet DRY_RUN_WALLET]
[--timeframe-detail TIMEFRAME_DETAIL]
[--strategy-list STRATEGY_LIST [STRATEGY_LIST ...]]
[--export {none,trades,signals}]
[--export-filename PATH]
[--backtest-filename PATH]
[--backtest-directory PATH]
[--freqai-backtest-live-models]
[--minimum-trade-amount INT]
[--targeted-trade-amount INT]
[--lookahead-analysis-exportfilename LOOKAHEAD_ANALYSIS_EXPORTFILENAME]
[--allow-limit-orders]
options:
-h, --help show this help message and exit
-i TIMEFRAME, --timeframe TIMEFRAME
-i, --timeframe TIMEFRAME
Specify timeframe (`1m`, `5m`, `30m`, `1h`, `1d`).
--timerange TIMERANGE
Specify what timerange of data to use.
@@ -38,14 +41,19 @@ options:
setting.
--fee FLOAT Specify fee ratio. Will be applied twice (on trade
entry and exit).
-p PAIRS [PAIRS ...], --pairs PAIRS [PAIRS ...]
-p, --pairs PAIRS [PAIRS ...]
Limit command to these pairs. Pairs are space-
separated.
--enable-protections, --enableprotections
Enable protections for backtesting.Will slow
Enable protections for backtesting. Will slow
backtesting down by a considerable amount, but will
include configured protections
--dry-run-wallet DRY_RUN_WALLET, --starting-balance DRY_RUN_WALLET
--enable-dynamic-pairlist
Enables dynamic pairlist refreshes in backtesting. The
pairlist will be generated for each new candle if
you're using a pairlist handler that supports this
feature, for example, ShuffleFilter.
--dry-run-wallet, --starting-balance DRY_RUN_WALLET
Starting balance, used for backtesting / hyperopt and
dry-runs.
--timeframe-detail TIMEFRAME_DETAIL
@@ -54,16 +62,18 @@ options:
--strategy-list STRATEGY_LIST [STRATEGY_LIST ...]
Provide a space-separated list of strategies to
backtest. Please note that timeframe needs to be set
either in config or via command line. When using this
together with `--export trades`, the strategy-name is
injected into the filename (so `backtest-data.json`
becomes `backtest-data-SampleStrategy.json`
either in config or via command line.
--export {none,trades,signals}
Export backtest results (default: trades).
--export-filename PATH, --backtest-filename PATH
Use this filename for backtest results.Requires
`--export` to be set as well. Example: `--export-filen
ame=user_data/backtest_results/backtest_today.json`
--backtest-filename, --export-filename PATH
Use this filename for backtest results.Example:
`--backtest-
filename=backtest_results_2020-09-27_16-20-48.json`.
Assumes either `user_data/backtest_results/` or
`--export-directory` as base directory.
--backtest-directory, --export-directory PATH
Directory to use for backtest results. Example:
`--export-directory=user_data/backtest_results/`.
--freqai-backtest-live-models
Run backtest with ready models.
--minimum-trade-amount INT
@@ -73,31 +83,31 @@ options:
--lookahead-analysis-exportfilename LOOKAHEAD_ANALYSIS_EXPORTFILENAME
Use this csv-filename to store lookahead-analysis-
results
--allow-limit-orders Allow limit orders in lookahead analysis (could cause
false positives in lookahead analysis results).
Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
Strategy arguments:
-s NAME, --strategy NAME
Specify strategy class name which will be used by the
-s, --strategy NAME Specify strategy class name which will be used by the
bot.
--strategy-path PATH Specify additional strategy lookup path.
--recursive-strategy-search
+2 -3
View File
@@ -1,7 +1,6 @@
```
``` output
usage: freqtrade [-h] [-V]
{trade,create-userdir,new-config,show-config,new-strategy,download-data,convert-data,convert-trade-data,trades-to-ohlcv,list-data,backtesting,backtesting-show,backtesting-analysis,edge,hyperopt,hyperopt-list,hyperopt-show,list-exchanges,list-markets,list-pairs,list-strategies,list-hyperoptloss,list-freqaimodels,list-timeframes,show-trades,test-pairlist,convert-db,install-ui,plot-dataframe,plot-profit,webserver,strategy-updater,lookahead-analysis,recursive-analysis}
...
{trade,create-userdir,new-config,show-config,new-strategy,download-data,convert-data,convert-trade-data,trades-to-ohlcv,list-data,backtesting,backtesting-show,backtesting-analysis,edge,hyperopt,hyperopt-list,hyperopt-show,list-exchanges,list-markets,list-pairs,list-strategies,list-hyperoptloss,list-freqaimodels,list-timeframes,show-trades,test-pairlist,convert-db,install-ui,plot-dataframe,plot-profit,webserver,strategy-updater,lookahead-analysis,recursive-analysis} ...
Free, open source crypto trading bot
+6 -7
View File
@@ -1,12 +1,11 @@
```
``` output
usage: freqtrade new-config [-h] [-c PATH]
options:
-h, --help show this help message and exit
-c PATH, --config PATH
Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-h, --help show this help message and exit
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever exists).
Multiple --config options may be used. Can be set to `-`
to read config from stdin.
```
+3 -4
View File
@@ -1,14 +1,13 @@
```
``` output
usage: freqtrade new-strategy [-h] [--userdir PATH] [-s NAME]
[--strategy-path PATH]
[--template {full,minimal,advanced}]
options:
-h, --help show this help message and exit
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
-s NAME, --strategy NAME
Specify strategy class name which will be used by the
-s, --strategy NAME Specify strategy class name which will be used by the
bot.
--strategy-path PATH Specify additional strategy lookup path.
--template {full,minimal,advanced}
+15 -15
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade plot-dataframe [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH] [-s NAME]
[--strategy-path PATH]
@@ -10,13 +10,13 @@ usage: freqtrade plot-dataframe [-h] [-v] [--no-color] [--logfile FILE] [-V]
[--plot-limit INT] [--db-url PATH]
[--trade-source {DB,file}]
[--export {none,trades,signals}]
[--export-filename PATH]
[--backtest-filename PATH]
[--timerange TIMERANGE] [-i TIMEFRAME]
[--no-trades]
options:
-h, --help show this help message and exit
-p PAIRS [PAIRS ...], --pairs PAIRS [PAIRS ...]
-p, --pairs PAIRS [PAIRS ...]
Limit command to these pairs. Pairs are space-
separated.
--indicators1 INDICATORS1 [INDICATORS1 ...]
@@ -38,13 +38,15 @@ options:
(backtest file)) Default: file
--export {none,trades,signals}
Export backtest results (default: trades).
--export-filename PATH, --backtest-filename PATH
Use this filename for backtest results.Requires
`--export` to be set as well. Example: `--export-filen
ame=user_data/backtest_results/backtest_today.json`
--backtest-filename, --export-filename PATH
Use this filename for backtest results.Example:
`--backtest-
filename=backtest_results_2020-09-27_16-20-48.json`.
Assumes either `user_data/backtest_results/` or
`--export-directory` as base directory.
--timerange TIMERANGE
Specify what timerange of data to use.
-i TIMEFRAME, --timeframe TIMEFRAME
-i, --timeframe TIMEFRAME
Specify timeframe (`1m`, `5m`, `30m`, `1h`, `1d`).
--no-trades Skip using trades from backtesting file and DB.
@@ -52,26 +54,24 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
Strategy arguments:
-s NAME, --strategy NAME
Specify strategy class name which will be used by the
-s, --strategy NAME Specify strategy class name which will be used by the
bot.
--strategy-path PATH Specify additional strategy lookup path.
--recursive-strategy-search
+15 -15
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade plot-profit [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH] [-s NAME]
[--strategy-path PATH]
@@ -6,23 +6,25 @@ usage: freqtrade plot-profit [-h] [-v] [--no-color] [--logfile FILE] [-V]
[--freqaimodel NAME] [--freqaimodel-path PATH]
[-p PAIRS [PAIRS ...]] [--timerange TIMERANGE]
[--export {none,trades,signals}]
[--export-filename PATH] [--db-url PATH]
[--backtest-filename PATH] [--db-url PATH]
[--trade-source {DB,file}] [-i TIMEFRAME]
[--auto-open]
options:
-h, --help show this help message and exit
-p PAIRS [PAIRS ...], --pairs PAIRS [PAIRS ...]
-p, --pairs PAIRS [PAIRS ...]
Limit command to these pairs. Pairs are space-
separated.
--timerange TIMERANGE
Specify what timerange of data to use.
--export {none,trades,signals}
Export backtest results (default: trades).
--export-filename PATH, --backtest-filename PATH
Use this filename for backtest results.Requires
`--export` to be set as well. Example: `--export-filen
ame=user_data/backtest_results/backtest_today.json`
--backtest-filename, --export-filename PATH
Use this filename for backtest results.Example:
`--backtest-
filename=backtest_results_2020-09-27_16-20-48.json`.
Assumes either `user_data/backtest_results/` or
`--export-directory` as base directory.
--db-url PATH Override trades database URL, this is useful in custom
deployments (default: `sqlite:///tradesv3.sqlite` for
Live Run mode, `sqlite:///tradesv3.dryrun.sqlite` for
@@ -30,7 +32,7 @@ options:
--trade-source {DB,file}
Specify the source for trades (Can be DB or file
(backtest file)) Default: file
-i TIMEFRAME, --timeframe TIMEFRAME
-i, --timeframe TIMEFRAME
Specify timeframe (`1m`, `5m`, `30m`, `1h`, `1d`).
--auto-open Automatically open generated plot.
@@ -38,26 +40,24 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
Strategy arguments:
-s NAME, --strategy NAME
Specify strategy class name which will be used by the
-s, --strategy NAME Specify strategy class name which will be used by the
bot.
--strategy-path PATH Specify additional strategy lookup path.
--recursive-strategy-search
+8 -10
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade recursive-analysis [-h] [-v] [--no-color] [--logfile FILE]
[-V] [-c PATH] [-d PATH] [--userdir PATH]
[-s NAME] [--strategy-path PATH]
@@ -12,14 +12,14 @@ usage: freqtrade recursive-analysis [-h] [-v] [--no-color] [--logfile FILE]
options:
-h, --help show this help message and exit
-i TIMEFRAME, --timeframe TIMEFRAME
-i, --timeframe TIMEFRAME
Specify timeframe (`1m`, `5m`, `30m`, `1h`, `1d`).
--timerange TIMERANGE
Specify what timerange of data to use.
--data-format-ohlcv {json,jsongz,feather,parquet}
Storage format for downloaded candle (OHLCV) data.
(default: `feather`).
-p PAIRS [PAIRS ...], --pairs PAIRS [PAIRS ...]
-p, --pairs PAIRS [PAIRS ...]
Limit command to these pairs. Pairs are space-
separated.
--startup-candle STARTUP_CANDLE [STARTUP_CANDLE ...]
@@ -30,26 +30,24 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
Strategy arguments:
-s NAME, --strategy NAME
Specify strategy class name which will be used by the
-s, --strategy NAME Specify strategy class name which will be used by the
bot.
--strategy-path PATH Specify additional strategy lookup path.
--recursive-strategy-search
+3 -4
View File
@@ -1,13 +1,12 @@
```
``` output
usage: freqtrade show-config [-h] [--userdir PATH] [-c PATH]
[--show-sensitive]
options:
-h, --help show this help message and exit
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
+5 -6
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade show-trades [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH]
[--db-url PATH]
@@ -19,21 +19,20 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+6 -10
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade strategy-updater [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH]
[--strategy-list STRATEGY_LIST [STRATEGY_LIST ...]]
@@ -10,10 +10,7 @@ options:
--strategy-list STRATEGY_LIST [STRATEGY_LIST ...]
Provide a space-separated list of strategies to
backtest. Please note that timeframe needs to be set
either in config or via command line. When using this
together with `--export trades`, the strategy-name is
injected into the filename (so `backtest-data.json`
becomes `backtest-data-SampleStrategy.json`
either in config or via command line.
--strategy-path PATH Specify additional strategy lookup path.
--recursive-strategy-search
Recursively search for a strategy in the strategies
@@ -23,21 +20,20 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+3 -4
View File
@@ -1,15 +1,14 @@
```
``` output
usage: freqtrade test-pairlist [-h] [--userdir PATH] [-v] [-c PATH]
[--quote QUOTE_CURRENCY [QUOTE_CURRENCY ...]]
[-1] [--print-json] [--exchange EXCHANGE]
options:
-h, --help show this help message and exit
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
+7 -9
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade trade [-h] [-v] [--no-color] [--logfile FILE] [-V] [-c PATH]
[-d PATH] [--userdir PATH] [-s NAME]
[--strategy-path PATH] [--recursive-strategy-search]
@@ -15,7 +15,7 @@ options:
--sd-notify Notify systemd service manager.
--dry-run Enforce dry-run for trading (removes Exchange secrets
and simulates trades).
--dry-run-wallet DRY_RUN_WALLET, --starting-balance DRY_RUN_WALLET
--dry-run-wallet, --starting-balance DRY_RUN_WALLET
Starting balance, used for backtesting / hyperopt and
dry-runs.
--fee FLOAT Specify fee ratio. Will be applied twice (on trade
@@ -25,26 +25,24 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
Strategy arguments:
-s NAME, --strategy NAME
Specify strategy class name which will be used by the
-s, --strategy NAME Specify strategy class name which will be used by the
bot.
--strategy-path PATH Specify additional strategy lookup path.
--recursive-strategy-search
+8 -9
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade trades-to-ohlcv [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH]
[-p PAIRS [PAIRS ...]]
@@ -10,10 +10,10 @@ usage: freqtrade trades-to-ohlcv [-h] [-v] [--no-color] [--logfile FILE] [-V]
options:
-h, --help show this help message and exit
-p PAIRS [PAIRS ...], --pairs PAIRS [PAIRS ...]
-p, --pairs PAIRS [PAIRS ...]
Limit command to these pairs. Pairs are space-
separated.
-t TIMEFRAMES [TIMEFRAMES ...], --timeframes TIMEFRAMES [TIMEFRAMES ...]
-t, --timeframes TIMEFRAMES [TIMEFRAMES ...]
Specify which tickers to download. Space-separated
list. Default: `1m 5m`.
--exchange EXCHANGE Exchange name. Only valid if no config is provided.
@@ -23,28 +23,27 @@ options:
--data-format-trades {json,jsongz,feather,parquet}
Storage format for downloaded trades data. (default:
`feather`).
--trading-mode {spot,margin,futures}, --tradingmode {spot,margin,futures}
--trading-mode, --tradingmode {spot,margin,futures}
Select Trading mode
Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+5 -6
View File
@@ -1,4 +1,4 @@
```
``` output
usage: freqtrade webserver [-h] [-v] [--no-color] [--logfile FILE] [-V]
[-c PATH] [-d PATH] [--userdir PATH]
@@ -9,21 +9,20 @@ Common arguments:
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
--no-color Disable colorization of hyperopt results. May be
useful if you are redirecting output to a file.
--logfile FILE, --log-file FILE
--logfile, --log-file FILE
Log to the file specified. Special values are:
'syslog', 'journald'. See the documentation for more
details.
-V, --version show program's version number and exit
-c PATH, --config PATH
Specify configuration file (default:
-c, --config PATH Specify configuration file (default:
`userdir/config.json` or `config.json` whichever
exists). Multiple --config options may be used. Can be
set to `-` to read config from stdin.
-d PATH, --datadir PATH, --data-dir PATH
-d, --datadir, --data-dir PATH
Path to the base directory of the exchange with
historical backtesting data. To see futures data, use
trading-mode additionally.
--userdir PATH, --user-data-dir PATH
--userdir, --user-data-dir PATH
Path to userdata directory.
```
+16 -15
View File
@@ -191,7 +191,7 @@ Mandatory parameters are marked as **Required**, which means that they are requi
| | **Unfilled timeout**
| `unfilledtimeout.entry` | **Required.** How long (in minutes or seconds) the bot will wait for an unfilled entry order to complete, after which the order will be cancelled. [Strategy Override](#parameters-in-the-strategy).<br> **Datatype:** Integer
| `unfilledtimeout.exit` | **Required.** How long (in minutes or seconds) the bot will wait for an unfilled exit order to complete, after which the order will be cancelled and repeated at current (new) price, as long as there is a signal. [Strategy Override](#parameters-in-the-strategy).<br> **Datatype:** Integer
| `unfilledtimeout.unit` | Unit to use in unfilledtimeout setting. Note: If you set unfilledtimeout.unit to "seconds", "internals.process_throttle_secs" must be inferior or equal to timeout [Strategy Override](#parameters-in-the-strategy). <br> *Defaults to `"minutes"`.* <br> **Datatype:** String
| `unfilledtimeout.unit` | Unit to use in unfilledtimeout setting. Note: If you set `unfilledtimeout.unit` to "seconds", "internals.process_throttle_secs" must be inferior or equal to timeout [Strategy Override](#parameters-in-the-strategy). <br> *Defaults to `"minutes"`.* <br> **Datatype:** String
| `unfilledtimeout.exit_timeout_count` | How many times can exit orders time out. Once this number of timeouts is reached, an emergency exit is triggered. 0 to disable and allow unlimited order cancels. [Strategy Override](#parameters-in-the-strategy).<br>*Defaults to `0`.* <br> **Datatype:** Integer
| | **Pricing**
| `entry_pricing.price_side` | Select the side of the spread the bot should look at to get the entry rate. [More information below](#entry-price).<br> *Defaults to `"same"`.* <br> **Datatype:** String (either `ask`, `bid`, `same` or `other`).
@@ -229,7 +229,7 @@ Mandatory parameters are marked as **Required**, which means that they are requi
| `exchange.enable_ws` | Enable the usage of Websockets for the exchange. <br>[More information](#consuming-exchange-websockets).<br>*Defaults to `true`.* <br> **Datatype:** Boolean
| `exchange.markets_refresh_interval` | The interval in minutes in which markets are reloaded. <br>*Defaults to `60` minutes.* <br> **Datatype:** Positive Integer
| `exchange.skip_open_order_update` | Skips open order updates on startup should the exchange cause problems. Only relevant in live conditions.<br>*Defaults to `false`*<br> **Datatype:** Boolean
| `exchange.unknown_fee_rate` | Fallback value to use when calculating trading fees. This can be useful for exchanges which have fees in non-tradable currencies. The value provided here will be multiplied with the "fee cost".<br>*Defaults to `None`<br> **Datatype:** float
| `exchange.unknown_fee_rate` | Fallback value to use when calculating trading fees. This can be useful for exchanges which have fees in non-tradable currencies. The value provided here will be multiplied with the "fee cost".<br>*Defaults to `None`*<br> **Datatype:** float
| `exchange.log_responses` | Log relevant exchange responses. For debug mode only - use with care.<br>*Defaults to `false`*<br> **Datatype:** Boolean
| `exchange.only_from_ccxt` | Prevent data-download from data.binance.vision. Leaving this as false can greatly speed up downloads, but may be problematic if the site is not available.<br>*Defaults to `false`*<br> **Datatype:** Boolean
| `experimental.block_bad_exchanges` | Block exchanges known to not work with freqtrade. Leave on default unless you want to test if that exchange works now. <br>*Defaults to `true`.* <br> **Datatype:** Boolean
@@ -240,7 +240,7 @@ Mandatory parameters are marked as **Required**, which means that they are requi
| `telegram.token` | Your Telegram bot token. Only required if `telegram.enabled` is `true`. <br>**Keep it in secret, do not disclose publicly.** <br> **Datatype:** String
| `telegram.chat_id` | Your personal Telegram account id. Only required if `telegram.enabled` is `true`. <br>**Keep it in secret, do not disclose publicly.** <br> **Datatype:** String
| `telegram.balance_dust_level` | Dust-level (in stake currency) - currencies with a balance below this will not be shown by `/balance`. <br> **Datatype:** float
| `telegram.reload` | Allow "reload" buttons on telegram messages. <br>*Defaults to `true`.<br> **Datatype:** boolean
| `telegram.reload` | Allow "reload" buttons on telegram messages. <br>*Defaults to `true`.*<br> **Datatype:** boolean
| `telegram.notification_settings.*` | Detailed notification settings. Refer to the [telegram documentation](telegram-usage.md) for details.<br> **Datatype:** dictionary
| `telegram.allow_custom_messages` | Enable the sending of Telegram messages from strategies via the dataprovider.send_msg() function. <br> **Datatype:** Boolean
| | **Webhook**
@@ -280,8 +280,8 @@ Mandatory parameters are marked as **Required**, which means that they are requi
| `add_config_files` | Additional config files. These files will be loaded and merged with the current config file. The files are resolved relative to the initial file.<br> *Defaults to `[]`*. <br> **Datatype:** List of strings
| `dataformat_ohlcv` | Data format to use to store historical candle (OHLCV) data. <br> *Defaults to `feather`*. <br> **Datatype:** String
| `dataformat_trades` | Data format to use to store historical trades data. <br> *Defaults to `feather`*. <br> **Datatype:** String
| `reduce_df_footprint` | Recast all numeric columns to float32/int32, with the objective of reducing ram/disk usage (and decreasing train/inference timing backtesting/hyperopt and in FreqAI). <br> **Datatype:** Boolean. <br> Default: `False`.
| `log_config` | Dictionary containing the log config for python logging. [more info](advanced-setup.md#advanced-logging) <br> **Datatype:** dict. <br> Default: `FtRichHandler`
| `reduce_df_footprint` | Recast all numeric columns to float32/int32, with the objective of reducing ram/disk usage (and decreasing train/inference timing backtesting/hyperopt and in FreqAI). <br> Default: `False`. <br> **Datatype:** Boolean.
| `log_config` | Dictionary containing the log config for python logging. [more info](advanced-setup.md#advanced-logging) <br> Default: `FtRichHandler` <br> **Datatype:** dict.
### Parameters in the strategy
@@ -566,14 +566,12 @@ Configuration:
### Understand order_time_in_force
The `order_time_in_force` configuration parameter defines the policy by which the order
is executed on the exchange. Three commonly used time in force are:
The `order_time_in_force` configuration parameter defines the policy by which the order is executed on the exchange.
Commonly used time in force are:
**GTC (Good Till Canceled):**
This is most of the time the default time in force. It means the order will remain
on exchange till it is cancelled by the user. It can be fully or partially fulfilled.
If partially fulfilled, the remaining will stay on the exchange till cancelled.
This is most of the time the default time in force. It means the order will remain on exchange till it is cancelled by the user. It can be fully or partially fulfilled. If partially fulfilled, the remaining will stay on the exchange till cancelled.
**FOK (Fill Or Kill):**
@@ -581,19 +579,22 @@ It means if the order is not executed immediately AND fully then it is cancelled
**IOC (Immediate Or Canceled):**
It is the same as FOK (above) except it can be partially fulfilled. The remaining part
is automatically cancelled by the exchange.
It is the same as FOK (above) except it can be partially fulfilled. The remaining part is automatically cancelled by the exchange.
Not necessarily recommended, as this can lead to partial fills below the minimum trade size.
**PO (Post only):**
Post only order. The order is either placed as a maker order, or it is canceled.
This means the order must be placed on orderbook for at least time in an unfilled state.
Please check the [Exchange documentation](exchanges.md) for supported time in force values for your exchange.
#### time_in_force config
The `order_time_in_force` parameter contains a dict with entry and exit time in force policy values.
This can be set in the configuration file or in the strategy.
Values set in the configuration file overwrites values set in the strategy.
Values set in the configuration file overwrite values from in the strategy, following the regular [precedence rules](#configuration-option-prevalence).
The possible values are: `GTC` (default), `FOK` or `IOC`.
@@ -605,9 +606,9 @@ The possible values are: `GTC` (default), `FOK` or `IOC`.
```
!!! Warning
This is ongoing work. For now, it is supported only for binance, gate and kucoin.
Please don't change the default value unless you know what you are doing and have researched the impact of using different values for your particular exchange.
### Fiat conversion
Freqtrade uses the Coingecko API to convert the coin value to it's corresponding fiat value for the Telegram reports.
@@ -674,7 +675,7 @@ Should you experience problems you suspect are caused by websockets, you can dis
Should you be required to use a proxy, please refer to the [proxy section](#using-a-proxy-with-freqtrade) for more information.
!!! Info "Rollout"
We're implementing this out slowly, ensuring stability of your bots.
We're rolling this out slowly, ensuring stability of your bots.
Currently, usage is limited to ohlcv data streams.
It's also limited to a few exchanges, with new exchanges being added on an ongoing basis.
+3
View File
@@ -60,6 +60,7 @@ freqtrade download-data --exchange binance --pairs ".*/USDT"
* Given starting points are ignored if data is already available, downloading only missing data up to today.
* Use `--timeframes` to specify what timeframe download the historical candle (OHLCV) data for. Default is `--timeframes 1m 5m` which will download 1-minute and 5-minute data.
* To use exchange, timeframe and list of pairs as defined in your configuration file, use the `-c/--config` option. With this, the script uses the whitelist defined in the config as the list of currency pairs to download data for and does not require the pairs.json file. You can combine `-c/--config` with most other options.
* When downloading futures data (`--trading-mode futures` or a configuration specifying futures mode), freqtrade will automatically download the necessary candle types (e.g. `mark` and `funding_rate` candles) unless specified otherwise via `--candle-types`.
??? Note "Permission denied errors"
If your configuration directory `user_data` was made by docker, you may get the following error:
@@ -268,6 +269,8 @@ If `--convert` is also provided, the resample step will happen automatically and
!!! Note "Kraken user"
Kraken users should read [this](exchanges.md#historic-kraken-data) before starting to download data.
Kraken Futures uses standard OHLCV downloads and does not require `--dl-trades`.
Example call:
```bash
+47
View File
@@ -98,3 +98,50 @@ Please use configuration based [log setup](advanced-setup.md#advanced-logging) i
The edge module has been deprecated in 2023.9 and removed in 2025.6.
All functionalities of edge have been removed, and having edge configured will result in an error.
## Adjustment to dynamic funding rate handling
With version 2025.12, the handling of dynamic funding rates has been adjusted to also support dynamic funding rates down to 1h funding intervals.
As a consequence, the mark and funding rate timeframes have been changed to 1h for every supported futures exchange.
As the timeframe for both mark and funding_fee candles has changed (usually from 8h to 1h) - already downloaded data will have to be adjusted or partially re-downloaded.
You can either re-download everything (`freqtrade download-data [...] --erase` - :warning: can take a long time) - or download the updated data selectively.
### Strategy
Most strategies should not need adjustments to continue to work as expected - however, strategies using `@informative("8h", candle_type="funding_rate")` or similar will have to switch the timeframe to 1h.
The same is true for `dp.get_pair_dataframe(metadata["pair"], "8h", candle_type="funding_rate")` - which will need to be switched to 1h.
freqtrade will auto-adjust the timeframe and return `funding_rates` despite the wrongly given timeframe. It'll issue a warning - and may still break your strategy.
### Selective data re-download
The script below should serve as an example - you may need to adjust the timeframe and exchange to your needs!
``` bash
# Cleanup no longer needed data
rm user_data/data/<exchange>/futures/*-mark*
rm user_data/data/<exchange>/futures/*-funding_rate*
# download new data (only required once to fix the mark and funding fee data)
freqtrade download-data -t 1h --trading-mode futures --candle-types funding_rate mark [...] --timerange <full timerange you've got other data for>
```
The result of the above will be that your funding_rates and mark data will have the 1h timeframe.
you can verify this with `freqtrade list-data --exchange <yourexchange> --show`.
!!! Note "Additional arguments"
Additional arguments to the above commands may be necessary, like configuration files or explicit user_data if they deviate from the default.
**Hyperliquid** is a special case now - which will no longer require 1h mark data - but will use regular candles instead (this data never existed and is identical to 1h futures candles). As we don't support download-data for hyperliquid (they don't provide historic data) - there won't be actions necessary for hyperliquid users.
## Catboost models in freqAI
CatBoost models have been removed with version 2025.12 and are no longer actively supported.
If you have existing bots using CatBoost models, you can still use them in your custom models by copy/pasting them from the git history (as linked below) and installing the Catboost library manually.
We do however recommend switching to other supported model libraries like LightGBM or XGBoost for better support and future compatibility.
* [CatboostRegressor](https://github.com/freqtrade/freqtrade/blob/c6f3b0081927e161a16b116cc47fb663f7831d30/freqtrade/freqai/prediction_models/CatboostRegressor.py)
* [CatboostClassifier](https://github.com/freqtrade/freqtrade/blob/c6f3b0081927e161a16b116cc47fb663f7831d30/freqtrade/freqai/prediction_models/CatboostClassifier.py)
* [CatboostClassifierMultiTarget](https://github.com/freqtrade/freqtrade/blob/c6f3b0081927e161a16b116cc47fb663f7831d30/freqtrade/freqai/prediction_models/CatboostClassifierMultiTarget.py)
+29 -6
View File
@@ -26,10 +26,19 @@ Alternatively (e.g. if your system is not supported by the setup.sh script), fol
This will install all required tools for development, including `pytest`, `ruff`, `mypy`, and `coveralls`.
Then install the git hook scripts by running `pre-commit install`, so your changes will be verified locally before committing.
This avoids a lot of waiting for CI already, as some basic formatting checks are done locally on your machine.
Run the following command to install the git hook scripts:
Before opening a pull request, please familiarize yourself with our [Contributing Guidelines](https://github.com/freqtrade/freqtrade/blob/develop/CONTRIBUTING.md).
``` bash
pre-commit install
```
These pre-commit scripts check your changes automatically before each commit.
If any formatting issues are found, the commit will fail and will prompt for fixes.
This reduces unnecessary CI failures, reduces maintenance burden, and improves code quality.
You can run the checks manually when necessary with `pre-commit run -a`.
Before opening a pull request, please also familiarize yourself with our [Contributing Guidelines](https://github.com/freqtrade/freqtrade/blob/develop/CONTRIBUTING.md).
### Devcontainer setup
@@ -408,6 +417,21 @@ jupyter nbconvert --ClearOutputPreprocessor.enabled=True --inplace freqtrade/tem
jupyter nbconvert --ClearOutputPreprocessor.enabled=True --to markdown freqtrade/templates/strategy_analysis_example.ipynb --stdout > docs/strategy_analysis_example.md
```
## Backtest documentation results
To generate backtest outputs, please use the following commands:
``` bash
# Assume a dedicated user directory for this output
freqtrade create-userdir --userdir user_data_bttest/
# set can_short = True
sed -i "s/can_short: bool = False/can_short: bool = True/" user_data_bttest/strategies/sample_strategy.py
freqtrade download-data --timerange 20250625-20250801 --config tests/testdata/config.tests.usdt.json --userdir user_data_bttest/ -t 5m
freqtrade backtesting --config tests/testdata/config.tests.usdt.json -s SampleStrategy --userdir user_data_bttest/ --cache none --timerange 20250701-20250801
```
## Continuous integration
This documents some decisions taken for the CI Pipeline.
@@ -418,7 +442,6 @@ This documents some decisions taken for the CI Pipeline.
* Docker images contain a file, `/freqtrade/freqtrade_commit` containing the commit this image is based of.
* Full docker image rebuilds are run once a week via schedule.
* Deployments run on ubuntu.
* ta-lib binaries are contained in the build_helpers directory to avoid fails related to external unavailability.
* All tests must pass for a PR to be merged to `stable` or `develop`.
## Creating a release
@@ -440,10 +463,10 @@ git checkout -b new_release <commitid>
Determine if crucial bugfixes have been made between this commit and the current state, and eventually cherry-pick these.
* Merge the release branch (stable) into this branch.
* Edit `freqtrade/__init__.py` and add the version matching the current date (for example `2019.7` for July 2019). Minor versions can be `2019.7.1` should we need to do a second release that month. Version numbers must follow allowed versions from PEP0440 to avoid failures pushing to pypi.
* Edit `freqtrade/__init__.py` and add the version matching the current date (for example `2025.7` for July 2025). Minor versions can be `2025.7.1` should we need to do a second release that month. Version numbers must follow allowed versions from PEP0440 to avoid failures pushing to pypi.
* Commit this part.
* Push that branch to the remote and create a PR against the **stable branch**.
* Update develop version to next version following the pattern `2019.8-dev`.
* Update develop version to next version following the pattern `2025.8-dev`.
### Create changelog from git commits
+168 -14
View File
@@ -2,6 +2,10 @@
This page combines common gotchas and Information which are exchange-specific and most likely don't apply to other exchanges.
## Quick overview of supported exchange features
--8<-- "includes/exchange-features.md"
## Exchange configuration
Freqtrade is based on [CCXT library](https://github.com/ccxt/ccxt) that supports over 100 cryptocurrency
@@ -213,6 +217,32 @@ freqtrade download-data --exchange kraken --dl-trades -p BTC/EUR BCH/EUR
Please pay attention that rateLimit configuration entry holds delay in milliseconds between requests, NOT requests/sec rate.
So, in order to mitigate Kraken API "Rate limit exceeded" exception, this configuration should be increased, NOT decreased.
## Kraken Futures
Kraken Futures uses the exchange id `krakenfutures` and supports isolated futures mode.
```jsonc
"exchange": {
"name": "krakenfutures",
"key": "your_exchange_key",
"secret": "your_exchange_secret"
},
"trading_mode": "futures",
"margin_mode": "isolated",
"stake_currency": "USD"
```
!!! Tip "Stoploss on Exchange"
Kraken Futures supports `stoploss_on_exchange` with both `limit` and `market` stop orders.
Use `order_types.stoploss_price_type` to select the trigger price source (`mark`, `last`, or `index`).
!!! Note "Collateral"
Kraken Futures is USD-settled. Use USD as your stake currency.
!!! Note "Flex (Multi-collateral) Accounts"
Kraken Futures flex accounts allow collateral in multiple currencies, while trading remains USD-settled.
Freqtrade derives the `USD` balance from Kraken margin fields, so keep `stake_currency` set to `USD`.
## Kucoin
Kucoin requires a passphrase for each api key, you will therefore need to add this key into the configuration so your exchange section looks as follows:
@@ -227,7 +257,7 @@ Kucoin requires a passphrase for each api key, you will therefore need to add th
}
```
Kucoin supports [time_in_force](configuration.md#understand-order_time_in_force).
Kucoin supports [time_in_force](configuration.md#understand-order_time_in_force) with settings "GTC" (good till cancelled), "FOK" (full-or-cancel) and "IOC" (immediate-or-cancel) settings.
!!! Tip "Stoploss on Exchange"
Kucoin supports `stoploss_on_exchange` and can use both stop-loss-market and stop-loss-limit orders. It provides great advantages, so we recommend to benefit from it.
@@ -235,7 +265,7 @@ Kucoin supports [time_in_force](configuration.md#understand-order_time_in_force)
### Kucoin Blacklists
For Kucoin, it is suggested to add `"KCS/<STAKE>"` to your blacklist to avoid issues, unless you are willing to maintain enough extra `KCS` on the account or unless you're willing to disable using `KCS` for fees.
For Kucoin, it is suggested to add `"KCS/<STAKE>"` to your blacklist to avoid issues, unless you are willing to maintain enough extra `KCS` on the account or unless you're willing to disable using `KCS` for fees.
Kucoin accounts may use `KCS` for fees, and if a trade happens to be on `KCS`, further trades may consume this position and make the initial `KCS` trade unsellable as the expected amount is not there anymore.
## HTX
@@ -271,7 +301,9 @@ Using the wrong exchange will result in the error "OKX Error 50119: API key does
## Gate.io
!!! Tip "Stoploss on Exchange"
Gate.io supports `stoploss_on_exchange` and uses `stop-loss-limit` orders. It provides great advantages, so we recommend to benefit from it by enabling stoploss on exchange..
Gate.io supports `stoploss_on_exchange` and uses `stop-loss-limit` orders. It provides great advantages, so we recommend to benefit from it by enabling stoploss on exchange.
Gate.io supports [time_in_force](configuration.md#understand-order_time_in_force) with settings "GTC" (good till cancelled), and "IOC" (immediate-or-cancel) settings.
Gate.io allows the use of `POINT` to pay for fees. As this is not a tradable currency (no regular market available), automatic fee calculations will fail (and default to a fee of 0).
The configuration parameter `exchange.unknown_fee_rate` can be used to specify the exchange rate between Point and the stake currency. Obviously, changing the stake-currency will also require changes to this value.
@@ -286,9 +318,22 @@ Without these permissions, the bot will not start correctly and show errors like
## Bybit
Futures trading on bybit is currently supported for USDT markets, and will use isolated futures mode.
!!! Tip "Stoploss on Exchange"
Bybit (futures only) supports `stoploss_on_exchange` and uses `stop-loss-limit` orders. It provides great advantages, so we recommend to benefit from it by enabling stoploss on exchange.
On futures, Bybit supports both `stop-limit` as well as `stop-market` orders. You can use either `"limit"` or `"market"` in the `order_types.stoploss` configuration setting to decide which type to use.
On startup, freqtrade will set the position mode to "One-way Mode" for the whole (sub)account. This avoids making this call over and over again (slowing down bot operations), but means that changes to this setting may result in exceptions and errors.
Bybit supports [time_in_force](configuration.md#understand-order_time_in_force) with settings "GTC" (good till cancelled), "FOK" (full-or-cancel), "IOC" (immediate-or-cancel) and "PO" (Post only) settings.
!!! Warning "Unified accounts"
Freqtrade assumes accounts to be dedicated to the bot.
We therefore recommend the usage of one subaccount per bot. This is especially important when using unified accounts.
Other configurations (multiple bots on one account, manual non-bot trades on the bot account) are not supported and may lead to unexpected behavior.
### Bybit Futures
Futures trading on bybit is supported for isolated futures mode.
On startup, freqtrade will set the position mode to "One-way Mode" for the whole (sub)account. This avoids making this call over and over again (slowing down bot operations), but means that manual changes to this setting may result in exceptions and errors.
As bybit doesn't provide funding rate history, the dry-run calculation is used for live trades as well.
@@ -300,15 +345,14 @@ API Keys for live futures trading must have the following permissions:
We do strongly recommend to limit all API keys to the IP you're going to use it from.
!!! Warning "Unified accounts"
Freqtrade assumes accounts to be dedicated to the bot.
We therefore recommend the usage of one subaccount per bot. This is especially important when using unified accounts.
Other configurations (multiple bots on one account, manual non-bot trades on the bot account) are not supported and may lead to unexpected behavior.
### Bybit Demo Mode
Bybit has a [demo mode](https://learn.bybit.com/en/bybit-guide/how-to-use-bybit-demo-trading) - which can be activated by setting `exchange.demo_trading` to `true` in the configuration.
Bybit uses live markets to simulate your trades (without market impact) - making it work very similar to freqtrade's dry-run mode.
!!! Tip "Stoploss on Exchange"
Bybit (futures only) supports `stoploss_on_exchange` and uses `stop-loss-limit` orders. It provides great advantages, so we recommend to benefit from it by enabling stoploss on exchange.
On futures, Bybit supports both `stop-limit` as well as `stop-market` orders. You can use either `"limit"` or `"market"` in the `order_types.stoploss` configuration setting to decide which type to use.
You'll need to use separate API keys for demo trading, which you can create on bybit's demo page.
Demo mode is incompatible with dry-run.
## Bitmart
@@ -328,24 +372,55 @@ It's therefore required to pass the UID as well.
!!! Warning "Necessary Verification"
Bitmart requires Verification Lvl2 to successfully trade on the spot market through the API - even though trading via UI works just fine with just Lvl1 verification.
## Bitget
Bitget requires a passphrase for each api key, you will therefore need to add this key into the configuration so your exchange section looks as follows:
```json
"exchange": {
"name": "bitget",
"key": "your_exchange_key",
"secret": "your_exchange_secret",
"password": "your_exchange_api_key_password",
// ...
}
```
Bitget supports [time_in_force](configuration.md#understand-order_time_in_force) with settings "GTC" (good till cancelled), "FOK" (full-or-cancel), "IOC" (immediate-or-cancel) and "PO" (Post only) settings.
!!! Tip "Stoploss on Exchange"
Bitget supports `stoploss_on_exchange` and can use both stop-loss-market and stop-loss-limit orders. It provides great advantages, so we recommend to benefit from it.
You can use either `"limit"` or `"market"` in the `order_types.stoploss` configuration setting to decide which type of stoploss shall be used.
### Bitget Futures
Futures trading on bitget is supported for isolated futures mode.
On startup, freqtrade will set the position mode to "One-way Mode" for the whole (sub)account. This avoids making this call over and over again (slowing down bot operations), but means that manual changes to this setting may result in exceptions and errors.
## Hyperliquid
!!! Tip "Stoploss on Exchange"
Hyperliquid supports `stoploss_on_exchange` and uses `stop-loss-limit` orders. It provides great advantages, so we recommend to benefit from it.
!!! Warning "Unified accounts"
Hyperliquid unified accounts are supported - though this relies freqtrade's assumption of "owning" the account, and being the only one trading on it (in this case, extended to both spot and futures).
We hence recommend the usage of subaccounts where possible, and to avoid manual trading on the same account while the bot is running.
Freqtrade will attempt to detect the account type on startup - changing the account type mid-trading is not supported and may lead to exceptions and errors.
Hyperliquid is a Decentralized Exchange (DEX). Decentralized exchanges work a bit different compared to normal exchanges. Instead of authenticating private API calls using an API key, private API calls need to be signed with the private key of your wallet (We recommend using an api Wallet for this, generated either on Hyperliquid or in your wallet of choice).
This needs to be configured like this:
```json
"exchange": {
"name": "hyperliquid",
"walletAddress": "your_eth_wallet_address",
"walletAddress": "your_eth_wallet_address", // This should NOT be your API Wallet Address!
"privateKey": "your_api_private_key",
// ...
}
```
* walletAddress in hex format: `0x<40 hex characters>` - Can be easily copied from your wallet - and should be your wallet address, not your API Wallet Address.
* walletAddress in hex format: `0x<40 hex characters>` - Can be easily copied from your wallet - and should be your main wallet address, not your API Wallet Address.
* privateKey in hex format: `0x<64 hex characters>` - Use the key the API Wallet shows on creation.
Hyperliquid handles deposits and withdrawals on the Arbitrum One chain, a Layer 2 scaling solution built on top of Ethereum. Hyperliquid uses USDC as quote / collateral. The process of depositing USDC on Hyperliquid requires a couple of steps, see [how to start trading](https://hyperliquid.gitbook.io/hyperliquid-docs/onboarding/how-to-start-trading) for details on what steps are needed.
@@ -363,10 +438,87 @@ Hyperliquid handles deposits and withdrawals on the Arbitrum One chain, a Layer
* Create a different software wallet, only transfer the funds you want to trade with to that wallet, and use that wallet to trade on Hyperliquid.
* If you have funds you don't want to use for trading (after making a profit for example), transfer them back to your hardware wallet.
!!! Warning "Vaults and Subaccounts"
You can only use either a vault or a subaccount - not both at the same time.
### Hyperliquid Subaccount
Hyperliquid allows you to create subaccounts with sufficient previous trading volume.
To use subaccounts with Freqtrade, you will need to use the following configuration pattern:
``` json
"exchange": {
"name": "hyperliquid",
"walletAddress": "your_master_wallet_address", // Your master wallet address (not the API wallet or vault address - but not subaccount address).
"privateKey": "your_api_private_key", // API wallet private key (see https://app.hyperliquid.xyz/API). You'll only need the private key.
"ccxt_config": {
"options": {
"subAccountAddress": "your_subaccount_address" // Required if you want to use a subaccount.
}
},
// ...
}
```
Your balance and trades will now be used from your subaccount - and no longer from your main account.
### Hyperliquid Vault
Hyperliquid allows you to create vaults. To use vaults with Freqtrade, you will need to use the following configuration pattern:
``` json
"exchange": {
"name": "hyperliquid",
"walletAddress": "your_vault_address", // Your vault wallet address (Must also be added below in the ccxt_config.options.vaultAddress field)
"privateKey": "your_api_private_key", // API wallet private key (see https://app.hyperliquid.xyz/API). You'll only need the private key.
"ccxt_config": {
"options": {
"vaultAddress": "your_vault_address", // Optional, only if you want to use a vault ... (vault address must also be added to walletAdress)
}
},
// ...
}
```
Your balance and trades will now be used from your vault - and no longer from your main account.
### Historic Hyperliquid data
The Hyperliquid API does not provide historic data beyond the single call to fetch current data, so downloading data is not possible, as the downloaded data would not constitute proper historic data.
### HIP-3 DEXes
Hyperliquid supports HIP-3 decentralized exchanges (DEXes), which are independent exchanges built on top of the Hyperliquid infrastructure.
These DEXes operate similarly to the main Hyperliquid exchange but are community-created and managed.
To trade on HIP-3 DEXes with Freqtrade, you need to add them to your configuration using the `hip3_dexes` parameter:
```json
"exchange": {
"name": "hyperliquid",
"walletAddress": "your_master_wallet_address",
"privateKey": "your_api_private_key",
"hip3_dexes": ["dex_name_1", "dex_name_2"]
}
```
Replace `"dex_name_1"` and `"dex_name_2"` with the actual names of the HIP-3 DEXes you want to trade on (e.g. `vntl` and `xyz`).
!!! Warning "Performance and Rate Limit Impact"
Each HIP-3 DEX you add significantly impacts bot performance and rate limits.
* **Additional API Calls**: For each HIP-3 DEX configured, Freqtrade needs to make additional API calls.
* **Rate Limit Pressure**: Additional API calls contribute to Hyperliquid's strict rate limits. With multiple DEXes, you may hit rate limits faster, or rather, slow down bot operations due to enforced delays.
Please only add HIP-3 DEXes that you actively trade on. Monitor your logs for rate limit warnings or signs of slowed operations, and adjust your configuration accordingly.
Different HIP-3 DEXes may also use different quote currencies - so make sure to only add DEXes that are compatible with your stake currency to avoid unnecessary delays.
!!! Note
HIP-3 DEXes share the same wallet and free amount of collateral as your main Hyperliquid account. Trades on different DEXes will affect your overall account balance and margin.
The pair name for HIP-3 pairs will be slightly different than non HIP-3 pairs. Please use `list-pairs` subcommand to get the correct pair naming for all pairs for the specified dexes.
## Bitvavo
If your account is required to use an operatorId, you can set it in the configuration file as follows:
@@ -430,3 +582,5 @@ For example, to test the order type `FOK` with Kraken, and modify candle limit t
!!! Warning
Please make sure to fully understand the impacts of these settings before modifying them.
Using `_ft_has_params` overrides may lead to unexpected behavior, and may even break your bot.
We will not be able to provide support for issues caused by custom settings in `_ft_has_params`.
+24 -2
View File
@@ -2,7 +2,7 @@
## Supported Markets
Freqtrade supports spot trading, as well as (isolated) futures trading for some selected exchanges. Please refer to the [documentation start page](index.md#supported-futures-exchanges-experimental) for an up-to-date list of supported exchanges.
Freqtrade supports spot trading, as well as futures trading for some selected exchanges. Please refer to the [documentation start page](index.md#supported-futures-exchanges) for an up-to-date list of supported exchanges.
### Can my bot open short positions?
@@ -14,7 +14,7 @@ In spot markets, you can in some cases use leveraged spot tokens, which reflect
### Can my bot trade options or futures?
Futures trading is supported for selected exchanges. Please refer to the [documentation start page](index.md#supported-futures-exchanges-experimental) for an up-to-date list of supported exchanges.
Futures trading is supported for selected exchanges. Please refer to the [documentation start page](index.md#supported-futures-exchanges) for an up-to-date list of supported exchanges.
## Beginner Tips & Tricks
@@ -29,6 +29,13 @@ You can however use the [`adjust_trade_position()` callback](strategy-callbacks.
Backtesting provides an option for this in `--eps` - however this is only there to highlight "hidden" signals, and will not work in live.
### Does freqtrade support sandbox accounts?
No, but you can use dry-run mode to simulate trading without risking real funds.
Sandbox markets are separate, simulated markets - which are not suitable to test your strategy in a realistic environment.
These markets usually have different order books, liquidity and trading behaviour (usually with very few participants) - which makes them unsuitable for realistic tests of your strategy.
### The bot does not start
Running the bot with `freqtrade trade --config config.json` shows the output `freqtrade: command not found`.
@@ -159,6 +166,14 @@ This warning can point to one of the below problems:
* Barely traded pair -> Check the pair on the exchange webpage, look at the timeframe your strategy uses. If the pair does not have any volume in some candles (usually visualized with a "volume 0" bar, and a "_" as candle), this pair did not have any trades in this timeframe. These pairs should ideally be avoided, as they can cause problems with order-filling.
* API problem -> API returns wrong data (this only here for completeness, and should not happen with supported exchanges).
### I get the message "Couldn't reuse watch for xxx" in the log
This is an informational message that the bot tried to use candles from the websocket, but the exchange didn't provide the right information.
This can happen if there was an interruption to the websocket connection - or if the pair didn't have any trades happen in the timeframe you are using.
Freqtrade will handle this gracefully by falling back to the REST api.
While this makes the iteration slightly slower (due to the REST Api call) - it will not cause any problems to the bot's operation.
### I'm getting the "Exchange XXX does not support market orders." message and cannot run my strategy
As the message says, your exchange does not support market orders and you have one of the [order types](configuration.md/#understand-order_types) set to "market". Your strategy was probably written with other exchanges in mind and sets "market" orders for "stoploss" orders, which is correct and preferable for most of the exchanges supporting market orders (but not for Gate.io).
@@ -289,6 +304,13 @@ Should you be asked to expose your exchange keys or send funds to some random wa
Failing to follow these guidelines will not be responsibility of freqtrade.
## Support policy
We provide free support for Freqtrade on our [Discord server](https://discord.gg/p7nuUNVfP7) and via GitHub issues.
We only support the most recent release (e.g. 2025.8) and the current development branch (e.g. 2025.9-dev).
If you're on an older version, please follow the [upgrade instructions](updating.md) and see if your problem has already been addressed.
## "Freqtrade token"
Freqtrade does not have a Crypto token offering.
+28 -2
View File
@@ -4,7 +4,7 @@ Freqtrade provides a builtin webserver, which can serve [FreqUI](https://github.
By default, the UI is automatically installed as part of the installation (script, docker).
freqUI can also be manually installed by using the `freqtrade install-ui` command.
This same command can also be used to update freqUI to new new releases.
This same command can also be used to update freqUI to new releases.
Once the bot is started in trade / dry-run mode (with `freqtrade trade`) - the UI will be available under the configured API port (by default `http://127.0.0.1:8080`).
@@ -46,6 +46,23 @@ On this page, you can also interact with the bot by starting and stopping it and
![FreqUI - trade view](assets/freqUI-trade-pane-dark.png#only-dark)
![FreqUI - trade view](assets/freqUI-trade-pane-light.png#only-light)
### Dashboard
The dashboard view provides an overview of the bot's performance and status.
If multiple bots are connected, the dashboard will show an overview of all connected bots, allowing you to easily switch between them or show just a subset of available bots.
#### Wallet Balance
New in freqtrade 2026.4: This shows the balance of the bot over time.
Compared to the "cumulative Profit" chart, this chart will show the actual balance of the bot over time, including unrealized profit and losses, as well as deposits and withdrawals.
Historic data has re-populated based on available exchange data - however is assumed to be best-effort and may not be 100% accurate.
More specifically, it won't cover deposits and withdrawals, and will assume a starting balance of current balance - profit/losses.
For clarity - a "Capture start" marker line is shown on the chart, which indicates the point at which the migration to the new wallet balance tracking system happened.
Only beyond this point, the wallet balance is expected to be accurate.
### Plot Configurator
FreqUI Plots can be configured either via a `plot_config` configuration object in the strategy (which can be loaded via "from strategy" button) or via the UI.
@@ -70,7 +87,16 @@ Things you can change (among others):
![FreqUI - Settings view](assets/frequi-settings-dark.png#only-dark)
![FreqUI - Settings view](assets/frequi-settings-light.png#only-light)
## Backtesting
## Webserver mode
when freqtrade is started in [webserver mode](utils.md#webserver-mode) (freqtrade started with `freqtrade webserver`), the webserver will start in a special mode allowing for additional features, for example:
* Downloading data
* Testing pairlists
* [Backtesting strategies](#backtesting)
* ... to be expanded
### Backtesting
When freqtrade is started in [webserver mode](utils.md#webserver-mode) (freqtrade started with `freqtrade webserver`), the backtesting view becomes available.
This view allows you to backtest strategies and visualize the results.
+11 -7
View File
@@ -166,7 +166,7 @@ Below are the values you can expect to include/use inside a typical strategy dat
| `df['do_predict']` | Indication of an outlier data point. The return value is integer between -2 and 2, which lets you know if the prediction is trustworthy or not. `do_predict==1` means that the prediction is trustworthy. If the Dissimilarity Index (DI, see details [here](freqai-feature-engineering.md#identifying-outliers-with-the-dissimilarity-index-di)) of the input data point is above the threshold defined in the config, FreqAI will subtract 1 from `do_predict`, resulting in `do_predict==0`. If `use_SVM_to_remove_outliers` is active, the Support Vector Machine (SVM, see details [here](freqai-feature-engineering.md#identifying-outliers-using-a-support-vector-machine-svm)) may also detect outliers in training and prediction data. In this case, the SVM will also subtract 1 from `do_predict`. If the input data point was considered an outlier by the SVM but not by the DI, or vice versa, the result will be `do_predict==0`. If both the DI and the SVM considers the input data point to be an outlier, the result will be `do_predict==-1`. As with the SVM, if `use_DBSCAN_to_remove_outliers` is active, DBSCAN (see details [here](freqai-feature-engineering.md#identifying-outliers-with-dbscan)) may also detect outliers and subtract 1 from `do_predict`. Hence, if both the SVM and DBSCAN are active and identify a datapoint that was above the DI threshold as an outlier, the result will be `do_predict==-2`. A particular case is when `do_predict == 2`, which means that the model has expired due to exceeding `expired_hours`. <br> **Datatype:** Integer between -2 and 2.
| `df['DI_values']` | Dissimilarity Index (DI) values are proxies for the level of confidence FreqAI has in the prediction. A lower DI means the prediction is close to the training data, i.e., higher prediction confidence. See details about the DI [here](freqai-feature-engineering.md#identifying-outliers-with-the-dissimilarity-index-di). <br> **Datatype:** Float.
| `df['%*']` | Any dataframe column prepended with `%` in `feature_engineering_*()` is treated as a training feature. For example, you can include the RSI in the training feature set (similar to in `templates/FreqaiExampleStrategy.py`) by setting `df['%-rsi']`. See more details on how this is done [here](freqai-feature-engineering.md). <br> **Note:** Since the number of features prepended with `%` can multiply very quickly (10s of thousands of features are easily engineered using the multiplictative functionality of, e.g., `include_shifted_candles` and `include_timeframes` as described in the [parameter table](freqai-parameter-table.md)), these features are removed from the dataframe that is returned from FreqAI to the strategy. To keep a particular type of feature for plotting purposes, you would prepend it with `%%` (see details below). <br> **Datatype:** Depends on the feature created by the user.
| `df['%%*']` | Any dataframe column prepended with `%%` in `feature_engineering_*()` is treated as a training feature, just the same as the above `%` prepend. However, in this case, the features are returned back to the strategy for FreqUI/plot-dataframe plotting and monitoring in Dry/Live/Backtesting <br> **Datatype:** Depends on the feature created by the user. Please note that features created in `feature_engineering_expand()` will have automatic FreqAI naming schemas depending on the expansions that you configured (i.e. `include_timeframes`, `include_corr_pairlist`, `indicators_periods_candles`, `include_shifted_candles`). So if you want to plot `%%-rsi` from `feature_engineering_expand_all()`, the final naming scheme for your plotting config would be: `%%-rsi-period_10_ETH/USDT:USDT_1h` for the `rsi` feature with `period=10`, `timeframe=1h`, and `pair=ETH/USDT:USDT` (the `:USDT` is added if you are using futures pairs). It is useful to simply add `print(dataframe.columns)` in your `populate_indicators()` after `self.freqai.start()` to see the full list of available features that are returned to the strategy for plotting purposes.
| `df['%%*']` | Any dataframe column prepended with `%%` in `feature_engineering_*()` is treated as a training feature, just the same as the above `%` prepend. However, in this case, the features are returned back to the strategy for FreqUI/plot-dataframe plotting and monitoring in Dry/Live/Backtesting <br> **Datatype:** Depends on the feature created by the user. <br>*Please note* that features created in `feature_engineering_expand()` will have automatic FreqAI naming schemas depending on the expansions that you configured (i.e. `include_timeframes`, `include_corr_pairlist`, `indicators_periods_candles`, `include_shifted_candles`). So if you want to plot `%%-rsi` from `feature_engineering_expand_all()`, the final naming scheme for your plotting config would be: `%%-rsi-period_10_ETH/USDT:USDT_1h` for the `rsi` feature with `period=10`, `timeframe=1h`, and `pair=ETH/USDT:USDT` (the `:USDT` is added if you are using futures pairs). It is useful to simply add `print(dataframe.columns)` in your `populate_indicators()` after `self.freqai.start()` to see the full list of available features that are returned to the strategy for plotting purposes.
## Setting the `startup_candle_count`
@@ -200,15 +200,15 @@ If this value is set, FreqAI will initially use the predictions from the trainin
## Using different prediction models
FreqAI has multiple example prediction model libraries that are ready to be used as is via the flag `--freqaimodel`. These libraries include `CatBoost`, `LightGBM`, and `XGBoost` regression, classification, and multi-target models, and can be found in `freqai/prediction_models/`.
FreqAI has multiple example prediction model libraries that are ready to be used as is via the flag `--freqaimodel`. These libraries include `LightGBM`, and `XGBoost` regression, classification, and multi-target models, and can be found in `freqai/prediction_models/`.
Regression and classification models differ in what targets they predict - a regression model will predict a target of continuous values, for example what price BTC will be at tomorrow, whilst a classifier will predict a target of discrete values, for example if the price of BTC will go up tomorrow or not. This means that you have to specify your targets differently depending on which model type you are using (see details [below](#setting-model-targets)).
All of the aforementioned model libraries implement gradient boosted decision tree algorithms. They all work on the principle of ensemble learning, where predictions from multiple simple learners are combined to get a final prediction that is more stable and generalized. The simple learners in this case are decision trees. Gradient boosting refers to the method of learning, where each simple learner is built in sequence - the subsequent learner is used to improve on the error from the previous learner. If you want to learn more about the different model libraries you can find the information in their respective docs:
* CatBoost: https://catboost.ai/en/docs/
* LightGBM: https://lightgbm.readthedocs.io/en/v3.3.2/#
* XGBoost: https://xgboost.readthedocs.io/en/stable/#
* LightGBM: <https://lightgbm.readthedocs.io/en/v3.3.2/#>
* XGBoost: <https://xgboost.readthedocs.io/en/stable/#>
* CatBoost: <https://catboost.ai/en/docs/> (No longer actively supported since 2025.12)
There are also numerous online articles describing and comparing the algorithms. Some relatively lightweight examples would be [CatBoost vs. LightGBM vs. XGBoost — Which is the best algorithm?](https://towardsdatascience.com/catboost-vs-lightgbm-vs-xgboost-c80f40662924#:~:text=In%20CatBoost%2C%20symmetric%20trees%2C%20or,the%20same%20depth%20can%20differ.) and [XGBoost, LightGBM or CatBoost — which boosting algorithm should I use?](https://medium.com/riskified-technology/xgboost-lightgbm-or-catboost-which-boosting-algorithm-should-i-use-e7fda7bb36bc). Keep in mind that the performance of each model is highly dependent on the application and so any reported metrics might not be true for your particular use of the model.
@@ -219,7 +219,7 @@ Make sure to use unique names to avoid overriding built-in models.
#### Regressors
If you are using a regressor, you need to specify a target that has continuous values. FreqAI includes a variety of regressors, such as the `CatboostRegressor`via the flag `--freqaimodel CatboostRegressor`. An example of how you could set a regression target for predicting the price 100 candles into the future would be
If you are using a regressor, you need to specify a target that has continuous values. FreqAI includes a variety of regressors, such as the `LightGBMRegressor`via the flag `--freqaimodel LightGBMRegressor`. An example of how you could set a regression target for predicting the price 100 candles into the future would be
```python
df['&s-close_price'] = df['close'].shift(-100)
@@ -229,7 +229,7 @@ If you want to predict multiple targets, you need to define multiple labels usin
#### Classifiers
If you are using a classifier, you need to specify a target that has discrete values. FreqAI includes a variety of classifiers, such as the `CatboostClassifier` via the flag `--freqaimodel CatboostClassifier`. If you elects to use a classifier, the classes need to be set using strings. For example, if you want to predict if the price 100 candles into the future goes up or down you would set
If you are using a classifier, you need to specify a target that has discrete values. FreqAI includes a variety of classifiers, such as the `LightGBMClassifier` via the flag `--freqaimodel LightGBMClassifier`. If you elects to use a classifier, the classes need to be set using strings. For example, if you want to predict if the price 100 candles into the future goes up or down you would set
```python
df['&s-up_or_down'] = np.where( df["close"].shift(-100) > df["close"], 'up', 'down')
@@ -260,6 +260,10 @@ freqtrade trade --config config_examples/config_freqai.example.json --strategy F
PyTorch dropped support for macOS x64 (intel based Apple devices) in version 2.3. Subsequently, freqtrade also dropped support for PyTorch on this platform.
!!! Danger "Security notice"
Loading saved models from disk can cause security issues if using remote model files (files you downloaded from the internet or received from an untrusted source) due to having the necessity to have `weights_only=False`, which can cause security problems.
As long as you only load models that you have trained yourself, there is no risk.
### Structure
#### Model
+3 -2
View File
@@ -79,7 +79,7 @@ Mandatory parameters are marked as **Required** and have to be set in one of the
| `model_type` | Model string from stable_baselines3 or SBcontrib. Available strings include: `'TRPO', 'ARS', 'RecurrentPPO', 'MaskablePPO', 'PPO', 'A2C', 'DQN'`. User should ensure that `model_training_parameters` match those available to the corresponding stable_baselines3 model by visiting their documentation. [PPO doc](https://stable-baselines3.readthedocs.io/en/master/modules/ppo.html) (external website) <br> **Datatype:** string.
| `policy_type` | One of the available policy types from stable_baselines3 <br> **Datatype:** string.
| `max_training_drawdown_pct` | The maximum drawdown that the agent is allowed to experience during training. <br> **Datatype:** float. <br> Default: 0.8
| `cpu_count` | Number of threads/cpus to dedicate to the Reinforcement Learning training process (depending on if `ReinforcementLearning_multiproc` is selected or not). Recommended to leave this untouched, by default, this value is set to the total number of physical cores minus 1. <br> **Datatype:** int.
| `cpu_count` | Number of threads/cpus to dedicate to the Reinforcement Learning training process (depending on if `ReinforcementLearner_multiproc` is selected or not). Recommended to leave this untouched, by default, this value is set to the total number of physical cores minus 1. <br> **Datatype:** int.
| `model_reward_parameters` | Parameters used inside the customizable `calculate_reward()` function in `ReinforcementLearner.py` <br> **Datatype:** int.
| `add_state_info` | Tell FreqAI to include state information in the feature set for training and inferencing. The current state variables include trade duration, current profit, trade position. This is only available in dry/live runs, and is automatically switched to false for backtesting. <br> **Datatype:** bool. <br> Default: `False`.
| `net_arch` | Network architecture which is well described in [`stable_baselines3` doc](https://stable-baselines3.readthedocs.io/en/master/guide/custom_policy.html#examples). In summary: `[<shared layers>, dict(vf=[<non-shared value network layers>], pi=[<non-shared policy network layers>])]`. By default this is set to `[128, 128]`, which defines 2 shared hidden layers with 128 units each.
@@ -106,7 +106,7 @@ Mandatory parameters are marked as **Required** and have to be set in one of the
| `n_epochs` | The `n_epochs` parameter is a crucial setting in the PyTorch training loop that determines the number of times the entire training dataset will be used to update the model's parameters. An epoch represents one full pass through the entire training dataset. Overrides `n_steps`. Either `n_epochs` or `n_steps` must be set. <br><br> **Datatype:** int. optional. <br> Default: `10`.
| `n_steps` | An alternative way of setting `n_epochs` - the number of training iterations to run. Iteration here refer to the number of times we call `optimizer.step()`. Ignored if `n_epochs` is set. A simplified version of the function: <br><br> n_epochs = n_steps / (n_obs / batch_size) <br><br> The motivation here is that `n_steps` is easier to optimize and keep stable across different n_obs - the number of data points. <br> <br> **Datatype:** int. optional. <br> Default: `None`.
| `batch_size` | The size of the batches to use during training. <br><br> **Datatype:** int. <br> Default: `64`.
| `early_stopping_patience` | Number of epochs with no improvement in validation loss before training is stopped early. This helps prevent overfitting by halting training when the model stops improving. Set to `0` to disable early stopping. Requires a test/validation split (`test_size > 0`). <br><br> **Datatype:** int. <br> Default: `0` (disabled).
### Additional parameters
@@ -116,3 +116,4 @@ Mandatory parameters are marked as **Required** and have to be set in one of the
| `freqai.keras` | If the selected model makes use of Keras (typical for TensorFlow-based prediction models), this flag needs to be activated so that the model save/loading follows Keras standards. <br> **Datatype:** Boolean. <br> Default: `False`.
| `freqai.conv_width` | The width of a neural network input tensor. This replaces the need for shifting candles (`include_shifted_candles`) by feeding in historical data points as the second dimension of the tensor. Technically, this parameter can also be used for regressors, but it only adds computational overhead and does not change the model training/prediction. <br> **Datatype:** Integer. <br> Default: `2`.
| `freqai.reduce_df_footprint` | Recast all numeric columns to float32/int32, with the objective of reducing ram/disk usage and decreasing train/inference timing. This parameter is set in the main level of the Freqtrade configuration file (not inside FreqAI). <br> **Datatype:** Boolean. <br> Default: `False`.
| `freqai.override_exchange_check` | Override the exchange check to force FreqAI to use exchanges that may not have enough historic data. Turn this to True if you know your FreqAI model and strategy do not require historical data. <br> **Datatype:** Boolean. <br> Default: `False`.
+1 -1
View File
@@ -45,7 +45,7 @@ where `ReinforcementLearner` will use the templated `ReinforcementLearner` from
More details about feature engineering available:
https://www.freqtrade.io/en/latest/freqai-feature-engineering
https://www.freqtrade.io/en/stable/freqai-feature-engineering
:param df: strategy dataframe which will receive the targets
usage example: dataframe["&-target"] = dataframe["close"].shift(-1) / dataframe["close"]
+4
View File
@@ -87,6 +87,10 @@ To save the models generated during a particular backtest so that you can start
To ensure that the model can be reused, freqAI will call your strategy with a dataframe of length 1.
If your strategy requires more data than this to generate the same features, you can't reuse backtest predictions for live deployment and need to update your `identifier` for each new backtest.
!!! Danger "Security notice"
Loading saved models from disk can cause security issues if using remote model files (files you downloaded from the internet or received from an untrusted source) due to having the necessity to have `weights_only=False`, which can cause security problems.
As long as you only load models that you have trained yourself, there is no risk.
### Backtest live collected predictions
FreqAI allow you to reuse live historic predictions through the backtest parameter `--freqai-backtest-live-models`. This can be useful when you want to reuse predictions generated in dry/run for comparison or other study.
+3 -3
View File
@@ -7,7 +7,7 @@
FreqAI is a software designed to automate a variety of tasks associated with training a predictive machine learning model to generate market forecasts given a set of input signals. In general, FreqAI aims to be a sandbox for easily deploying robust machine learning libraries on real-time data ([details](#freqai-position-in-open-source-machine-learning-landscape)).
!!! Note
FreqAI is, and always will be, a not-for-profit, open-source project. FreqAI does *not* have a crypto token, FreqAI does *not* sell signals, and FreqAI does not have a domain besides the present [freqtrade documentation](https://www.freqtrade.io/en/latest/freqai/).
FreqAI is, and always will be, a not-for-profit, open source project. FreqAI does *not* have a crypto token, FreqAI does *not* sell signals, and FreqAI does not have a domain besides the present [freqtrade documentation](https://www.freqtrade.io/en/stable/freqai/).
Features include:
@@ -81,9 +81,9 @@ If you are using docker, a dedicated tag with FreqAI dependencies is available a
!!! note "docker-compose-freqai.yml"
We do provide an explicit docker-compose file for this in `docker/docker-compose-freqai.yml` - which can be used via `docker compose -f docker/docker-compose-freqai.yml run ...` - or can be copied to replace the original docker file. This docker-compose file also contains a (disabled) section to enable GPU resources within docker containers. This obviously assumes the system has GPU resources available.
### FreqAI position in open-source machine learning landscape
### FreqAI position in open source machine learning landscape
Forecasting chaotic time-series based systems, such as equity/cryptocurrency markets, requires a broad set of tools geared toward testing a wide range of hypotheses. Fortunately, a recent maturation of robust machine learning libraries (e.g. `scikit-learn`) has opened up a wide range of research possibilities. Scientists from a diverse range of fields can now easily prototype their studies on an abundance of established machine learning algorithms. Similarly, these user-friendly libraries enable "citizen scientists" to use their basic Python skills for data exploration. However, leveraging these machine learning libraries on historical and live chaotic data sources can be logistically difficult and expensive. Additionally, robust data collection, storage, and handling presents a disparate challenge. [`FreqAI`](#freqai) aims to provide a generalized and extensible open-sourced framework geared toward live deployments of adaptive modeling for market forecasting. The `FreqAI` framework is effectively a sandbox for the rich world of open-source machine learning libraries. Inside the `FreqAI` sandbox, users find they can combine a wide variety of third-party libraries to test creative hypotheses on a free live 24/7 chaotic data source - cryptocurrency exchange data.
Forecasting chaotic time-series based systems, such as equity/cryptocurrency markets, requires a broad set of tools geared toward testing a wide range of hypotheses. Fortunately, a recent maturation of robust machine learning libraries (e.g. `scikit-learn`) has opened up a wide range of research possibilities. Scientists from a diverse range of fields can now easily prototype their studies on an abundance of established machine learning algorithms. Similarly, these user-friendly libraries enable "citizen scientists" to use their basic Python skills for data exploration. However, leveraging these machine learning libraries on historical and live chaotic data sources can be logistically difficult and expensive. Additionally, robust data collection, storage, and handling presents a disparate challenge. [`FreqAI`](#freqai) aims to provide a generalized and extensible open-sourced framework geared toward live deployments of adaptive modeling for market forecasting. The `FreqAI` framework is effectively a sandbox for the rich world of open source machine learning libraries. Inside the `FreqAI` sandbox, users find they can combine a wide variety of third-party libraries to test creative hypotheses on a free live 24/7 chaotic data source - cryptocurrency exchange data.
### Citing FreqAI
+21 -9
View File
@@ -46,10 +46,17 @@ Depending on the space you want to optimize, only some of the below are required
* define parameters with `space='buy'` - for entry signal optimization
* define parameters with `space='sell'` - for exit signal optimization
* define parameters with `space='enter'` - for entry signal optimization
* define parameters with `space='exit'` - for exit signal optimization
* define parameters with `space='protection'` - for protection optimization
* define parameters with `space='random_spacename'` - for better control over which parameters are optimized together
Pick the space name that suits the parameter best. We recommend to use either `buy` / `sell` or `enter` / `exit` for clarity (however there's no technical limitation in this regard).
!!! Note
`populate_indicators` needs to create all indicators any of the spaces may use, otherwise hyperopt will not work.
Rarely you may also need to create a [nested class](advanced-hyperopt.md#overriding-pre-defined-spaces) named `HyperOpt` and implement
* `roi_space` - for custom ROI optimization (if you need the ranges for the ROI parameters in the optimization hyperspace that differ from default)
@@ -79,15 +86,15 @@ Based on the loss function result, hyperopt will determine the next set of param
### Configure your Guards and Triggers
There are two places you need to change in your strategy file to add a new buy hyperopt for testing:
There are two places you need to change in your strategy file to add a new hyperopt parameter for optimization:
* Define the parameters at the class level hyperopt shall be optimizing.
* Within `populate_entry_trend()` - use defined parameter values instead of raw constants.
There you have two different types of indicators: 1. `guards` and 2. `triggers`.
1. Guards are conditions like "never buy if ADX < 10", or never buy if current price is over EMA10.
2. Triggers are ones that actually trigger buy in specific moment, like "buy when EMA5 crosses over EMA10" or "buy when close price touches lower Bollinger band".
1. Guards are conditions like "never enter if ADX < 10", or never enter if current price is over EMA10.
2. Triggers are ones that actually trigger entry in specific moment, like "enter when EMA5 crosses over EMA10" or "enter when close price touches lower Bollinger band".
!!! Hint "Guards and Triggers"
Technically, there is no difference between Guards and Triggers.
@@ -160,9 +167,11 @@ We use these to either enable or disable the ADX and RSI guards.
The last one we call `trigger` and use it to decide which buy trigger we want to use.
!!! Note "Parameter space assignment"
Parameters must either be assigned to a variable named `buy_*` or `sell_*` - or contain `space='buy'` | `space='sell'` to be assigned to a space correctly.
If no parameter is available for a space, you'll receive the error that no space was found when running hyperopt.
- Parameters must either be assigned to a variable named `buy_*`, `sell_*`, `enter_*` or `exit_*` or `protection_*` - or contain have a space assigned explicitly via parameter (`space='buy'`, `space='sell'`, `space='protection'`).
- Parameters with conflicting assignments (e.g. `buy_adx = IntParameter(4, 24, default=14, space='sell')`) will use the explicit space assignment.
- If no parameter is available for a space, you'll receive the error that no space was found when running hyperopt.
Parameters with unclear space (e.g. `adx_period = IntParameter(4, 24, default=14)` - no explicit nor implicit space) will not be detected and will therefore be ignored.
Spaces can also be custom named (e.g. `space='my_custom_space'`), with the only limitation that the space name cannot be `all`, `default` - and must result in a valid python identifier.
So let's write the buy strategy using these values:
@@ -520,21 +529,24 @@ freqtrade hyperopt --strategy <strategyname> --timerange 20210101-20210201
### Running Hyperopt with Smaller Search Space
Use the `--spaces` option to limit the search space used by hyperopt.
Letting Hyperopt optimize everything is a huuuuge search space.
Often it might make more sense to start by just searching for initial buy algorithm.
Or maybe you just want to optimize your stoploss or roi table for that awesome new buy strategy you have.
Letting Hyperopt optimize everything is often a huuuuge search space.
Often it might make more sense to start by just searching for initial entry algorithm.
Or maybe you just want to optimize your stoploss or roi table for that awesome new strategy you have.
Legal values are:
* `all`: optimize everything
* `all`: optimize everything (including custom spaces)
* `buy`: just search for a new buy strategy
* `sell`: just search for a new sell strategy
* `enter`: just search for a new entry logic
* `exit`: just search for a new entry logic
* `roi`: just optimize the minimal profit table for your strategy
* `stoploss`: search for the best stoploss value
* `trailing`: search for the best trailing stop values
* `trades`: search for the best max open trades values
* `protection`: search for the best protection parameters (read the [protections section](#optimizing-protections) on how to properly define these)
* `default`: `all` except `trailing`, `trades` and `protection`
* `custom_space_name`: any custom space used by any parameter in your strategy
* space-separated list of any of the above values for example `--spaces roi stoploss`
The default Hyperopt Search Space, used when no `--space` command line option is specified, does not include the `trailing` hyperspace. We recommend you to run optimization for the `trailing` hyperspace separately, when the best parameters for other hyperspaces were found, validated and pasted into your custom strategy.
+2 -2
View File
@@ -15,7 +15,7 @@ Assuming your application is deployed as `https://frequi.freqtrade.io/home/` - t
```jsonc
{
//...
"jwt_secret_key": "somethingrandom",
"jwt_secret_key": "somethingRandomSomethingRandom123",
"CORS_origins": ["https://frequi.freqtrade.io"],
//...
}
@@ -29,7 +29,7 @@ The correct configuration for this case is `http://localhost:8080` - the main pa
```jsonc
{
//...
"jwt_secret_key": "somethingrandom",
"jwt_secret_key": "somethingRandomSomethingRandom123",
"CORS_origins": ["http://localhost:8080"],
//...
}
+22
View File
@@ -0,0 +1,22 @@
| Exchange | Mode | Margin mode | Stoploss type |
|---------|---------|------|------------------|
| [Binance](exchanges.md#binance) | spot | | limit |
| [Binance](exchanges.md#binance) | futures | isolated, cross | market, limit |
| [Bingx](exchanges.md#bingx) | spot | | market, limit |
| [Bitmart](exchanges.md#bitmart) | spot | | ❌ (not supported) |
| [Bitget](exchanges.md#bitget) | spot | | market, limit |
| [Bitget](exchanges.md#bitget) | futures | isolated | market, limit |
| [Bybit](exchanges.md#bybit) | spot | | ❌ (not supported) |
| [Bybit](exchanges.md#bybit) | futures | isolated | market, limit |
| [Gate.io](exchanges.md#gateio) | spot | | limit |
| [Gate.io](exchanges.md#gateio) | futures | isolated | limit |
| [HTX](exchanges.md#htx) | spot | | limit |
| [Hyperliquid](exchanges.md#hyperliquid) | spot | | ❌ (not supported) |
| [Hyperliquid](exchanges.md#hyperliquid) | futures | isolated, cross | limit |
| [Kraken](exchanges.md#kraken) | spot | | market, limit |
| [Kraken](exchanges.md#kraken-futures) | futures | isolated | market, limit |
| [OKX](exchanges.md#okx) | spot | | limit |
| [OKX](exchanges.md#okx) | futures | isolated | limit |
| [Bitvavo](exchanges.md#bitvavo) | spot | | ❌ (not supported) |
| [Kucoin](exchanges.md#kucoin) | spot | | market, limit |
+41 -11
View File
@@ -2,11 +2,11 @@
Pairlist Handlers define the list of pairs (pairlist) that the bot should trade. They are configured in the `pairlists` section of the configuration settings.
In your configuration, you can use Static Pairlist (defined by the [`StaticPairList`](#static-pair-list) Pairlist Handler) and Dynamic Pairlist (defined by the [`VolumePairList`](#volume-pair-list) and [`PercentChangePairList`](#percent-change-pair-list) Pairlist Handlers).
In your configuration, you can use Static Pairlist (defined by the [`StaticPairList`](#static-pair-list) Pairlist Handler) and Dynamic Pairlist (defined by the [`VolumePairList`](#volume-pair-list), [`CrossMarketPairList`](#crossmarketpairlist), [`MarketCapPairlist`](#marketcappairlist) and [`PercentChangePairList`](#percent-change-pair-list) Pairlist Handlers).
Additionally, [`AgeFilter`](#agefilter), [`PrecisionFilter`](#precisionfilter), [`PriceFilter`](#pricefilter), [`ShuffleFilter`](#shufflefilter), [`SpreadFilter`](#spreadfilter) and [`VolatilityFilter`](#volatilityfilter) act as Pairlist Filters, removing certain pairs and/or moving their positions in the pairlist.
Additionally, [`AgeFilter`](#agefilter), [`DelistFilter`](#delistfilter), [`PrecisionFilter`](#precisionfilter), [`PriceFilter`](#pricefilter), [`ShuffleFilter`](#shufflefilter), [`SpreadFilter`](#spreadfilter) and [`VolatilityFilter`](#volatilityfilter) act as Pairlist Filters, removing certain pairs and/or moving their positions in the pairlist.
If multiple Pairlist Handlers are used, they are chained and a combination of all Pairlist Handlers forms the resulting pairlist the bot uses for trading and backtesting. Pairlist Handlers are executed in the sequence they are configured. You can define either `StaticPairList`, `VolumePairList`, `ProducerPairList`, `RemotePairList`, `MarketCapPairList` or `PercentChangePairList` as the starting Pairlist Handler.
If multiple Pairlist Handlers are used, they are chained and a combination of all Pairlist Handlers forms the resulting pairlist the bot uses for trading and backtesting. Pairlist Handlers are executed in the sequence they are configured. You can define either `StaticPairList`, `VolumePairList`, `ProducerPairList`, `RemotePairList`, `MarketCapPairList`, `PercentChangePairList` or `CrossMarketPairList` as the starting Pairlist Handler.
Inactive markets are always removed from the resulting pairlist. Explicitly blacklisted pairs (those in the `pair_blacklist` configuration setting) are also always removed from the resulting pairlist.
@@ -26,7 +26,9 @@ You may also use something like `.*DOWN/BTC` or `.*UP/BTC` to exclude leveraged
* [`ProducerPairList`](#producerpairlist)
* [`RemotePairList`](#remotepairlist)
* [`MarketCapPairList`](#marketcappairlist)
* [`CrossMarketPairList`](#crossmarketpairlist)
* [`AgeFilter`](#agefilter)
* [`DelistFilter`](#delistfilter)
* [`FullTradesFilter`](#fulltradesfilter)
* [`OffsetFilter`](#offsetfilter)
* [`PerformanceFilter`](#performancefilter)
@@ -38,7 +40,7 @@ You may also use something like `.*DOWN/BTC` or `.*UP/BTC` to exclude leveraged
* [`VolatilityFilter`](#volatilityfilter)
!!! Tip "Testing pairlists"
Pairlist configurations can be quite tricky to get right. Best use the [`test-pairlist`](utils.md#test-pairlist) utility sub-command to test your configuration quickly.
Pairlist configurations can be quite tricky to get right. Best use freqUI in [webserver mode](freq-ui.md#webserver-mode) or the [`test-pairlist`](utils.md#test-pairlist) utility sub-command to test your Pairlist configuration quickly.
#### Static Pair List
@@ -180,7 +182,7 @@ More sophisticated approach can be used, by using `lookback_timeframe` for candl
* `refresh_period`: Defines the interval (in seconds) at which the pairlist will be refreshed. The default is 1800 seconds (30 minutes).
* `lookback_days`: Number of days to look back. When `lookback_days` is selected, the `lookback_timeframe` is defaulted to 1 day.
* `lookback_timeframe`: Timeframe to use for the lookback period.
* `lookback_period`: Number of periods to look back at.
* `lookback_period`: Number of periods to look back at.
When PercentChangePairList is used after other Pairlist Handlers, it will operate on the outputs of those handlers. If it is the leading Pairlist Handler, it will select pairs from all available markets with the specified stake currency.
@@ -270,7 +272,6 @@ You can limit the length of the pairlist with the optional parameter `number_ass
],
```
!!! Tip "Combining pairlists"
This pairlist can be combined with all other pairlists and filters for further pairlist reduction, and can also act as an "additional" pairlist, on top of already defined pairs.
`ProducerPairList` can also be used multiple times in sequence, combining the pairs from multiple producers.
@@ -303,6 +304,8 @@ The optional `mode` option specifies if the pairlist should be used as a `blackl
The optional `processing_mode` option in the RemotePairList configuration determines how the retrieved pairlist is processed. It can have two values: "filter" or "append". The default value is "filter".
The optional `number_assets` option in the RemotePairList configuration determines how many pairs will be returned if used in whitelist `mode`. By default, all pairs will be returned. In blacklist `mode`, this option will be ignored.
In "filter" mode, the retrieved pairlist is used as a filter. Only the pairs present in both the original pairlist and the retrieved pairlist are included in the final pairlist. Other pairs are filtered out.
In "append" mode, the retrieved pairlist is added to the original pairlist. All pairs from both lists are included in the final pairlist without any filtering.
@@ -312,7 +315,7 @@ The `pairlist_url` option specifies the URL of the remote server where the pairl
The `save_to_file` option, when provided with a valid filename, saves the processed pairlist to that file in JSON format. This option is optional, and by default, the pairlist is not saved to a file.
??? Example "Multi bot with shared pairlist example"
`save_to_file` can be used to save the pairlist to a file with Bot1:
```json
@@ -367,7 +370,7 @@ The optional `bearer_token` will be included in the requests Authorization Heade
#### MarketCapPairList
`MarketCapPairList` employs sorting/filtering of pairs by their marketcap rank based of CoinGecko. The returned pairlist will be sorted based of their marketcap ranks.
`MarketCapPairList` employs sorting/filtering of pairs by their marketcap rank based of CoinGecko. The returned pairlist will be sorted based of their marketcap ranks if used in whitelist `mode`.
```json
"pairlists": [
@@ -376,25 +379,38 @@ The optional `bearer_token` will be included in the requests Authorization Heade
"number_assets": 20,
"max_rank": 50,
"refresh_period": 86400,
"mode": "whitelist",
"categories": ["layer-1"]
}
]
```
`number_assets` defines the maximum number of pairs returned by the pairlist. `max_rank` will determine the maximum rank used in creating/filtering the pairlist. It's expected that some coins within the top `max_rank` marketcap will not be included in the resulting pairlist since not all pairs will have active trading pairs in your preferred market/stake/exchange combination.
`number_assets` defines the maximum number of pairs returned by the pairlist if used in whitelist `mode`. In blacklist `mode`, this setting will be ignored.
`max_rank` will determine the maximum rank used in creating/filtering the pairlist. It's expected that some coins within the top `max_rank` marketcap will not be included in the resulting pairlist since not all pairs will have active trading pairs in your preferred market/stake/exchange combination.
While using a `max_rank` bigger than 250 is supported, it's not recommended, as it'll cause multiple API calls to CoinGecko, which can lead to rate limit issues.
The `refresh_period` setting defines the interval (in seconds) at which the marketcap rank data will be refreshed. The default is 86,400 seconds (1 day). The pairlist cache (`refresh_period`) applies to both generating pairlists (when in the first position in the list) and filtering instances (when not in the first position in the list).
The `mode` setting defines whether the plugin will filters in (whitelist `mode`) or filters out (blacklist `mode`) top marketcap ranked coins. By default, the plugin will be in whitelist mode.
The `categories` setting specifies the [coingecko categories](https://www.coingecko.com/en/categories) from which to select coins from. The default is an empty list `[]`, meaning no category filtering is applied.
If an incorrect category string is chosen, the plugin will print the available categories from CoinGecko and fail. The category should be the ID of the category, for example, for `https://www.coingecko.com/en/categories/layer-1`, the category ID would be `layer-1`. You can pass multiple categories such as `["layer-1", "meme-token"]` to select from several categories.
Coins like 1000PEPE/USDT or KPEPE/USDT:USDT are detected on a best effort basis, with the prefixes `1000` and `K` being used to identify them.
!!! Warning "Many categories"
Each added category corresponds to one API call to CoinGecko. The more categories you add, the longer the pairlist generation will take, potentially causing rate limit issues.
!!! Danger "Duplicate symbols in coingecko"
Coingecko often has duplicate symbols, where the same symbol is used for different coins. Freqtrade will use the symbol as is and try to search for it on the exchange. If the symbol exists - it will be used. Freqtrade will however not check if the _intended_ symbol is the one coingecko meant. This can sometimes lead to unexpected results, especially on low volume coins or with meme coin categories.
#### CrossMarketPairList
Generate or filter pairs based of their availability on the opposite market.
The `pairs_exist_on` setting defines whether the pairs should exists on both spot and futures market (`both_markets`) or only exist on the specified trading mode (`current_market_only`). By default, the plugin will be in `both_markets` setting, which means whitelisted pairs have to exists on both spot and futures markets.
#### AgeFilter
Removes pairs that have been listed on the exchange for less than `min_days_listed` days (defaults to `10`) or more than `max_days_listed` days (defaults `None` mean infinity).
@@ -405,6 +421,16 @@ be caught out buying before the pair has finished dropping in price.
This filter allows freqtrade to ignore pairs until they have been listed for at least `min_days_listed` days and listed before `max_days_listed`.
#### DelistFilter
Removes pairs that will be delisted on the exchange maximum `max_days_from_now` days from now (defaults to `0` which remove all future delisted pairs no matter how far from now). Currently this filter only supports following exchanges:
!!! Note "Available exchanges"
Delist filter is available on Bybit Futures, Bitget Futures and Binance, where Binance Futures will work for both dry and live modes, while Binance Spot is limited to live mode (for technical reasons).
!!! Warning "Backtesting"
`DelistFilter` does not support backtesting mode.
#### FullTradesFilter
Shrink whitelist to consist only in-trade pairs when the trade slots are full (when `max_open_trades` isn't being set to `-1` in the config).
@@ -436,7 +462,7 @@ Example to remove the first 10 pairs from the pairlist, and takes the next 20 (t
```
!!! Warning
When `OffsetFilter` is used to split a larger pairlist among multiple bots in combination with `VolumeFilter`
When `OffsetFilter` is used to split a larger pairlist among multiple bots in combination with `VolumeFilter`
it can not be guaranteed that pairs won't overlap due to slightly different refresh intervals for the
`VolumeFilter`.
@@ -599,7 +625,7 @@ Adding `"sort_direction": "asc"` or `"sort_direction": "desc"` enables sorting m
### Full example of Pairlist Handlers
The below example blacklists `BNB/BTC`, uses `VolumePairList` with `20` assets, sorting pairs by `quoteVolume` and applies [`PrecisionFilter`](#precisionfilter) and [`PriceFilter`](#pricefilter), filtering all assets where 1 price unit is > 1%. Then the [`SpreadFilter`](#spreadfilter) and [`VolatilityFilter`](#volatilityfilter) is applied and pairs are finally shuffled with the random seed set to some predefined value.
The below example blacklists `BNB/BTC`, uses `VolumePairList` with `20` assets, sorting pairs by `quoteVolume`, then filter future delisted pairs using [`DelistFilter`](#delistfilter) and [`AgeFilter`](#agefilter) to remove pairs that are listed less than 10 days ago. After that [`PrecisionFilter`](#precisionfilter) and [`PriceFilter`](#pricefilter) are applied, filtering all assets where 1 price unit is > 1%. Then the [`SpreadFilter`](#spreadfilter) and [`VolatilityFilter`](#volatilityfilter) are applied and pairs are finally shuffled with the random seed set to some predefined value.
```json
"exchange": {
@@ -612,6 +638,10 @@ The below example blacklists `BNB/BTC`, uses `VolumePairList` with `20` assets,
"number_assets": 20,
"sort_key": "quoteVolume"
},
{
"method": "DelistFilter",
"max_days_from_now": 0,
},
{"method": "AgeFilter", "min_days_listed": 10},
{"method": "PrecisionFilter"},
{"method": "PriceFilter", "low_price_ratio": 0.01},
+22 -10
View File
@@ -20,15 +20,15 @@ All protection end times are rounded up to the next candle to avoid sudden, unex
### Common settings to all Protections
| Parameter| Description |
|------------|-------------|
| `method` | Protection name to use. <br> **Datatype:** String, selected from [available Protections](#available-protections)
| `stop_duration_candles` | For how many candles should the lock be set? <br> **Datatype:** Positive integer (in candles)
| `stop_duration` | how many minutes should protections be locked. <br>Cannot be used together with `stop_duration_candles`. <br> **Datatype:** Float (in minutes)
| `lookback_period_candles` | Only trades that completed within the last `lookback_period_candles` candles will be considered. This setting may be ignored by some Protections. <br> **Datatype:** Positive integer (in candles).
| `lookback_period` | Only trades that completed after `current_time - lookback_period` will be considered. <br>Cannot be used together with `lookback_period_candles`. <br>This setting may be ignored by some Protections. <br> **Datatype:** Float (in minutes)
| `trade_limit` | Number of trades required at minimum (not used by all Protections). <br> **Datatype:** Positive integer
| `unlock_at` | Time when trading will be unlocked regularly (not used by all Protections). <br> **Datatype:** string <br>**Input Format:** "HH:MM" (24-hours)
| Parameter | Description |
| --------- | ---------- |
| `method` | Protection name to use. <br> **Datatype:** String, selected from [available Protections](#available-protections) |
| `stop_duration_candles` | For how many candles should the lock be set? <br> **Datatype:** Positive integer (in candles) |
| `stop_duration` | how many minutes should protections be locked. <br>Cannot be used together with `stop_duration_candles`. <br> **Datatype:** Float (in minutes) |
| `lookback_period_candles` | Only trades that completed within the last `lookback_period_candles` candles will be considered. This setting may be ignored by some Protections. <br> **Datatype:** Positive integer (in candles). |
| `lookback_period` | Only trades that completed after `current_time - lookback_period` will be considered. <br>Cannot be used together with `lookback_period_candles`. <br>This setting may be ignored by some Protections. <br> **Datatype:** Float (in minutes) |
| `trade_limit` | Number of trades required at minimum (not used by all Protections). <br> **Datatype:** Positive integer |
| `unlock_at` | Time when trading will be unlocked regularly (not used by all Protections). <br> **Datatype:** string <br>**Input Format:** "HH:MM" (24-hours) |
!!! Note "Durations"
Durations (`stop_duration*` and `lookback_period*` can be defined in either minutes or candles).
@@ -69,7 +69,17 @@ def protections(self):
#### MaxDrawdown
`MaxDrawdown` uses all trades within `lookback_period` in minutes (or in candles when using `lookback_period_candles`) to determine the maximum drawdown. If the drawdown is below `max_allowed_drawdown`, trading will stop for `stop_duration` in minutes (or in candles when using `stop_duration_candles`) after the last trade - assuming that the bot needs some time to let markets recover.
The `MaxDrawdown` protection evaluates trades that closed within the current `lookback_period` (or `lookback_period_candles`).
It supports 2 calculation modes:
- `calculation_mode: "ratios"` (default): Legacy approximation based on cumulative profit ratios.
- `calculation_mode: "equity"`: Standard peak-to-trough drawdown on the account equity curve, using starting balance and cumulative absolute profit.
With `calculation_mode: "ratios"`, drawdown is derived from cumulative trade profit ratios, not from the account equity curve. This is kept for backward compatibility and can differ from account-level drawdown when position sizing changes over time.
For new setups, `calculation_mode: "equity"` is recommended. Prefer `calculation_mode: "ratios"` only when you intentionally rely on legacy behavior, especially with fixed stake amount configurations where ratio-based behavior is easier to reason about.
If the observed drawdown exceeds `max_allowed_drawdown`, trading will stop for `stop_duration` after the last trade - assuming that the bot needs some time to let markets recover.
The below sample stops trading for 12 candles if max-drawdown is > 20% considering all pairs - with a minimum of `trade_limit` trades - within the last 48 candles. If desired, `lookback_period` and/or `stop_duration` can be used.
@@ -79,6 +89,7 @@ def protections(self):
return [
{
"method": "MaxDrawdown",
"calculation_mode": "equity",
"lookback_period_candles": 48,
"trade_limit": 20,
"stop_duration_candles": 12,
@@ -160,6 +171,7 @@ class AwesomeStrategy(IStrategy)
},
{
"method": "MaxDrawdown",
"calculation_mode": "equity",
"lookback_period_candles": 48,
"trade_limit": 20,
"stop_duration_candles": 4,
+7 -7
View File
@@ -1,28 +1,28 @@
## Highlighted changes
# Highlighted changes
- ...
### How to update
## How to update
As always, you can update your bot using one of the following commands:
#### docker-compose
### docker-compose
```bash
docker-compose pull
docker-compose up -d
```
#### Installation via setup script
### Installation via setup script
```
``` bash
# Deactivate venv and run
./setup.sh --update
```
#### Plain native installation
### Plain native installation
```
``` bash
git pull
pip install -U -r requirements.txt
```
+2 -2
View File
@@ -1,11 +1,11 @@
This section will highlight a few projects from members of the community.
!!! Note
The projects below are for the most part not maintained by the freqtrade , therefore use your own caution before using them.
The projects below are for the most part not maintained by the freqtrade team, therefore use your own caution before using them.
- [Example freqtrade strategies](https://github.com/freqtrade/freqtrade-strategies/)
- [FrequentHippo - Statistics of dry/live runs and backtests](http://frequenthippo.ddns.net) (by hippocritical).
- [Online pairlist generator](https://remotepairlist.com/) (by Blood4rc).
- [Freqtrade Backtesting Project](https://strat.ninja/) (by Blood4rc).
- [Freqtrade analysis notebook](https://github.com/froggleston/freqtrade_analysis_notebook) (by Froggleston).
- [TUI for freqtrade](https://github.com/froggleston/freqtrade-frogtrade9000) (by Froggleston).
- [FTUI - Terminal UI for freqtrade](https://github.com/freqtrade/ftui) (by Froggleston).
- [Bot Academy](https://botacademy.ddns.net/) (by stash86) - Blog about crypto bot projects.
+11 -5
View File
@@ -1,9 +1,10 @@
![freqtrade](assets/freqtrade_poweredby.svg)
[![Freqtrade CI](https://github.com/freqtrade/freqtrade/actions/workflows/ci.yml/badge.svg?branch=develop)](https://github.com/freqtrade/freqtrade/actions/)
[![Freqtrade CI](https://github.com/freqtrade/freqtrade/actions/workflows/ci.yml/badge.svg?branch=develop)](https://github.com/freqtrade/freqtrade/actions/workflows/ci.yml)
[![DOI](https://joss.theoj.org/papers/10.21105/joss.04864/status.svg)](https://doi.org/10.21105/joss.04864)
[![Coverage Status](https://coveralls.io/repos/github/freqtrade/freqtrade/badge.svg?branch=develop&service=github)](https://coveralls.io/github/freqtrade/freqtrade?branch=develop)
[![Maintainability](https://api.codeclimate.com/v1/badges/5737e6d668200b7518ff/maintainability)](https://codeclimate.com/github/freqtrade/freqtrade/maintainability)
[![codecov](https://codecov.io/gh/freqtrade/freqtrade/branch/develop/graph/badge.svg?token=AD5BG3ATKI)](https://codecov.io/gh/freqtrade/freqtrade)
[![Documentation](https://readthedocs.org/projects/freqtrade/badge/)](https://www.freqtrade.io)
[![Discord Server](https://img.shields.io/badge/Freqtrade_Discord-4E4E4E?logo=discord)](https://discord.gg/p7nuUNVfP7)
<!-- GitHub action buttons -->
[:octicons-star-16: Star](https://github.com/freqtrade/freqtrade){ .md-button .md-button--sm }
@@ -38,8 +39,11 @@ Freqtrade is a free and open source crypto trading bot written in Python. It is
Please read the [exchange specific notes](exchanges.md) to learn about eventual, special configurations needed for each exchange.
### Supported Spot Exchanges
- [X] [Binance](https://www.binance.com/)
- [X] [BingX](https://bingx.com/invite/0EM9RX)
- [X] [Bitget](https://www.bitget.com/)
- [X] [Bitmart](https://bitmart.com/)
- [X] [Bybit](https://bybit.com/)
- [X] [Gate.io](https://www.gate.io/ref/6266643)
@@ -50,13 +54,15 @@ Please read the [exchange specific notes](exchanges.md) to learn about eventual,
- [X] [MyOKX](https://okx.com/) (OKX EEA)
- [ ] [potentially many others through <img alt="ccxt" width="30px" src="assets/ccxt-logo.svg" />](https://github.com/ccxt/ccxt/). _(We cannot guarantee they will work)_
### Supported Futures Exchanges (experimental)
### Supported Futures Exchanges
- [X] [Binance](https://www.binance.com/)
- [X] [Bitget](https://www.bitget.com/)
- [X] [Bybit](https://bybit.com/)
- [X] [Gate.io](https://www.gate.io/ref/6266643)
- [X] [Hyperliquid](https://hyperliquid.xyz/) (A decentralized exchange, or DEX)
- [X] [OKX](https://okx.com/)
- [X] [Kraken](https://www.kraken.com/features/futures)
Please make sure to read the [exchange specific notes](exchanges.md), as well as the [trading with leverage](leverage.md) documentation before diving in.
@@ -87,7 +93,7 @@ To run this bot we recommend you a linux cloud instance with a minimum of:
Alternatively
- Python 3.10+
- Python 3.11+
- pip (pip3)
- git
- TA-Lib
+61 -62
View File
@@ -9,22 +9,32 @@ The freqtrade documentation describes various ways to install freqtrade
* [Manual Installation](#manual-installation)
* [Installation with Conda](#installation-with-conda)
Please consider using the prebuilt [docker images](docker_quickstart.md) to get started quickly while evaluating how freqtrade works.
Please consider using the prebuilt [docker images](docker_quickstart.md) to get started quickly.
!!! Note "Updating"
Keeping freqtrade updated is important to [ensure ongoing compatibility](updating.md#why-update) with exchange API's.
Please refer to the [updating guide](updating.md) for details on how to update your installation.
!!! Note "Windows users"
We **strongly** recommend that Windows users use [Docker](docker_quickstart.md) as this will work much easier and smoother (also more secure).
If that is not possible, try using the Windows Linux subsystem (WSL) - for which the Ubuntu/Linux instructions will work.
If you really want to install freqtrade natively on Windows, best use the [`./setup.ps1` installation script](#use-setupps1-windows).
Please also make sure to use the 64bit version of Python, as 32bit versions have severe memory limitations, which can negatively impact your experience with backtesting/hyperopt.
------
## Information
For Windows installation, please use the [windows installation guide](windows_installation.md).
The easiest way to install and run Freqtrade is to clone the bot Github repository and then run the `./setup.sh` script, if it's available for your platform.
The easiest way to install and run Freqtrade is to clone the bot Github repository and then run the `./setup.sh` (`./setup.ps1` for Windows) script, if it's available for your platform.
!!! Note "Version considerations"
When cloning the repository the default working branch has the name `develop`. This branch contains all last features (can be considered as relatively stable, thanks to automated tests).
The `stable` branch contains the code of the last release (done usually once per month on an approximately one week old snapshot of the `develop` branch to prevent packaging bugs, so potentially it's more stable).
!!! Note
Python3.10 or higher and the corresponding `pip` are assumed to be available. The install-script will warn you and stop if that's not the case. `git` is also needed to clone the Freqtrade repository.
Either [uv](https://docs.astral.sh/uv/), or Python3.11 or higher and the corresponding `pip` are assumed to be available. The install-script will warn you and stop if that's not the case. `git` is also needed to clone the Freqtrade repository.
Also, python headers (`python<yourversion>-dev` / `python<yourversion>-devel`) must be available for the installation to complete successfully.
!!! Warning "Up-to-date clock"
@@ -42,11 +52,10 @@ These requirements apply to both [Script Installation](#script-installation) and
### Install guide
* [Python >= 3.10](http://docs.python-guide.org/en/latest/starting/installation/)
* [Python >= 3.11](http://docs.python-guide.org/en/latest/starting/installation/)
* [pip](https://pip.pypa.io/en/stable/installing/)
* [git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)
* [virtualenv](https://virtualenv.pypa.io/en/stable/installation.html) (Recommended)
* [TA-Lib](https://ta-lib.github.io/ta-lib-python/) (install instructions [below](#install-ta-lib))
### Install code
@@ -54,7 +63,7 @@ We've included/collected install instructions for Ubuntu, MacOS, and Windows. Th
OS Specific steps are listed first, the common section below is necessary for all systems.
!!! Note
Python3.10 or higher and the corresponding pip are assumed to be available.
Python3.11 or higher and the corresponding pip are assumed to be available.
=== "Debian/Ubuntu"
#### Install necessary dependencies
@@ -153,20 +162,9 @@ If you are on Debian, Ubuntu or MacOS, freqtrade provides the script to install
./setup.sh -i
```
### Activate your virtual environment
#### Other options of /setup.sh script
Each time you open a new terminal, you must run `source .venv/bin/activate` to activate your virtual environment.
```bash
# activate virtual environment
source ./.venv/bin/activate
```
[You are now ready](#you-are-ready) to run the bot.
### Other options of /setup.sh script
You can as well update, configure and reset the codebase of your bot with `./script.sh`
You can also update, configure and reset the codebase of your bot with `./setup.sh`
```bash
# --update, Command git pull to update.
@@ -179,7 +177,7 @@ You can as well update, configure and reset the codebase of your bot with `./scr
** --install **
With this option, the script will install the bot and most dependencies:
You will need to have git and python3.10+ installed beforehand for this to work.
You will need to have git and python3.11+ installed beforehand for this to work.
* Mandatory software as: `ta-lib`
* Setup your virtualenv under `.venv/`
@@ -195,41 +193,40 @@ This option will pull the last version of your current branch and update your vi
This option will hard reset your branch (only if you are on either `stable` or `develop`) and recreate your virtualenv.
```
#### Activate your virtual environment
Each time you open a new terminal, you must run `source .venv/bin/activate` to activate your virtual environment.
```bash
# activate virtual environment
source ./.venv/bin/activate
```
### Use ./setup.ps1 (Windows)
The script will ask you a few questions to determine which parts should be installed.
```powershell
Set-ExecutionPolicy -ExecutionPolicy Bypass
cd freqtrade
. .\setup.ps1
```
#### Activate your virtual environment (Windows)
```powershell
# activate virtual environment
. .\.venv\Scripts\Activate.ps1
```
[You are now ready](#you-are-ready) to run the bot.
-----
## Manual Installation
Make sure you fulfill the [Requirements](#requirements) and have downloaded the [Freqtrade repository](#freqtrade-repository).
### Install TA-Lib
#### TA-Lib script installation
```bash
sudo ./build_helpers/install_ta-lib.sh
```
!!! Note
This will use the ta-lib tar.gz included in this repository.
##### TA-Lib manual installation
[Official installation guide](https://ta-lib.github.io/ta-lib-python/install.html)
```bash
wget http://prdownloads.sourceforge.net/ta-lib/ta-lib-0.4.0-src.tar.gz
tar xvzf ta-lib-0.4.0-src.tar.gz
cd ta-lib
sed -i.bak "s|0.00000001|0.000000000000000001 |g" src/ta_func/ta_utility.h
./configure --prefix=/usr/local
make
sudo make install
# On debian based systems (debian, ubuntu, ...) - updating ldconfig might be necessary.
sudo ldconfig
cd ..
rm -rf ./ta-lib*
```
### Setup Python virtual environment (virtualenv)
You will run freqtrade in separated `virtual environment`
@@ -332,16 +329,6 @@ python3 -m pip install -r requirements.txt
python3 -m pip install -e .
```
Patch conda libta-lib (Linux only)
```bash
# Ensure that the environment is active!
conda activate freqtrade
cd build_helpers
bash install_ta-lib.sh ${CONDA_PREFIX} nosudo
```
[You are now ready](#you-are-ready) to run the bot.
### Important shortcuts
@@ -377,7 +364,7 @@ conda deactivate
Happy trading!
-----
------
## You are ready
@@ -434,3 +421,15 @@ open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10
```
If this file is inexistent, then you're probably on a different version of MacOS, so you may need to consult the internet for specific resolution details.
### Windows Installation error
```bash
error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools
```
Unfortunately, many packages requiring compilation don't provide a pre-built wheel. It is therefore mandatory to have a C/C++ compiler installed and available for your python environment to use.
You can download the Visual C++ build tools from [the Visual Studio website](https://visualstudio.microsoft.com/visual-cpp-build-tools/) and install "Desktop development with C++" in it's default configuration. Unfortunately, this is a heavy download / dependency so you might want to consider WSL2 or [docker compose](docker_quickstart.md) first.
![Windows installation](assets/windows_install.png)

Some files were not shown because too many files have changed in this diff Show More