Інтеграція з CryptoCompare API

Проєктуємо та розробляємо блокчейн-рішення повного циклу: від архітектури смарт-контрактів до запуску DeFi-протоколів, NFT-маркетплейсів та криптобірж. Аудит безпеки, токеноміка, інтеграція з наявною інфраструктурою.
Показано 1 з 1Усі 1306 послуг
Інтеграція з CryptoCompare API
Простий
~2-3 дні
Часті запитання

Напрямки блокчейн-розробки

Етапи блокчейн-розробки

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1308
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1220
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    921
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1149
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    611
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    886

Інтеграція з CryptoCompare API

CryptoCompare—один з найстаріших агрегаторів крипторинку з даними з 2010 року. На відміну від CoinGecko та CoinMarketCap, сильна сторона CryptoCompare—історичні OHLCV дані та дані по біржах: ціни з конкретних торгових пар на конкретних біржах, а не усереднені агрегати. Це робить його незамінним для торгових додатків, бектестингу стратегій та аналітичних дашбордів.

Що дає API

Ціни в реальному часі/data/price, /data/pricemulti, /data/pricemultifull. Останній повертає розширені дані: зміну за 24h, обсяг, market cap, останню біржу та ціну.

Історичні OHLCV—це головна перевага:

  • /data/v2/histominute—поминутні свічки (максимум 2000 точок за запит)
  • /data/v2/histohour—часові
  • /data/v2/histoday—денні (дані з 2010 року для основних пар)

Параметр toTs дозволяє пагінуватися в минуле—для завантаження повної історії потрібні кількох запитів з рекурсивним зсувом.

WebSocket/streaming/ endpoint для real-time оновлень. Підтримує підписки на торгові пари з конкретних бірж.

Типові задачі інтеграції

Отримання мультивалютних цін

const response = await fetch(
  `https://min-api.cryptocompare.com/data/pricemulti?fsyms=BTC,ETH,SOL&tsyms=USD,EUR&api_key=${API_KEY}`
)
const prices = await response.json()
// { BTC: { USD: 67000, EUR: 62000 }, ETH: { ... } }

Rate limit на безплатному тарифі—100 calls/month для деяких endpoints, 250k calls/month для базових. Кешуйте результати—ціни міняються раз в кілька секунд, запитувати їх при кожній дії користувача надмірно.

Завантаження історичних даних

async function fetchFullHistory(fsym: string, tsym: string): Promise<OHLCV[]> {
  const results: OHLCV[] = []
  let toTs = Math.floor(Date.now() / 1000)
  
  while (true) {
    const res = await fetch(
      `https://min-api.cryptocompare.com/data/v2/histoday` +
      `?fsym=${fsym}&tsym=${tsym}&limit=2000&toTs=${toTs}&api_key=${API_KEY}`
    )
    const data = await res.json()
    const candles = data.Data.Data
    
    if (candles.length === 0 || candles[0].time === 0) break
    
    results.unshift(...candles)
    toTs = candles[0].time - 1
    
    await sleep(300) // rate limit
  }
  
  return results
}

WebSocket для real-time

const ws = new WebSocket('wss://streamer.cryptocompare.com/v2?api_key=' + API_KEY)

ws.onopen = () => {
  ws.send(JSON.stringify({
    action: 'SubAdd',
    subs: ['5~CCCAGG~BTC~USD', '5~CCCAGG~ETH~USD']
    // формат: type~market~fsym~tsym
    // type 5 = агрегована ціна
  }))
}

ws.onmessage = (event) => {
  const msg = JSON.parse(event.data)
  if (msg.TYPE === '5') {
    // оновлення ціни
    console.log(msg.FROMSYMBOL, msg.PRICE)
  }
}

CCCAGG—агрегована ціна по всіх біржах. Для ціни з конкретної біржі: 5~Binance~BTC~USDT.

Обмеження та підводні камені

Дані не real-time у строгому розумінні—агрегована ціна CryptoCompare відстає від біржевих даних на 1–5 секунд. Для HFT або арбітражу—не підходить. Для дашбордів та аналітики—достатньо.

Нерівномірне покриття—для топ-100 монет дані гарні, для малоліквідних altcoin—можуть бути пропуски в історії або застарілі ціни.

API ключ в клієнтському коді—поширена помилка. Ключ повинен бути на сервері, клієнт ходить до вашого proxy endpoint. Інакше ключ утече, ви перевищите лімітація, отримаєте рахунок.

Лімітація по тарифам—безплатний тариф обмежений. Для production: Starter ($29/month) або вище. Перед вибором тарифу—посчіта реальний RPS вашого додатку.

Що робиться за 2–3 дні

Серверний proxy для API запитів з кешуванням (Redis або in-memory), інтеграція endpoints: поточні ціни, OHLCV історія, WebSocket стрим, TypeScript/Python SDK-обёртка під ваш стек, базовий UI компонент або готові дані для вашого фронтенду.