Install any skill in seconds. Free to start, no credit card required.
Get Started Free →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.
.claude/skills/aiskillstore-cryptofeed/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | -16% | 0% |
| case-02 | ✓→✓ | = Same ✓ | 58% | 0% |
| case-03 | ✓→✓ | = Same ✓ | 97% | 0% |
| case-05 | ✓→✓ | = Same ✓ | 196% | 0% |
| case-06 | ✓→✓ | = Same ✓ | 81% | 0% |
Comprehensive assistance with Cryptofeed development - a Python library for handling cryptocurrency exchange data feeds with normalized and standardized results.
This skill should be triggered when:
python# Basic installation pip install cryptofeed # With all optional backends pip install cryptofeed[all]
pythonfrom 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()
pythonfrom 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()
AscendEX, Bequant, bitFlyer, Bithumb, Bitstamp, Blockchain.com, Bit.com, Bitget, Crypto.com, Delta, EXX, FMFW.io, HitBTC, Independent Reserve, OKCoin, Phemex, Poloniex, ProBit, Upbit
Write data directly to storage:
Cryptofeed normalizes data across all exchanges, providing consistent:
Create synthetic National Best Bid/Offer feeds by aggregating data across multiple exchanges to find arbitrage opportunities.
Direct data writing to various storage systems without custom integration code.
pythonfh = 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()
pythondef 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} ))
pythondef 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} ))
This skill includes documentation in references/:
Use view to read specific reference files when detailed information is needed.
Start with basic FeedHandler setup and single exchange connections before adding multiple feeds.
Explore NBBO feeds, authenticated channels, and backend integrations for production systems.
See the quick reference section above and the reference files for complete working examples.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-04 | fail→fail | 13,991 | 11,917 | -15% | 1 | 1 | 0% | 2,653 | 3,847 | +45% | 0 | 0 | — |
case-01 | fail→pass | 21,349 | 8,714 | -59% | 1 | 1 | 0% | 4,162 | 3,508 | -16% | 0 | 0 | — |
case-02 | pass→pass | 8,023 | 4,269 | -47% | 1 | 1 | 0% | 1,560 | 2,460 | +58% | 0 | 0 | — |
case-03 | pass→pass | 10,452 | 7,564 | -28% | 1 | 1 | 0% | 1,640 | 3,223 | +97% | 0 | 0 | — |
case-05 | pass→pass | 5,075 | 3,152 | -38% | 1 | 1 | 0% | 717 | 2,125 | +196% | 0 | 0 | — |
case-06 | pass→pass | 5,940 | 2,105 | -65% | 1 | 1 | 0% | 1,134 | 2,051 | +81% | 0 | 0 | — |
case-07 | pass→pass | 6,400 | 5,657 | -12% | 1 | 1 | 0% | 1,291 | 2,639 | +104% | 0 | 0 | — |
case-08 | pass→pass | 4,084 | 2,450 | -40% | 1 | 1 | 0% | 665 | 2,106 | +217% | 0 | 0 | — |
case-21 | pass→pass | 14,048 | 12,359 | -12% | 1 | 1 | 0% | 2,864 | 4,132 | +44% | 0 | 0 | — |
case-09 | pass→pass | 4,223 | 3,572 | -15% | 1 | 1 | 0% | 784 | 2,199 | +180% | 0 | 0 | — |
case-10 | pass→pass | 8,679 | 3,608 | -58% | 1 | 1 | 0% | 1,332 | 2,248 | +69% | 0 | 0 | — |
case-11 | pass→pass | 6,116 | 4,332 | -29% | 1 | 1 | 0% | 1,078 | 2,418 | +124% | 0 | 0 | — |
case-12 | pass→pass | 17,160 | 3,484 | -80% | 1 | 1 | 0% | 1,506 | 2,281 | +51% | 0 | 0 | — |
case-13 | pass→pass | 6,056 | 1,466 | -76% | 1 | 1 | 0% | 1,192 | 1,932 | +62% | 0 | 0 | — |
case-14 | pass→pass | 9,359 | 7,096 | -24% | 1 | 1 | 0% | 1,751 | 3,168 | +81% | 0 | 0 | — |
case-15 | pass→pass | 8,151 | 3,616 | -56% | 1 | 1 | 0% | 1,443 | 2,378 | +65% | 0 | 0 | — |
case-16 | pass→pass | 11,972 | 11,822 | -1% | 1 | 1 | 0% | 2,225 | 3,682 | +65% | 0 | 0 | — |
case-22 | pass→pass | 19,871 | 19,039 | -4% | 1 | 1 | 0% | 3,961 | 5,859 | +48% | 0 | 0 | — |
case-17 | pass→pass | 13,451 | 6,445 | -52% | 1 | 1 | 0% | 2,145 | 2,673 | +25% | 0 | 0 | — |
case-18 | pass→pass | 5,308 | 2,518 | -53% | 1 | 1 | 0% | 923 | 2,109 | +128% | 0 | 0 | — |
case-19 | pass→pass | 5,326 | 2,651 | -50% | 1 | 1 | 0% | 839 | 2,150 | +156% | 0 | 0 | — |
case-20 | pass→pass | 7,672 | 9,179 | +20% | 1 | 1 | 0% | 1,594 | 3,610 | +126% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +5 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.