Co sprawdzić przy ocenie API brokera
Czym jest API brokera i dlaczego jego ocena ma znaczenie
API brokera (interfejs programistyczny aplikacji) to interfejs oprogramowania, który umożliwia systemowi zewnętrznemu komunikację z brokerem lub platformą transakcyjną. Typowe funkcje obejmują odczytywanie informacji o koncie i zleceniach, składanie i modyfikowanie zleceń oraz otrzymywanie aktualizacji (na przykład realizacji lub zmian statusu). Ocena API brokera polega na potwierdzeniu, że jego zachowanie jest przewidywalne i obserwowalne z perspektywy Twojego systemu, a nie na zakładaniu, że zawsze przyniesie oczekiwany rezultat. Ponieważ dostawca i warunki rynkowe zmieniają się w czasie, należy skupić się na stabilnych mechanizmach (jak działa API) oraz na ścieżkach weryfikacji (jak można niezależnie potwierdzić deklaracje).
Podstawowa lista kontrolna oceny API brokera
1) Zakres i model danych
Sprawdź dokładnie, jakie obiekty udostępnia API i jak się ze sobą wiążą. Typowe encje obejmują konta, zlecenia, modyfikacje zleceń, transakcje/realizacje, pozycje, salda oraz skutki działań korporacyjnych (jeśli są obsługiwane). Potwierdź, czy znaczniki czasu są spójne (oraz w jakiej strefie czasowej lub formacie), na których identyfikatorach możesz polegać oraz czy pola są opcjonalne czy obowiązkowe. Zdefiniuj swoje założenia: na przykład, jeśli „aktualizacja zlecenia” zawiera pole statusu, zdecyduj, które statusy będziesz traktować jako końcowe dla swojej wewnętrznej logiki.
2) Uwierzytelnianie, uprawnienia i zabezpieczenia
Zweryfikuj metodę uwierzytelniania i sposób ograniczenia dostępu. Zwróć uwagę na szczegółowe uprawnienia (tylko odczyt vs. operacje handlowe) oraz możliwość rotacji poświadczeń. Sprawdź również, jak autoryzowane są wrażliwe operacje oraz czy API obsługuje podpisywanie żądań, szyfrowany transport i dzienniki audytu. Twoim celem jest zapewnienie, że integracja może być zabezpieczona i debugowana bez polegania na ukrytym zachowaniu.
3) Zachowanie przy składaniu zleceń i właściwości bezpieczeństwa
Oceń, co się dzieje, gdy składasz zlecenia w rzeczywistych warunkach: zduplikowane żądania, przekroczenia czasu sieci, zachowanie przy ponawianiu oraz częściowy sukces. Kluczowym pojęciem jest idempotencja — czy powtórzenie tego samego żądania tworzy duplikaty, czy może zostać wykryte i bezpiecznie zignorowane. Sprawdź również, jak API reaguje na nieprawidłowe dane wejściowe (błędy walidacji vs. przepływy „najpierw zaakceptowane, potem odrzucone”).
Testy oparte na dowodach i przykładach, które możesz przeprowadzić
4) Przejścia stanów i uzgadnianie
Przeprowadź testy potwierdzające, że stan systemu jest spójny w czasie. Na przykład zarejestruj sekwencję otrzymaną dla zlecenia: „złożone”, „przyjęte”, „zrealizowane”, „anulowane” itd. Następnie uzgodnij tę sekwencję z tym, co API raportuje w późniejszych wywołaniach „pobierz zlecenie” lub „pobierz realizacje”. To weryfikuje, czy aktualizacje strumieniowe (jeśli występują) są zgodne z zapisanym stanem.
5) Ograniczenia realizacji i raportowania
Nawet bez danych rynkowych na żywo możesz przetestować strukturę i przepływ pracy. W środowisku testowym potwierdź, jak API raportuje częściowe realizacje oraz czy realizacje są powiązane z konkretnymi nogami zlecenia. Sprawdź, co API zwraca, gdy zlecenie zostanie odrzucone, wygaśnie lub nie powiedzie się z powodu kontroli płynności lub ryzyka. Istotne tryby awarii obejmują:
- częściowe realizacje generujące wiele rekordów transakcji
- aktualizacje statusu docierające w nieprawidłowej kolejności
- brakujące pola w określonych warunkach
- długie opóźnienia między złożeniem a pierwszym potwierdzeniem
6) Limity zapytań, niezawodność i taksonomia błędów
Sprawdź udokumentowane limity zapytań i sposób, w jaki API sygnalizuje ograniczanie przepustowości (kody statusu i komunikaty błędów). Potwierdź swoją strategię obsługi błędów, klasyfikując je na kategorie: tymczasowe vs. trwałe, nadające się do ponowienia vs. nienadające się do ponowienia. Zweryfikuj również zachowanie połączenia i limity czasu: co API zwraca, gdy sieć zostanie przerwana po wysłaniu żądania.
Ograniczenia, ryzyka i znaczenie „weryfikacji”
1) Zmienność rynku i kosztów
Wyniki różnią się w zależności od warunków rynkowych, kosztów transakcyjnych i mechaniki realizacji. Historyczne zależności nie stanowią podstawy do przewidywania przyszłych wyników. Dlatego ocena powinna skupić się na tym, czy możesz obserwować i modelować koszty oraz realizacje na podstawie danych wyjściowych API, zamiast zakładać stabilną zależność między danymi wejściowymi a wynikami.
2) Zmiany dostawcy i środowiska
Punkty końcowe API, znaczenia pól i kolejność zdarzeń mogą się zmieniać. Traktuj API jako zmienny interfejs: powinieneś potwierdzić, że wersjonowanie jest udokumentowane, zmiany są ogłaszane, a Twoja integracja może bezpiecznie zawieść, gdy pola są dodawane lub wycofywane.
3) Różnice jurysdykcyjne i operacyjne
Zasady i zachowania operacyjne mogą się różnić w zależności od jurysdykcji i typu konta. Podczas oceny integracji API zweryfikuj, jakie ograniczenia mają zastosowanie do Twojej konkretnej konfiguracji konta w Twoim własnym środowisku (na przykład, które typy zleceń i ograniczenia są obsługiwane).