A Python library for streaming normalized crypto exchange data, including order books, trades, and tickers.

Install

mkdir -p .claude/skills/cryptofeed && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/6798" && unzip -o skill.zip -d .claude/skills/cryptofeed && rm skill.zip

Installs to .claude/skills/cryptofeed

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Cryptofeed - Real-time cryptocurrency market data feeds from 40+ exchanges. WebSocket streaming, normalized data, order books, trades, tickers. Python library for algorithmic trading and market data analysis.
208 charsno explicit “when” trigger
Intermediate

Key capabilities

  • Stream real-time cryptocurrency market data
  • Normalize data across 40+ exchanges
  • Calculate synthetic NBBO feeds
  • Integrate with multiple storage backends
  • Perform order book and trade analysis

How it works

The library uses a FeedHandler to manage WebSocket connections to various exchanges, normalizing incoming data into consistent structures before passing them to user-defined callbacks.

Inputs & outputs

You give it
Exchange feed configuration and symbols
You get back
Normalized market data streams

When to use cryptofeed

  • Build an algorithmic trading bot
  • Monitor real-time trade activity
  • Analyze order book depth
  • Backtest market data strategies

About this skill

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

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

When not to use it

  • When requiring non-Python environments
  • When needing data from exchanges not supported by the library

Prerequisites

Python 3.8 or higher

Limitations

  • Requires Python 3.8+
  • WebSocket-first approach may require REST fallback configuration

How it compares

Unlike manual API implementations, this library provides a unified interface and normalization layer across dozens of disparate exchange protocols.

Compared to similar skills

cryptofeed side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
cryptofeed (this skill)17moNo flagsIntermediate
quant-analyst1032moNo flagsAdvanced
umap-learn62moReviewIntermediate
embedding-strategies82moNo flagsIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

quant-analyst

zenobi-us

Expert quantitative analyst specializing in financial modeling, algorithmic trading, and risk analytics. Masters statistical methods, derivatives pricing, and high-frequency trading with focus on mathematical rigor, performance optimization, and profitable strategy development.

103355

umap-learn

K-Dense-AI

UMAP dimensionality reduction. Fast nonlinear manifold learning for 2D/3D visualization, clustering preprocessing (HDBSCAN), supervised/parametric UMAP, for high-dimensional data.

6100

embedding-strategies

wshobson

Select and optimize embedding models for semantic search and RAG applications. Use when choosing embedding models, implementing chunking strategies, or optimizing embedding quality for specific domains.

890

building-automl-pipelines

jeremylongshore

Build automated machine learning pipelines, including feature engineering, model selection, and performance evaluation.

688

model-compare

rawwerks

Compare 3D CAD models using boolean operations (IoU, Dice, precision/recall). Use when evaluating generated models against gold references, diffing CAD revisions, or computing similarity metrics for ML training. Triggers on: model diff, compare models, IoU, intersection over union, model similarity, CAD comparison, STEP diff, 3D evaluation, gold reference, generated model, precision recall 3D.

783

matchms

davila7

Mass spectrometry analysis. Process mzML/MGF/MSP, spectral similarity (cosine, modified cosine), metadata harmonization, compound ID, for metabolomics and MS data processing.

674

Search skills

Search the agent skills registry