API Bitmex

Bitmex

 

Bitmex è una piattaforma di scambio di criptovalute e trading di derivati.

 

Sono supportate le seguenti API:

 

  1. Stream WebSocket: consente di sottoscriversi ad alcuni metodi e ricevere dati in tempo reale. Gli eventi vengono inviati ai client dal server agli iscritti. Utilizza WebSocket come protocollo.
  2. REST API: i client possono richiedere al server dati di mercato e dell'account. Richiede una API Key e una Secret per l'autenticazione e utilizza HTTPs come protocollo.

 

Proprietà

L'API di Bitmex ha 2 tipi di metodi: pubblici e privati. I metodi pubblici sono accessibili senza autenticazione, ad esempio: ottenere i prezzi dei ticker. Alcuni sono privati e relativi ai dati utente; tali metodi richiedono l'uso delle chiavi API di Bitmex.

 

 

 

Usi più comuni

 

WebSocket API

 

Sottoscrivi / Annulla sottoscrizione

    

BitMEX consente di sottoscrivere dati in tempo reale. Questo accesso non è soggetto a limitazione di frequenza una volta connessi ed è il modo migliore per ottenere i dati più aggiornati nei propri programmi. In alcuni argomenti, è possibile passare un Symbol per filtrare gli eventi per simbolo, ad esempio: trades, quotes...

 

I seguenti topic di sottoscrizione sono disponibili senza autenticazione:

 

 

I seguenti argomenti richiedono l'autenticazione:

 

 

 

Esempio di messaggi ricevuti:

 


{
      "table":"orderBookL2_25",
      "keys":["symbol","id","side"],
      "types":{"id":"long","price":"float","side":"symbol","size":"long","symbol":"symbol"}
      "foreignKeys":{"side":"side","symbol":"instrument"},
      "attributes":{"id":"sorted","symbol":"grouped"},
      "action":"partial",
      "data":[
        {"symbol":"XBTUSD","id":17999992000,"side":"Sell","size":100,"price":80},
        {"symbol":"XBTUSD","id":17999993000,"side":"Sell","size":20,"price":70},
        {"symbol":"XBTUSD","id":17999994000,"side":"Sell","size":10,"price":60},
        {"symbol":"XBTUSD","id":17999995000,"side":"Buy","size":10,"price":50},
        {"symbol":"XBTUSD","id":17999996000,"side":"Buy","size":20,"price":40},
        {"symbol":"XBTUSD","id":17999997000,"side":"Buy","size":100,"price":30}
      ]
}
 
{
      "table":"orderBookL2_25",
      "action":"update",
      "data":[
        {"symbol":"XBTUSD","id":17999995000,"side":"Buy","size":5}
      ]
    }
{
      "table":"orderBookL2_25",
      "action":"delete",
      "data":[
        {"symbol":"XBTUSD","id":17999995000,"side":"Buy"}
      ]
}
{
      "table":"orderBookL2_25",
      "action":"insert",
      "data":[
        {"symbol":"XBTUSD","id":17999995500,"side":"Buy","size":10,"price":45},
      ]
}

Autenticazione

    

Per iscriversi a stream bloccati dall'utente è necessario autenticarsi prima. Si noti che un'autenticazione non valida chiuderà la connessione.

 

L'utilizzo dell'API BitMEX richiede una chiave API.

 

Le chiavi API permanenti possono essere bloccate su intervalli di indirizzi IP e revocate a piacere senza compromettere le credenziali principali. Non richiedono nemmeno il rinnovo.

 

Per utilizzare l'autenticazione tramite chiave API, è necessario generare una chiave API nel proprio account.

 

Chiamare il metodo Authenticate prima di iscriversi a qualsiasi Authenticated Topic.

CancelAllAfter (Dead Man's Switch)

Il metodo CancelAllAfter implementa la funzione Dead Man's Switch. Quando viene chiamato con un valore di timeout (in millisecondi), indica al server di annullare tutti gli ordini aperti se non viene ricevuta alcuna successiva chiamata CancelAllAfter entro il periodo di timeout. Questa funzione è utile per garantire che gli ordini vengano annullati in caso di disconnessione dalla rete.

REST API

 

Metodo Descrizione
GetExecutions Restituisce tutte le transazioni grezze, incluse l'apertura e la cancellazione degli ordini e le modifiche dello stato degli ordini.
GetExecutionsTradeHistory Restituisce transazioni più mirate.
GetInstruments Restituisce tutti gli strumenti e gli indici, inclusi quelli che sono stati liquidati o non sono in lista. Utilizzi questo endpoint se si desidera interrogare singoli strumenti o applicare un filtro complesso.
GetOrders Per ottenere solo gli ordini aperti
PlaceOrder Inserisce un ordine grezzo utilizzando l'oggetto TsgcHTTPBitmexOrder.
PlaceMarketOrder Piazza un nuovo ordine MARKET.
PlaceLimitOrder Inserisce un nuovo ordine LIMIT.
PlaceStopOrder Inserisce un nuovo ordine STOP.
PlaceStopLimitOrder Inserisci un nuovo ordine STOPLIMIT.
AmendOrder Modifica un ordine esistente.
CancelOrder Annulla un Order attivo.
CancelAllOrders Annulla tutti gli ordini attivi.
CancelAllOrdersAfter Annulla tutti gli ordini dopo un certo tempo.
ClosePosition Chiude una posizione aperta.
GetOrderBook Ottieni il libro degli ordini corrente in formato verticale
GetPosition Ottiene le Sue posizioni.
SetPositionIsolate Abilitare il margine isolato o incrociato per posizione.
SetPositionLeverage Scegliere la leva finanziaria per posizione.
SetPositionRiskLimit Aggiornare il limite di rischio.
SetPositionTransferMargin Trasferire equity in entrata o in uscita da una posizione.
GetQuotes Ottieni quotazioni
GetTrades Ottieni transazioni
GetFunding Ottiene i dati di funding.
GetInsurance Recupero dei dati del fondo assicurativo.
GetTradeBucketed Recupera i dati di trading raggruppati (OHLCV) con dimensioni di bin configurabili.
GetQuoteBucketed Recupera dati di quotazione raggruppati con dimensioni dei contenitori configurabili.
GetSettlement Recupera i dati di liquidazione.
GetLiquidation Recupera gli ordini di liquidazione.
GetInstrumentIndices Ottenere gli indici degli strumenti.
GetInstrumentCompositeIndex Ottiene i dati dell'indice composito per gli strumenti.
GetStats Ottiene le statistiche complessive dell'exchange.
GetStatsHistory Ottieni statistiche storiche sugli exchange.
GetStatsHistoryUSD Ottiene le statistiche storiche di cambio in USD.
GetUserMargin Ottieni i dati sul margine del tuo account.
GetUserWallet Ottieni le informazioni del tuo wallet.
GetUserWalletHistory Ottenere la cronologia delle transazioni del proprio portafoglio.
GetUserWalletSummary Ottiene un riepilogo del Suo portafoglio.