Skip to content

Hummingbot v2.5.0 Release Notes

Released on April 21, 2025

Repository Description GitHub Release DockerHub Release
Hummingbot Core Client v2.5.0 version-2.5.0
Gateway DEX Middleware v2.5.0 version-2.5.0

Note

Other Hummingbot repositories such as Dashboard, Backend-API, Quant-Lab, and Deploy follow a continuous deployment model without fixed version releases. Use the main branch for these repositories.

See the full changelogs on GitHub:

How to Update

Docker

Re-run the Deploy setup script:

git clone https://github.com/hummingbot/deploy.git
cd deploy
bash setup.sh

For individual images, exit running containers, pull the latest images, and restart:

docker compose down
docker pull hummingbot/hummingbot:latest
docker compose up -d

Source

Update the branches of each repo to this release by running:

git pull origin master # Hummingbot
git pull origin main # Gateway

Afterwards, follow the instructions to re-install dependencies and compile the codebase for each repository. See Install Hummingbot from Source and Install Gateway from Source.

Release Highlights

conda Environment Upgrade

The latest update upgrades Hummingbot's core environment to Python 3.12, bringing performance improvements and modern language features. The Anaconda/Miniconda environment has been streamlined to rely primarily on native conda packages, simplifying setup and maintenance. This upgrade makes Hummingbot faster and enables the use of modern Python libraries.

Key libraries, including Pydantic (now V2), have been updated to for better performance and compatibility. Additionally, test suites now utilize Python's asyncio framework, enhancing testing efficiency and reliability.

Pull Request: #7465

Special thanks to MementoRC for this huge contribution! 🙏

PMM Controller and PositionsHeld

The latest release introduces a new feature in the Strategy V2 framework: PositionsHeld, which tracks a global set of spot balances and perpetual positions held by stopped Executors. StopExecutorAction can now be called with keep_position=true to maintain positions after stopping execution.

This new feature can be used by any strategy, and is ideal for market making strategies. It allows a strategy to track an inventory position that includes the amounts held for each asset and the unrealized P&L of each position, enabling more sophisticated strategies that skew prices and spreads based on inventory held.

This release also adds a new PMM Controller, a new strategy that leverages the PositionsHeld feature to provide a modernized V2 version of the Pure Market Making V1 strategy.

Pull Request: #7500

To learn more about how to use the PMM Controller, watch these recent Hummingbot livestream :

Gateway New vs Legacy

The 2.5 release introduces significant architectural changes to how the Hummingbot client interacts with Gateway, marking a major evolution in the platform's capabilities.

New Gateway (v2.5)

  • Introduces new schemas: Swap, AMM, and CLMM
  • Implements corresponding GatewaySwap class in the Hummingbot client
  • Includes comprehensive test scripts for connector validation
  • Planned for v2.6.0: Addition of GatewayAMM and GatewayCLMM classes
  • Optimized for Solana DEX connectors and liquidity provision (LP) strategies

Legacy Gateway (v2.2)

  • Maintains support for traditional /price and /trade endpoints
  • Ensures backward compatibility with existing connectors
  • Recommended for users who need to maintain compatibility with older integrations

For installation, refer to:

Example Scripts

Pull Request: Hummingbot | Gateway

Improvements to Existing Exchange Connectors

  • #7470 - Added millisecond precision to trade update timestamps for Gate.io spot and perpetual connectors Thanks to komposter for this fix! 🙏
  • #7486 - Updated BingX connector documentation Thanks to danilo-robotter-ai for this contribution! 🙏
  • #7517 - Removed Lyra package dependency from the Derive connector Thanks to isreallee82 for this fix! 🙏
  • #7535 - Extended OKX connector to support U.S users via app.okx.com Thanks to WuonParticle for this fix! 🙏
  • #7538 - Added MEXC rate oracle integration Thanks to llegoelkelo for this fix! 🙏
  • #7548 - Added support for raw Ed25519 and Secp256k1 private keys in the XRPL connector Thanks to mlguys for this fix! 🙏

Other Updates

hummingbot

  • #7520 - Fixed environment configuration for building the Hummingbot library Thanks to MementoRC for this fix! 🙏
  • #7526 - Upgraded Pydantic to the latest major version
  • #7527 - Resolved arbitrage_controller bug that prevented multiple arbitrage configurations Thanks to WuonParticle for this fix! 🙏
  • #7537 - Added instructions for running and debugging tests in Cursor or VS Code Thanks to WuonParticle for this contribution! 🙏

backend-api

  • #60 - Updated latest dependencies to be compatible with the Python 3.12 update to the client

dashboard

  • #239 - Updated Dashboard dependencies to the latest and added grid strike grid component controller page

deploy

  • #85 - Updated deploy repo to reflect changes in Dashboard