Libreria CCXT

CCXT è una libreria PHP ( disponibile anche per JavaScript e Python ) per il trading di criptovalute e l’e-commerce con supporto per molti exchange e merchant.

Supporta la gran parte degli exchange più famosi: Binance, Bitfinex, Coinbase, Gemini, TheRockTrading e molti altri.

La libreria CCXT viene utilizzata per connettersi e fare trading con gli exchange di criptovaluta e servizi di elaborazione dei pagamenti in tutto il mondo. Fornisce un rapido accesso ai dati di mercato per l’archiviazione, l’analisi, la visualizzazione, lo sviluppo di indicatori, il trading algoritmico, il backtest della strategia, la programmazione dei bot e l’ingegneria del software correlato.

La libreria CCXT è composta da una parte pubblica e da una parte privata. Chiunque può utilizzare la parte pubblica subito dopo l’installazione. Le API pubbliche forniscono accesso illimitato alle informazioni pubbliche per tutti gli exchange senza la necessità di registrare un account utente o disporre di una chiave API.

Le API pubbliche includono quanto segue:

  • dati di mercato
  • strumenti di trading
  • feed di prezzo (tassi di cambio)
  • libro ordini
  • dati storici
  • ticker
  • OHLC (V) per la creazione di grafici
  • altri endpoint pubblici

Per fare trading con le API private è necessario ottenere le chiavi API dall’exchange.Di solito significa iscriversi all’exchange e creare chiavi API per il tuo account.

Alcuni exchange richiedono informazioni personali o identificazione.

Le API private consentono quanto segue:

  • gestire le informazioni sull’account personale
  • interrogare i saldi dei conti
  • effettuare ordini di mercato
  • depositare e prelevare fondi ( fiat e crypto )
  • interrogare ordini personali
  • ottenere la cronologia del libro mastro
  • trasferire fondi tra conti
  • utilizzare i servizi commerciali

Ad esempio per connettersi a Binance ( serve registrarsi ed ottenere le API key e secret):

$exchange_id = 'binance';
        $exchange_class = "\\ccxt\\$exchange_id";
        $exchange = new $exchange_class(array(
            'apiKey' => API_KEY,
            'secret' => API_SECRET,
            'timeout' => 30000,
            'enableRateLimit' => true,
        ));

Nella maggior parte dei casi è necessario caricare l’elenco dei mercati e dei simboli di trading per un particolare scambio prima di accedere ad altri metodi API.

$marketSymbols = $exchange->load_markets();

Si possono ad esempio ottenere i valori OHLCV dei grafci candlestick:

$ohlcv = $exchange->fetch_ohlcv($symbol, '1d', null, 1);

Il progetto è reperibile qui: https://github.com/ccxt/ccxt

Il manuale è disponibile all’indirizzo: https://github.com/ccxt/ccxt/wiki