cryptofeed▌
2025emma/vibe-coding-cn · updated Apr 8, 2026
Comprehensive assistance with Cryptofeed development - a Python library for handling cryptocurrency exchange data feeds with normalized and standardized results.
Cryptofeed Skill
Comprehensive assistance with Cryptofeed development - a Python library for handling cryptocurrency exchange data feeds with normalized and standardized results.
When to Use This Skill
This skill should be triggered when:
- Working with real-time cryptocurrency market data
- Implementing WebSocket streaming from crypto exchanges
- Building algorithmic trading systems
- Processing order book updates, trades, or ticker data
- Connecting to 40+ cryptocurrency exchanges
- Using normalized exchange APIs
- Implementing market data backends (Redis, MongoDB, Kafka, etc.)
Quick Reference
Installation
# Basic installation
pip install cryptofeed
# With all optional backends
pip install cryptofeed[all]
Basic Usage Pattern
from cryptofeed import FeedHandler
from cryptofeed.exchanges import Coinbase, Bitfinex
from cryptofeed.defines import TICKER, TRADES, L2_BOOK
# Define callbacks
def ticker_callback(data):
print(f"Ticker: {data}")
def trade_callback(data):
print(f"Trade: {data}")
# Create feed handler
fh = FeedHandler()
# Add exchange feeds
fh.add_feed(Coinbase(
symbols=['BTC-USD'],
channels=[TICKER],
callbacks={TICKER: ticker_callback}
))
fh.add_feed(Bitfinex(
symbols=['BTC-USD'],
channels=[TRADES],
callbacks={TRADES: trade_callback}
))
# Start receiving data
fh.run()
National Best Bid/Offer (NBBO)
from cryptofeed import FeedHandler
from cryptofeed.exchanges import Coinbase, Gemini, Kraken
def nbbo_update(symbol, bid, bid_size, ask, ask_size, bid_feed, ask_feed):
print(f'Pair: {symbol} Bid: {bid:.2f} ({bid_size:.6f}) from {bid_feed}')
print(f'Ask: {ask:.2f} ({ask_size:.6f}) from {ask_feed}')
f = FeedHandler()
f.add_nbbo([Coinbase, Kraken, Gemini], ['BTC-USD'], nbbo_update)
f.run()
Supported Exchanges (40+)
Major Exchanges
- Binance (Spot, Futures, Delivery, US)
- Coinbase, Kraken (Spot, Futures), Bitfinex
- Gemini, OKX, Bybit
- Huobi (Spot, DM, Swap), Gate.io (Spot, Futures)
- KuCoin, Deribit, BitMEX, dYdX
Additional Exchanges
AscendEX, Bequant, bitFlyer, Bithumb, Bitstamp, Blockchain.com, Bit.com, Bitget, Crypto.com, Delta, EXX, FMFW.io, HitBTC, Independent Reserve, OKCoin, Phemex, Poloniex, ProBit, Upbit
Supported Data Channels
Market Data (Public)
- L1_BOOK - Top of order book
- L2_BOOK - Price aggregated sizes
- L3_BOOK - Price aggregated orders
- TRADES - Executed trades (taker side)
- TICKER - Price ticker updates
- FUNDING - Funding rate data
- OPEN_INTEREST - Open interest statistics
- LIQUIDATIONS - Liquidation events
- INDEX - Index price data
- CANDLES - Candlestick/K-line data
Authenticated Channels (Private)
- ORDER_INFO - Order status updates
- TRANSACTIONS - Deposits and withdrawals
- BALANCES - Wallet balance updates
- FILLS - User's executed trades
Supported Backends
Write data directly to storage:
- Redis (Streams and Sorted Sets)
- Arctic - Time-series database
- ZeroMQ, InfluxDB v2, MongoDB
- Kafka, RabbitMQ, PostgreSQL
- QuasarDB, GCP Pub/Sub, QuestDB
- UDP/TCP/Unix Sockets
Key Features
Real-time Data Normalization
Cryptofeed normalizes data across all exchanges, providing consistent:
- Symbol formatting
- Timestamp handling
- Data structures
- Channel names
WebSocket + REST Fallback
- Primarily uses WebSockets for real-time data
- Falls back to REST polling when WebSocket unavailable
- Automatic reconnection handling
NBBO Aggregation
Create synthetic National Best Bid/Offer feeds by aggregating data across multiple exchanges to find arbitrage opportunities.
Backend Integration
Direct data writing to various storage systems without custom integration code.
Requirements
- Python: 3.8 or higher
- Installation: Via pip or from source
- Optional Dependencies: Install backends as needed
Common Use Cases
Multi-Exchange Price Monitoring
fh = FeedHandler()
fh.add_feed(Binance(symbols=['BTC-USDT'], channels=[TICKER], callbacks=ticker_cb))
fh.add_feed(Coinbase(symbols=['BTC-USD'], channels=[TICKER], callbacks=ticker_cb))
fh.add_feed(Kraken(symbols=['BTC-USD'], channels=[TICKER], callbacks=ticker_cb))
fh.run()
Order Book Depth Analysis
def book_callback(book, receipt_timestamp):
print(f"Bids: {len(book.book.bids)} | Asks: {len(book.book.asks)}")
fh.add_feed(Coinbase(
symbols=['BTC-USD'],
channels=[L2_BOOK],
callbacks={L2_BOOK: book_callback}
))
Trade Flow Analysis
def trade_callback(trade, receipt_timestamp):
print(f"{trade.exchange} - {trade.symbol}: {trade.side} {trade.amount} @ {trade.price}")
fh.add_feed(Binance(
symbols=['BTC-USDT', 'ETH-USDT'],
channels=[TRADES],
callbacks={TRADES: trade_callback}
))
Reference Files
This skill includes documentation in references/:
- getting_started.md - Installation and basic usage
- README.md - Complete overview and examples
Use view to read specific reference files when detailed information is needed.
Working with This Skill
For Beginners
Start with basic FeedHandler setup and single exchange connections before adding multiple feeds.
For Advanced Users
Explore NBBO feeds, authenticated channels, and backend integrations for production systems.
For Code Examples
See the quick reference section above and the reference files for complete working examples.
Resources
- Repository: https://github.com/bmoscon/cryptofeed
- PyPI: https://pypi.python.org/pypi/cryptofeed
- Examples: https://github.com/bmoscon/cryptofeed/tree/master/examples
- Documentation: https://github.com/bmoscon/cryptofeed/blob/master/docs/README.md
- Discord: https://discord.gg/zaBYaGAYfR
- Related: Cryptostore (containerized data storage)
Notes
- Requires Python 3.8+
- WebSocket-first approach with REST fallback
- Normalized data across all exchanges
- Active development and community support
- 40+ supported exchanges and growing
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
Ratings
4.4★★★★★35 reviews- ★★★★★Xiao Zhang· Dec 28, 2024
Registry listing for cryptofeed matched our evaluation — installs cleanly and behaves as described in the markdown.
- ★★★★★Zaid Mensah· Dec 4, 2024
Keeps context tight: cryptofeed is the kind of skill you can hand to a new teammate without a long onboarding doc.
- ★★★★★Zaid Perez· Nov 23, 2024
cryptofeed is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
- ★★★★★Ira Farah· Nov 19, 2024
cryptofeed fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Amelia Garcia· Nov 3, 2024
I recommend cryptofeed for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
- ★★★★★Amelia Johnson· Oct 22, 2024
cryptofeed reduced setup friction for our internal harness; good balance of opinion and flexibility.
- ★★★★★Sofia Okafor· Oct 14, 2024
cryptofeed fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Min Anderson· Oct 10, 2024
cryptofeed is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
- ★★★★★Maya Zhang· Sep 17, 2024
Solid pick for teams standardizing on skills: cryptofeed is focused, and the summary matches what you get after install.
- ★★★★★Ira Bansal· Sep 17, 2024
cryptofeed has been reliable in day-to-day use. Documentation quality is above average for community skills.
showing 1-10 of 35