Client API FTX per Delphi

· Componenti

Da sgcWebSockets 4.5.0 l'API FTX è supportata.

API supportate

API WebSocket FTX 

Per connetterti all'API WebSocket di FTX, basta creare un nuovo client API FTX e collegarlo a TsgcWebSocketClient.

Trovi qui sotto un esempio:

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

FTX offre vari canali ai quali puoi sottoscriverti per ottenere aggiornamenti in tempo reale dei dati di mercato, degli ordini...

Trovi qui sotto un esempio di come sottoscriverti a un Ticker:

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; 

API REST FTX 

FTX offre dati di mercato pubblici tramite endpoint REST; quando chiami uno di questi endpoint ottieni uno snapshot dei dati di mercato richiesti.

Gli endpoint Market Data non richiedono autenticazione, quindi sono liberamente disponibili a tutti gli utenti.

Esempio: per ottenere uno snapshot del mercato BTC-PERP esegui la seguente chiamata

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

L'API REST di FTX offre endpoint pubblici e privati. Gli endpoint privati richiedono che i messaggi siano firmati per aumentare la sicurezza delle transazioni.

Devi prima accedere al tuo account FTX e creare una nuova API; otterrai i seguenti valori:


Questi campi devono essere configurati nella proprietà FTX del componente client API FTX.

Una volta configurati, puoi iniziare a fare richieste private all'API REST di FTX

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

Inserire ordini 

Market Order

Inserisci un nuovo Market Order, compra 0,002 contratti di 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

Inserisci un nuovo Limit Order, compra 0,002 contratti di BTC-PERP al prezzo limite di 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));