API Bitmex

Bitmex

 

Bitmex est une plateforme d'échange de cryptomonnaies et de trading de dérivés.

 

Les API suivantes sont prises en charge :

 

  1. Flux WebSocket : permet de s'abonner à certaines méthodes et d'obtenir des données en temps réel. Les événements sont poussés vers les clients par le serveur vers les abonnés. Utilise WebSocket comme protocole.
  2. REST API : les clients peuvent demander au serveur des données de marché et de compte. Nécessite une clé API et un secret pour s'authentifier et utilise HTTPs comme protocole.

 

Propriétés

L'API Bitmex dispose de 2 types de méthodes : publiques et privées. Les méthodes publiques sont accessibles sans authentification, par exemple : obtenir les prix des tickers. Certaines sont privées et liées aux données utilisateur ; ces méthodes nécessitent l'utilisation des clés API Bitmex.

 

 

 

Utilisations les plus courantes

 

API WebSocket

 

Subscribe / Unsubscribe

    

BitMEX permet de s'abonner à des données en temps réel. Cet accès n'est pas limité en débit une fois connecté et constitue le meilleur moyen d'obtenir les données les plus récentes pour vos programmes. Pour certains sujets, vous pouvez passer un symbole pour filtrer les événements par symbole, par exemple : trades, quotes...

 

Les sujets d'abonnement suivants sont disponibles sans authentification :

 

 

Les sujets suivants nécessitent une authentification :

 

 

 

Exemple de messages reçus :

 


{
      "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},
      ]
}

Authentification

    

Si vous souhaitez vous abonner à des flux verrouillés pour les utilisateurs, vous devez d'abord vous authentifier. Notez qu'une authentification invalide fermera la connexion.

 

L'utilisation de l'API BitMEX nécessite une clé API.

 

Les clés API permanentes peuvent être verrouillées sur des plages d'adresses IP et révoquées à volonté sans compromettre vos informations d'identification principales. Elles ne nécessitent également pas de renouvellement.

 

Pour utiliser l'authentification par clé API, vous devez générer une clé API dans votre compte.

 

Appelez la méthode Authenticate avant de vous abonner à tout Topic authentifié.

CancelAllAfter (interrupteur homme mort)

La méthode CancelAllAfter implémente la fonctionnalité Dead Man's Switch. Lorsqu'elle est appelée avec une valeur de délai d'expiration (en millisecondes), elle demande au serveur d'annuler tous les ordres ouverts si aucun appel CancelAllAfter ultérieur n'est reçu dans le délai imparti. Cela est utile pour s'assurer que les ordres sont annulés en cas de déconnexion réseau.

REST API

 

Méthode Description
GetExecutions Ceci retourne toutes les transactions brutes, y compris l'ouverture et l'annulation d'ordres, ainsi que les changements de statut des ordres.
GetExecutionsTradeHistory Cela renvoie des transactions plus ciblées.
GetInstruments Cette requête retourne tous les instruments et indices, y compris ceux qui ont été réglés ou retirés de la liste. Utilisez ce point de terminaison si vous souhaitez interroger des instruments individuels ou utiliser un filtre complexe.
GetOrders Pour obtenir uniquement les ordres ouverts
PlaceOrder Placer un ordre brut en utilisant l'objet TsgcHTTPBitmexOrder.
PlaceMarketOrder Passer un nouvel ordre MARKET.
PlaceLimitOrder Placer un nouvel ordre LIMIT.
PlaceStopOrder Passer un nouvel ordre STOP.
PlaceStopLimitOrder Placer un nouvel ordre STOPLIMIT.
AmendOrder Modifier un ordre existant.
CancelOrder Annule un ordre actif.
CancelAllOrders Annuler tous les ordres actifs.
CancelAllOrdersAfter Annuler tous les ordres après un certain temps.
ClosePosition Fermer une position ouverte.
GetOrderBook Obtenir le carnet d'ordres actuel au format vertical
GetPosition Obtenir vos positions.
SetPositionIsolate Activer la marge isolée ou la marge croisée par position.
SetPositionLeverage Choisissez l'effet de levier par position.
SetPositionRiskLimit Mettez à jour votre limite de risque.
SetPositionTransferMargin Transférer des capitaux propres dans ou hors d'une position.
GetQuotes Obtenir des cotations
GetTrades Obtenir les transactions
GetFunding Obtenir les données de financement.
GetInsurance Obtenir les données du fonds d'assurance.
GetTradeBucketed Obtenir des données de trading agrégées (OHLCV) avec des tailles de bacs configurables.
GetQuoteBucketed Obtenir des données de cotation en intervalles avec des tailles d'intervalles configurables.
GetSettlement Obtenir les données de règlement.
GetLiquidation Obtenir les ordres de liquidation.
GetInstrumentIndices Obtenir les indices des instruments.
GetInstrumentCompositeIndex Obtenir des données d'index composite pour les instruments.
GetStats Obtenir les statistiques à l'échelle de l'échange.
GetStatsHistory Obtenir des statistiques d'échange historiques.
GetStatsHistoryUSD Obtenir les statistiques historiques de change USD.
GetUserMargin Obtenez les données de marge de votre compte.
GetUserWallet Obtenez les informations de votre portefeuille.
GetUserWalletHistory Obtenez l'historique des transactions de votre portefeuille.
GetUserWalletSummary Obtenir un résumé de votre portefeuille.