Od sgcWebSockets 4.5.0 obsługiwane jest FTX API.
Obsługiwane API
- WebSockets API: łączy z publicznym serwerem WebSocket i dostarcza aktualizacje danych rynkowych w czasie rzeczywistym.
- REST API: REST API posiada endpointy do zarządzania kontem i zleceniami oraz publiczne dane rynkowe.
FTX WebSocket API
Aby połączyć się z FTX WebSocket API, utwórz nowego klienta FTX API i dołącz go do TsgcWebSocketClient.
Poniżej znajdziesz przykład:
oClient := TsgcWebSocketClient.Create(nil); oFTX := TsgcWSAPI_FTX.Create(nil); oFTX.Client := oClient; oClient.Active := True;
FTX oferuje różne kanały, do których możesz subskrybować, aby otrzymywać aktualizacje danych rynkowych, zleceń itp. w czasie rzeczywistym...
Poniżej znajdziesz przykład subskrypcji do Tickera:
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 oferuje publiczne dane rynkowe przez REST Endpoints; gdy wywołasz jeden z tych endpointów, otrzymasz migawkę żądanych danych rynkowych.
Endpointy danych rynkowych nie wymagają uwierzytelniania, więc są dostępne dla wszystkich użytkowników.
Przykład: aby uzyskać migawkę rynku BTC-PERP, wykonaj następujące wywołanie
oFTX := TsgcWSAPI_FTX.Create(nil);
ShowMessage(oFTX.REST_API.GetMarket('BTC-PERP'));
FTX REST API oferuje endpointy publiczne i prywatne. Endpointy prywatne wymagają podpisania wiadomości w celu zwiększenia bezpieczeństwa transakcji.
Najpierw musisz zalogować się na swoje konto FTX i utworzyć nowe API; otrzymasz następujące wartości:
- ApiKey
- ApiSecret
Te pola muszą być skonfigurowane we właściwości FTX komponentu klienta FTX API.
Po skonfigurowaniu możesz zacząć wykonywać prywatne żądania do FTX REST API
oFTX := TsgcWSAPI_FTX.Create(nil); oFTX.FTX.ApiKey := '<your api key>'; oFTX.FTX.ApiSecret := '<your api secret>'; ShowMessage(oFTX.REST_API.GetAccount);
Składanie zleceń
Zlecenie rynkowe
Złóż nowe zlecenie rynkowe: kup 0,002 kontraktów 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));
Zlecenie z limitem ceny
Złóż nowe zlecenie z limitem: kup 0,002 kontraktów BTC-PERP przy limicie ceny 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));
