Strategies
A Strategy is a template for an algorithmic trading strategy that users can configure, extend, and run. The trading strategy itself is a continual process that monitors trading pairs on one or more exchanges in order to make trading decisions.
Strategies separate trading logic, open source code that defines how the strategy behaves, versus parameters, user-defined variables like spread and order amount that control how the strategy is deployed against live market conditions. Strategy parameters are stored in a local config file that is not exposed externally.
Strategies utilize the standardized trading interfaces exposed by exchange and protocol connectors, enabling developers to write code that can be used across many exchanges. Each Hummingbot strategy is a sub-folder in the /hummingbot/strategy
folder.
Strategy Tiers¶
Quarterly Polls allow the Hummingbot community to vote using HBOT tokens to decide which strategies in the codebase should be core strategies maintained by the Foundation:
Core¶
Core strategies are maintained and continually improved by Hummingbot Foundation. Foundation staff focuses on testing these strategies and rewards users who answer questions related to these strategies on Discord.
Strategy | Maintainer | Description |
---|---|---|
pure_market_making | Hummingbot Foundation | Our original single-pair market making strategy |
cross_exchange_market_making | Hummingbot Foundation | Provide liquidity while hedging filled orders on another exchange |
amm_arb | Hummingbot Foundation | Exploits price differences between AMM and spot exchanges |
Community¶
Community strategies have passed the Minimum Voting Power Threshold in the latest Poll and are included in each monthly release. They are not maintained by Hummingbot Foundation but may be maintained by a community member.
Strategy | Maintainer | Description |
---|---|---|
avellaneda_market_making | None | Single-pair market making strategy based on the classic Avellaneda-Stoikov paper |
aroon_oscillator | None | Modified version of Pure Market Making that uses Aroon technical indicator |
cross_exchange_mining | bsmeaton | Community-maintained mod of Cross Exchange Market Making strategy |
hedge | leastchaos | Hedges spot exchange inventory risk using perpetual swaps |
liquidity_mining | None | Provide liquidity on multiple pairs using a single base or quote token |
perpetual_market_making | None | Market-making strategy for perpetual swap markets |
spot_perpetual_arbitrage | None | Exploits price differences between spot and perpetual swap exchanges |
twap | None | Places a batch of limit orders over a period of time |
Strategy Maintenance¶
Strategies may have a maintainer who is responsible for ongoing maintenance: fixing bugs, addressing user issues, and keeping up with Hummingbot codebase updates. Specifically, maintainer responsibilities include:
- Addressing user Github issues and pull requests related to the strategy
- Keeping the strategy updated for changes to the connector changes for each exchange type supported by the strategy
- Keeping the strategy's documentation page updated
Contributing Strategies¶
We encourage users to create and extend Strategy templates for their own purposes, and if they so desire, share them with the community.
Developers may submit strategies for review. Please note the Contribution Guidelines. For developers interested to create or customize their own strategies, please see Strategies in the Developers section.
More Resources¶
- What is Market Making? Interview with Hummingbot CEO Michael Feng
- HBOT 101 : What Is Market Making?
- Beginner’s Top misconceptions on market making
- Trader Sharing: Pure Market Making with cgambit
- How to Spot Market Making and Arbitrage opportunities?
- Strategy coding for dummies: This article is a blog post submission from our of our users. It is not directly related to TWAP strategy, but it demos how you can write a custom script for cross exchange market making strategy
- Create a Custom Strategy | Hummingbot Live: Learn about creating custom strategies with Paulo. Hummingbot lets you customize your strategies by configuring your bots to optimize its maximum potential in liquidity providing.