StratCraft
Strategy Type

Market Making Strategies

Spread-Based Liquidity Provision

Market making strategies provide liquidity by continuously placing bid and ask orders around the current price. Profits are earned from the bid-ask spread while managing inventory risk and adverse selection.

2 algorithms1 libraries

How market_making algorithms connect across libraries

🏦Market Making
🤖
Hummingbot2 algos
pure_market_makingintermediate
avellaneda_market_makingadvanced

How market_making algorithms work together in a trading system

1
📊

Spread Calculation

Bid-ask width determination

Base spread from volatility
Inventory skew adjustment
2
📋

Quote Placement

Order book posting

Bid below mid-price
Ask above mid-price
3

Order Execution

Trade capture

Maker order fills
Spread capture
4
🔄

Inventory Management

Position balancing

Target inventory level
Max position limits
5
🛡️

Risk Controls

Adverse selection protection

Toxic flow detection
Circuit breaker triggers

Compare market_making algorithms across key dimensions

Algorithm Comparison MatrixClick a column to expand details
Metric
pure_market_makingHummingbot
avellaneda_market_makingHummingbot
🎯Complexity⭐⭐⭐intermediate⭐⭐⭐⭐advanced
📈Prediction TypeMixedMixed
Training Speed⚡⚡⚡⚡
🎯Accuracy📊📊📊📊
💡Best ForGeneral purposeGeneral purpose
Complexity:

Hummingbot

pure_market_making
Hummingbot
Market Makingintermediate

Single-exchange market making with configurable spread, order levels, and inventory management.

Speed⚡⚡
Accuracy📊📊📊
Key Parameters
bid_spread0.01Bid spread from mid price (1%)
ask_spread0.01Ask spread from mid price (1%)
order_amount1Order size per level
+1 more
avellaneda_market_making
Hummingbot
Market Makingadvanced

Avellaneda-Stoikov optimal market making model with dynamic spread based on inventory risk.

Speed⚡⚡
Accuracy📊📊📊
Key Parameters
risk_factor0.5Inventory risk aversion parameter (gamma)
order_amount1Base order amount

Market Making Strategies — Algorithm Reference

pure_market_making (Hummingbot)
Single-exchange market making with configurable spread, order levels, and inventory management. Key parameters: bid_spread (Bid spread from mid price (1%)), ask_spread (Ask spread from mid price (1%)), order_amount (Order size per level), order_refresh_time (Seconds before order refresh). Source: https://github.com/hummingbot/hummingbot/tree/master/hummingbot/strategy/pure_market_making.
avellaneda_market_making (Hummingbot)
Avellaneda-Stoikov optimal market making model with dynamic spread based on inventory risk. Key parameters: risk_factor (Inventory risk aversion parameter (gamma)), order_amount (Base order amount). Source: https://github.com/hummingbot/hummingbot/tree/master/hummingbot/strategy/avellaneda_market_making.