Ab sgcWebSockets 4.4.8 wird die Coinbase Pro REST-API vollständig unterstützt. Die REST-API ermöglicht Zugriff auf öffentliche Marktdaten und private Konten, das Platzieren neuer Orders... Die sgcWebSockets-Bibliothek unterstützt die folgenden Endpoints:
Authentication, Accounts, Orders, Fills, Limits, Deposits, Withdrawals, Stablecoin Conversions, Payment Methods, Coinbase Accounts, Fees, Reports, Profiles, Margin, Oracle
Öffentliche Coinbase Pro REST-API
Coinbase Pro bietet öffentliche Marktdaten über REST-Endpoints; bei einem Aufruf erhältst du einen Snapshot der angeforderten Marktdaten.
Die Marktdaten-Endpoints erfordern keine Authentifizierung und stehen allen Nutzern frei zur Verfügung.
Beispiel: Um einen Snapshot des Tickers BTC-USD zu erhalten, mach folgenden Aufruf:
oCoinbase := TsgcWSAPI_Coinbase.Create(nil);
ShowMessage(oCoinbase.REST_API.GetProductTicker('BTC-USD'));
Private Coinbase Pro REST-API
Die Coinbase Pro REST-API bietet öffentliche und private Endpoints. Private Endpoints verlangen, dass Nachrichten signiert werden, um die Transaktionssicherheit zu erhöhen.
Zunächst musst du dich in deinem Coinbase Pro-Konto anmelden und eine neue API erstellen — du erhältst folgende Werte:
- ApiKey
- ApiSecret
- Passphrase
Diese Felder müssen in der Property „Coinbase" der Coinbase-API-Client-Komponente konfiguriert werden.
Sobald konfiguriert, kannst du private Requests gegen die Coinbase Pro REST-API absetzen.
oCoinbase := TsgcWSAPI_Coinbase.Create(nil); oCoinbase.Coinbase.ApiKey := '<dein API-Key>'; oCoinbase.Coinbase.ApiSecret := '<dein API-Secret>'; oCoinbase.Coinbase.ApiPassphrase := '<deine Passphrase>'; ShowMessage(oCoinbase.REST_API.ListAccounts);
Coinbase Pro: Orders platzieren
Um neue Orders in Coinbase Pro zu platzieren, brauchst du zuerst deine APIs, um auf deine privaten Daten zuzugreifen. Sobald deine API-Keys konfiguriert sind, kannst du Orders platzieren.
Beispiel: Eine neue Market-Order platzieren — 0,002 BTC-USD-Kontrakte kaufen
oCoinbase := TsgcWSAPI_Coinbase.Create(nil); oCoinbase.Coinbase.ApiKey := 'dein api key'; oCoinbase.Coinbase.ApiSecret := 'dein api secret'; oCoinbase.Coinbase.ApiPassphrase := 'deine passphrase'; ShowMessage(oCoinbase.REST_API.PlaceMarketOrder(coisBuy, 'BTC-USD', 0.002));
Coinbase Pro Sandbox-Konto
Coinbase Pro erlaubt die Nutzung eines Sandbox-Kontos zum Handel ohne echtes Geld. Dieses Konto erfordert API-Keys, die sich vom Produktivkonto unterscheiden.
Um das Sandbox-Konto zu nutzen, setze die Property Coinbase.SandBox auf true, bevor du Requests an die API absetzt.
oCoinbase := TsgcWSAPI_Coinbase.Create(nil); oCoinbase.Coinbase.ApiKey := 'dein api key'; oCoinbase.Coinbase.ApiSecret := 'dein api secret'; oCoinbase.Coinbase.ApiPassphrase := 'deine passphrase'; oCoinbase.Coinbase.SandBox := True; ShowMessage(oCoinbase.REST_API.ListAccounts);
Sandbox-Trading mit der Coinbase Pro API
Im folgenden Video siehst du, wie du neue Orders über die REST-API platzierst und Echtzeit-Updates über den WebSocket-User-Channel erhältst.
});