Kucoin vous permet de trader des Futures en utilisant son API REST.
Vous devez d'abord créer une clé API dans votre compte Kucoin et ajouter des privilèges de trading avec les contrats à terme.
Une fois cela fait, vous pouvez commencer le trading de futures.
Tout d'abord, définissez votre ApiKey, ApiSecret et Passphrase dans le composant client Kucoin ; ils seront utilisés pour signer les requêtes envoyées au serveur Kucoin.
Pour passer un nouvel ordre, appelez simplement la méthode REST_API.PlaceOrder du composant client Kucoin.
Selon le type d'ordre (marché, cours limité...), l'API requiert plus ou moins de champs.
| Paramètre | type | Description |
|---|---|---|
| clientOid | String | Identifiant d'ordre unique créé par les utilisateurs pour identifier leurs ordres, ex. UUID. Autorise uniquement les chiffres, les caractères, le trait de soulignement (_) et le séparateur (-) |
| côté | String | achat ou vente |
| symbol | String | un code de contrat valide, par ex. XBTUSDM |
| type | String | [optionnel] Soit limit soit market |
| levier | String | Levier de l'ordre |
| remarque | String | [optionnel] remarque pour la commande, la longueur ne peut pas dépasser 100 caractères utf8 |
| stop | String | [facultatif] Soit down soit up. Nécessite la définition de stopPrice et stopPriceType |
| stopPriceType | String | [optionnel] Soit TP, IP ou MP. Doit être défini si stop est spécifié. |
| stopPrice | String | [optionnel] Doit être défini si stop est spécifié. |
| reduceOnly | boolean | [optionnel] Une marque pour réduire la taille de la position uniquement. Défini à false par défaut. Il faut définir la taille de la position lorsque reduceOnly est vrai. |
| closeOrder | boolean | [facultatif] Une marque pour clôturer la position. Défini sur false par défaut. Clôture toutes les positions lorsque closeOrder est true. |
| forceHold | boolean | [facultatif] Une marque pour forcer le maintien des fonds pour un ordre, même s'il s'agit d'un ordre pour réduire la taille de la position. Cela aide l'ordre à rester dans le carnet d'ordres et à ne pas être annulé lorsque la taille de la position change. Défini sur false par défaut. |
| Param | type | Description |
|---|---|---|
| price | String | Prix limite |
| size | Integer | Taille de l'ordre. Doit être un nombre positif |
| timeInForce | String | [optionnel] GTC, IOC(par défaut GTC), lire Time In Force |
| postOnly | boolean | [optionnel] Indicateur post-seulement, invalide lorsque timeInForce est IOC. Lorsque postOnly est choisi, il n'est pas autorisé de choisir hidden ou iceberg. |
| hidden | boolean | [optionnel] Ordres non affichés dans le carnet d'ordres. Lorsque masqué est sélectionné, il n'est pas autorisé de choisir postOnly. |
| iceberg | boolean | [optionnel] Seule la partie visible de l'ordre est affichée dans le carnet d'ordres. Lorsque iceberg est choisi, il n'est pas permis de choisir postOnly. |
| visibleSize | Integer | [optionnel] La taille visible maximale d'un ordre iceberg |
| Param | type | Description |
|---|---|---|
| taille | Integer | [optionnel] quantité de contrat à acheter ou à vendre |
1. Succès : la fonction PlaceOrder retourne le message envoyé par le serveur Kucoin.
2. Erreur : l'exception est retournée dans l'événement OnKucoinHTTPException.
Passer un ordre au marché 1 XBTUSDM
oKucoin := TsgcWSAPI_Kucoin_Futures.Create(nil);
oKucoin.Kucoin.ApiKey := '<api key>';
oKucoin.Kucoin.ApiSecret := '<api secret>';
oKucoin.Kucoin.Passphrase := '<passphrase>';
ShowMessage(oKucoin.REST_API.PlaceMarketOrder(kosBuy, 'XBTUSDM', 1));
Placer un ordre limité 1 XBTUSDM à 40000
oKucoin := TsgcWSAPI_Kucoin_Futures.Create(nil);
oKucoin.Kucoin.ApiKey := '<api key>';
oKucoin.Kucoin.ApiSecret := '<api secret>';
oKucoin.Kucoin.Passphrase := '<passphrase>';
ShowMessage(oKucoin.REST_API.PlaceLimitOrder(kosBuy, 'XBTUSDM', 1, 40000));