New
2025.7
Highlighted changes
- ⚠️Drop support for python 3.10.
- FreqUI
- Display Enter / exit tags on signals independent of executions (can be disabled via plot-config)
- Allow configuration of initially displayed number candle for charts.
- Added current drawdown in telegram
/profitmessage. - New
/profit_longand/profit_shortcommands limiting the output to long/short trades respectively. - Enabled websocket support for hyperliquid.
- Add support (via configuration) to hyperliquid vaults and subaccounts.
- Add support for USDC futures on bybit.
- Technical indicators - Fixed “chaikin money flow” calculation to correspond to the official formula.
Sponsor
You can sponsor the work on freqtrade via the following links:
- froggleston (FTUI) https://github.com/sponsors/froggleston/
- robcaulk (freqAI) https://github.com/sponsors/robcaulk/
- xmatthias (freqtrade and freqUI): https://github.com/sponsors/xmatthias/
New Contributors
- @jorenham made their first contribution in https://github.com/freqtrade/freqtrade/pull/11948
- @qqqqqf-q made their first contribution in https://github.com/freqtrade/freqtrade/pull/11974
How to update
As always, you can update your bot using one of the following commands:
docker-compose
docker-compose pull
docker-compose up -d
Installation via setup script
# Deactivate venv and run
./setup.sh --update
Plain native installation
git pull
pip install -U -r requirements.txt
Expand full changelog
45804e1be chore: bump version to 2025.7
4c4bc2be9 chore: update pre-commit hooks
e9cc9bb38 test: add explaining comment about mark price test
3b6395ddb test: improve ccxt compat test teardown
fdcbb3c0d chore: enable test checking funding-fee returned is not 0.
b07ffbf72 test: remove unused argument
a7b7e10c0 docs: update and simplify webhook docs
f18472479 chore: align rpc message fields to use order_rate
d28abc18e chore: update pre-commit hooks
4237d9fd1 chore(deps): bump astral-sh/setup-uv from 6.4.1 to 6.4.3
b98a91ba4 chore(deps): bump ccxt from 4.4.95 to 4.4.96
e74db3e02 chore(deps-dev): bump ruff from 0.12.4 to 0.12.5
ead328222 chore(deps): bump scipy from 1.16.0 to 1.16.1
dfd9e7e77 chore(deps): bump cmaes from 0.11.1 to 0.12.0
71362c914 chore(deps): bump numpy from 2.3.1 to 2.3.2
68114691c chore(deps): bump mkdocs-material in the mkdocs group
37a3bdd50 chore(deps): bump orjson from 3.11.0 to 3.11.1
50389cbbf chore(deps): bump rich from 14.0.0 to 14.1.0
a7e5d3e42 chore(deps): bump stable-baselines3 from 2.6.0 to 2.7.0
48d110654 fix: undefined candle_type_def in lookahead-analysis
52374b39f adds numpy.NaN => np.nan conversion to the strategy updater since numpy2.0 changed that, now it throws errors.
300a866aa test: update test for new logic
9873a862e fix: improve startup_candle_count assignment
1c8bbc14b fix: initialize exchange before strategy
afa1311ff chore: fix odd comment formatting
a85bb040f chore: update pre-commit hooks
841e480ff test: add test for get_dry_run_wallet
a0e9b77f7 fix: fix problem in for dict based wallets
954950c8c chore: update pyarrow pre-compiled wheel
2520b7cd5 chore: add missing fields
f9d7f05d3 chore: sort conf_required alphabetically
46d4ff3d3 chore: update pre-commit hooks
9347d823f chore: re-word variable to match it's purpose
56c672b6d chore(deps-dev): bump mypy from 1.16.1 to 1.17.0
31891b25a chore(deps-dev): bump ruff from 0.12.3 to 0.12.4
e55d8512e chore(deps): bump pyarrow from 20.0.0 to 21.0.0
a130122cc chore: bump pre-commit types for cachetools
3a58297a8 docs: improve hyperliquid doc clarity further
ec5df8731 chore(deps-dev): bump types-cachetools in the types group
cf1533c47 chore(deps-dev): bump pytest-asyncio in the pytest group
fc34f8cad chore(deps): bump jsonschema from 4.24.0 to 4.25.0
3fbb38730 chore(deps): bump python-telegram-bot from 22.2 to 22.3
6a327440e chore(deps): bump technical from 1.5.1 to 1.5.2
f1c8d8325 chore(deps): bump orjson from 3.10.18 to 3.11.0
d2557a70d chore(deps): bump scikit-learn from 1.7.0 to 1.7.1
bf7634775 chore(deps): bump tensorboard from 2.19.0 to 2.20.0
a99a49e2a chore(deps): bump astral-sh/setup-uv from 6.3.1 to 6.4.1
b7fc924e8 docs: update backtest docs to explain missing metrics
ef55bf680 fix: use absolute daily profit instead of relative
25ffc7665 docs(hyperliquid): documentation for hyperliquid vault / subaccount
15b1cff9c docs: hyperliquid - clarify walletAddress further ...
c1ba2936e test: update ccxt_config test to set defaultSettle for bybit
f08c0c987 feat: bybit - set defaultSettle to allow fetchPositions to work in usdc markets
3b5b8bd00 feat: enable USDC futures for bybit
74067d454 feat: Update bybit liquidation price docstring
16359d617 chore: disable ws tests for hyperliquid for now
ae9f83ed3 refactor: simplify ws_test
884f543fb chore: bump ccxt to 4.4.95
29df7499c chore: improve error output
5e64416df test: add test for profit_all
1118032c1 feat: add /profit_all endpoint
277828b1d chore(tests): reduce hyperliquid timeframe
47dcf7bc9 chore(ci): Switch hyperliquid tests to a more active pair
75081ab04 docs: add /profit_long and short to telegram docs
d710c85cd chore: simplify profit-callback logic
978f9c804 chore: improved code structure and types
31522c681 feat: update get_best_pair to allow better filtering
a5ac8a95a feat: update get_trading_volume interface to allow filtering for more props
35dab9b56 test: fix typo in test name
2b05a4967 test: Update telegram /profit tests
b79b5b6c3 refactor: move profit test next to each other
78124cd02 feat: support `/profit long`, too
7c4c78971 chore: fix message formatting issue
30b32a0d2 fix: don't call stoploss-adjust after trade has closed
ccf20b2fe chore: update pre-commit hooks
23bbbddcd chore: improve backtest doc clarity
c6ed64746 chore: sort pairs by absolute profit
8f4dfbf55 chore: remove long-deprecated and pointless metric
5296a3be2 fix: order_filled errors must be ignored
c92c64bac Modify the duplicate functions.
aaca90445 chore: improved pull request template wording
19b57ad87 Add /profit long and /profit short commands#2
6e38b7260 chore: Improve pull request template to be clear against AI
e721a741c chore: update pre-commit hooks
6fdc0f1b2 chore(deps): bump aiohttp from 3.12.13 to 3.12.14
7c9fe22b9 chore(deps): bump pandas from 2.3.0 to 2.3.1
0eed655e7 chore: bump types-dateutil in pre-commit config
d2d283a4b chore(deps): bump ccxt from 4.4.92 to 4.4.94
85492c108 chore(deps): bump python-rapidjson from 1.20 to 1.21
f07134bf6 chore(deps): bump fastapi from 0.115.14 to 0.116.1
7678a59b1 chore(deps): bump certifi from 2025.6.15 to 2025.7.14
daced63d0 chore(deps-dev): bump ruff from 0.12.2 to 0.12.3
002d8c402 chore(deps-dev): bump types-python-dateutil in the types group
8c85448ed chore: remove unused import
2236b08fc refactor: improved exchange init sequence
24f904efc test: fix failing test
3eaa862ca chore: remove modetrade wrong imports
469587e65 feat: add modetrade exchange base config
b24064d70 refactor: move default trading mode determination to exchange
c4a29a017 test: ensure candle_type_def is set properly
aedbe0d1d chore: add spot to available trading modes
c5e3f7d0b chore: default trading-mode to first in supported list
bc019d6b6 chore: Explicitly type variable
f889061b9 refactor: don't assume all exchanges support spot markets
1f52ff3f9 feat: enable websocket support for hyperliquid
d0c3b3028 docs: add explanation message about "couldn't reuse"
e77feafee fix: avoid unnecessary log message when filling ws message
1889a315a chore: fix comment location
cc998afb4 chore: explicitly disable hyperliquid websockets
97f30cf13 feat(telegram): Add /profit long and /profit short commands
ccbc48b59 refactor: improve method ordering
aae3ab23a chore: update pre-commit hooks
2ecadabd9 chore: align API endpoints
fe92df784 chore: revert unnecessary edits
e6dd93243 Expand calculate_max_drawdown() to return the current drawdown data and use it instead of calculate_current_drawdown()
8acc05bb2 chore: update wording in exception message
f13b51cf9 chore: update pre-commit hooks
e90c60c94 chore: improved response on delete order
60029c2a8 fix: improved message when nonexisting trade is deleted
9de9cac23 chore: bump scipy-stubs in pre-commit config
d1fd7c3f6 chore(deps): bump cryptography from 45.0.4 to 45.0.5
60094c658 chore(deps): bump ccxt from 4.4.91 to 4.4.92
dd32e228c chore(deps-dev): bump scipy-stubs from 1.15.3.0 to 1.16.0.2
81639c61a chore(deps-dev): bump ruff from 0.12.1 to 0.12.2
ae1fcbcff chore(deps): bump mkdocs-material in the mkdocs group
263d03518 chore(deps-dev): bump pytest-xdist in the pytest group
f7d42ba60 chore: add TODO to eventually remove warning
701cf47c4 fix: implement fall-through for leverage tier finding
315009a7f chore: move comment to correct location
6e98a369d test: add test case for #11923
fa69b7017 test: add TIA/USDT:USDT test leverage tier
e98f3cfed docs: Update "tag" examples with advanced examples
5f4184536 docs: update max enter_tag length
ac904c60c fix: powershell syntax error
16defdbfd chore: autoformat actual code
d010a050d chore: autoformat tests
7b541ff95 test: refactor test to use asyncio.timeout
78a47920e chore: Update dockerfile syntax
e5a2011a8 ci: don't switch docker to experimental
640cab2ca refactor: tests - update timezone.utc to UTC
deb8bde07 refactor: tests - update timezone.utc to UTC
79f027172 refactor: Asyncio timeoutError update
5b8b80cf5 refactor: Update timezone.utc to UTC
a7ee45a0b refactor: Update timezone.utc to UTC
37cc949d9 refactor: Update utc to UTC
5f59e1435 chore: bump known 3.11+ dependencies
e1f26aeb4 chore!: drop support for python 3.10
b49dafc41 docs: update to 3.11+ version requirement
7c84059b3 chore: drop support for pytohn 3.10 in setup scripts
10a0bf386 ci: Don't test against 3.10
e5a9c65e6 ci: improve pre-commit-update check
81fdff103 chore: simplify exchangews_ohlcv further
5101b1767 test: slightly cleanup ws_ohlcv test
e90aa6abd test: Increased asyncio.sleep for ws_ohlcv test
1dd56df5d chore: improve sorting in mypy deps
9bd8b7acf test: use event based init for telegram
2a5a42207 test: attempt to fix test_exchangews_ohlcv flakyness
e92afb74c test: improve event-loop mocking
4421e54cd fix: don't disable existing loggers when reinitializing logging
b5938985f fix: don't log at "root" level.
0601f15bd Add `scipy-stubs` as dev dependency
66020d250 test: update test trades pagination handling to use _ft_has
909286c0f chore: luno - remove unnecessary config
5efad94d3 chore: add zizmor github action
1e24653e7 feat: add luno basic exchange configuration
c9bc2b880 feat: add always_require_api_keys to ft_has
545cd3a99 chore: ft_has should be before remove_credentials
51a09585d refactor: extract final ft_has construction to it's own method
b98816635 chore: simplify exchange class setup
aec2dc5bb chore: update pre-commit hooks
15c836c56 chore: bump version to 2025.7-dev
2ebc5374f Add current drawdown in telegram profit command