À partir de sgcWebSockets 4.4.8, l'API REST Coinbase Pro est pleinement prise en charge. L'API REST permet d'accéder aux données de marché publiques et aux comptes privés, de placer de nouveaux ordres... La bibliothèque sgcWebSockets prend en charge les endpoints suivants :
Authentication, Accounts, Orders, Fills, Limits, Deposits, Withdrawals, Stablecoin Conversions, Payment Methods, Coinbase Accounts, Fees, Reports, Profiles, Margin, Oracle
API REST Coinbase Pro publique
Coinbase Pro propose des données de marché publiques via des endpoints REST ; quand tu appelles l'un de ces endpoints, tu obtiens un snapshot des données de marché demandées.
Les endpoints de données de marché ne nécessitent pas d'authentification, ils sont donc disponibles librement pour tous les utilisateurs.
Exemple : pour obtenir un snapshot du ticker BTC-USD, effectue l'appel suivant.
oCoinbase := TsgcWSAPI_Coinbase.Create(nil);
ShowMessage(oCoinbase.REST_API.GetProductTicker('BTC-USD'));
API REST Coinbase Pro privée
L'API REST Coinbase Pro propose des endpoints publics et privés. Les endpoints privés exigent que les messages soient signés pour augmenter la sécurité des transactions.
Tu dois d'abord te connecter à ton compte Coinbase Pro et créer une nouvelle API ; tu obtiendras les valeurs suivantes :
- ApiKey
- ApiSecret
- Passphrase
Ces champs doivent être configurés dans la propriété Coinbase du composant client API Coinbase.
Une fois configurés, tu peux commencer à faire des requêtes privées à l'API REST Coinbase Pro.
oCoinbase := TsgcWSAPI_Coinbase.Create(nil); oCoinbase.Coinbase.ApiKey := '<your api key>'; oCoinbase.Coinbase.ApiSecret := '<your api secret>'; oCoinbase.Coinbase.ApiPassphrase := '<your passphrase>'; ShowMessage(oCoinbase.REST_API.ListAccounts);
Placer des ordres sur Coinbase Pro
Pour placer de nouveaux ordres sur Coinbase Pro, tu as d'abord besoin de tes APIs pour accéder à tes données privées. Une fois tes clés API configurées, tu peux commencer à placer des ordres.
Exemple : placer un nouvel ordre market, acheter 0,002 contrats de BTC-USD.
oCoinbase := TsgcWSAPI_Coinbase.Create(nil); oCoinbase.Coinbase.ApiKey := 'your api key'; oCoinbase.Coinbase.ApiSecret := 'your api secret'; oCoinbase.Coinbase.ApiPassphrase := 'your passphrase'; ShowMessage(oCoinbase.REST_API.PlaceMarketOrder(coisBuy, 'BTC-USD', 0.002));
Compte SandBox Coinbase Pro
Coinbase Pro permet d'utiliser un compte SandBox où tu peux trader sans fonds réels. Ce compte nécessite de créer des clés API différentes du compte de production.
Pour utiliser le compte SandBox, il suffit de positionner la propriété Coinbase.SandBox à true avant toute requête à l'API.
oCoinbase := TsgcWSAPI_Coinbase.Create(nil); oCoinbase.Coinbase.ApiKey := 'your api key'; oCoinbase.Coinbase.ApiSecret := 'your api secret'; oCoinbase.Coinbase.ApiPassphrase := 'your passphrase'; oCoinbase.Coinbase.SandBox := True; ShowMessage(oCoinbase.REST_API.ListAccounts);
Trading en SandBox avec l'API Coinbase Pro
Dans la vidéo suivante, tu peux voir comment placer de nouveaux ordres avec l'API REST et comment obtenir des mises à jour en temps réel via le canal utilisateur WebSocket.
});