Delphi FTX-API-Client

· Komponenten

Ab sgcWebSockets 4.5.0 wird die FTX-API unterstützt.

Unterstützte APIs

FTX WebSocket-API 

Um dich mit der FTX-WebSocket-API zu verbinden, erstellst du einfach einen neuen FTX-API-Client und hängst ihn an einen TsgcWebSocketClient.

Hier ein Beispiel:

oClient := TsgcWebSocketClient.Create(nil);
oFTX := TsgcWSAPI_FTX.Create(nil);
oFTX.Client := oClient;
oClient.Active := True; 

FTX bietet eine Vielzahl von Kanälen, die du abonnieren kannst, um Echtzeit-Updates zu Marktdaten, Orders usw. zu erhalten.

Hier ein Beispiel, wie du einen Ticker abonnierst:

oClient := TsgcWebSocketClient.Create(nil);
oFTX := TsgcWSAPI_FTX.Create(nil);
oFTX.Client := oClient;
oFTX.SubscribeTicker('BTC-PERP');
procedure OnFTXMessage(Sender: TObject; aType, aRawMessage: string);
begin
// here you will receive the ticker updates
end; 

FTX REST-API 

FTX bietet öffentliche Marktdaten über REST-Endpunkte. Beim Aufruf eines dieser Endpunkte erhältst du einen Snapshot der angefragten Marktdaten.

Die Marktdaten-Endpunkte erfordern keine Authentifizierung und sind allen Nutzern frei zugänglich.

Beispiel: Um einen Snapshot des Marktes BTC-PERP zu erhalten, führst du den folgenden Aufruf aus:

oFTX := TsgcWSAPI_FTX.Create(nil);
ShowMessage(oFTX.REST_API.GetMarket('BTC-PERP')); 

Die FTX REST-API bietet öffentliche und private Endpunkte. Die privaten Endpunkte erfordern signierte Nachrichten, um die Sicherheit der Transaktionen zu erhöhen.

Melde dich zuerst in deinem FTX-Konto an und lege eine neue API an. Du erhältst die folgenden Werte:


Diese Felder müssen in der Eigenschaft FTX der FTX-API-Client-Komponente konfiguriert werden.

Nach der Konfiguration kannst du private Anfragen an die FTX-REST-API ausführen.

oFTX := TsgcWSAPI_FTX.Create(nil);
oFTX.FTX.ApiKey := '<your api key>';
oFTX.FTX.ApiSecret := '<your api secret>';
ShowMessage(oFTX.REST_API.GetAccount); 

Orders platzieren 

Market Order

Lege eine neue Market Order an: kaufe 0,002 Kontrakte BTC-PERP.

oFTX := TsgcWSAPI_FTX.Create(nil);
oFTX.FTX.ApiKey := 'your api key';
oFTX.FTX.ApiSecret := 'your api secret';
ShowMessage(oFTX.REST_API.PlaceMarketOrder('BTC-PERP', ftosBuy, 0.002)); 

Limit Order

Lege eine neue Limit Order an: kaufe 0,002 Kontrakte BTC-PERP mit Preislimit 10000. 

oFTX := TsgcWSAPI_FTX.Create(nil);
oFTX.FTX.ApiKey := 'your api key';
oFTX.FTX.ApiSecret := 'your api secret';
ShowMessage(oFTX.REST_API.PlaceLimitOrder('BTC-PERP', ftosBuy, 0.002, 10000));