Przejdź do treści

Pakiety zewnętrzne w algorytmach Pythona

Podczas tworzenia cBotów, wskaźników lub wtyczek opartych na Pythonie dla cTrader możesz potrzebować użyć pakietów zewnętrznych, takich jak pandas, numpy lub innych bibliotek. Ten przewodnik pokazuje, jak zadeklarować takie zależności w pliku requirements.txt, co zapewnia prawidłowe działanie algorytmu w różnych środowiskach.

Konfiguracja pliku i zasady

requirements.txt to zwykły plik tekstowy używany do określania zewnętrznych pakietów Pythona, których potrzebuje projekt. Twój plik requirements.txt powinien być zgodny z następującymi zasadami:

  • Plik musi być nazwany dokładnie requirements.txt
  • Plik musi być umieszczony w katalogu głównym projektu, obok pliku wejściowego Pythona (na przykład Super cBot_main.py).
  • Plik powinien być zawarty w plikach projektu, aby był pakowany razem z algorytmem.

Gdy plik requirements.txt jest obecny i prawidłowo sformatowany, wystarczy zbudować projekt, a wszystkie wymienione zależności zostaną automatycznie dodane i rozwiązane. Oto przykład:

...\Documents\cAlgo\Sources\Robots\Super cBot\Super cBot

Image title

1
2
pandas==2.2.2
numpy>=1.26.4

Obsługiwane funkcje

Format requirements.txt jest zgodny ze standardowymi konwencjami używanymi przez pip. Poniższe przykłady pokazują, jak określić wersje pakietów za pomocą specyfikatorów wersji, dodać komentarze i użyć pustych linii dla czytelności:

Przypinanie do dokładnej wersji

1
pandas==2.2.2

Zezwalanie na minimalną wersję

1
numpy>=1.26.4

Używanie komentarzy i pustych linii

1
2
3
4
5
# Data science libraries
pandas==2.2.2
numpy>=1.26.4

# You can leave blank lines for readability

Najlepsze praktyki

  1. Przypnij krytyczne biblioteki, aby uniknąć nieoczekiwanego zachowania, gdy nowe wydania wprowadzają zmiany powodujące niekompatybilność.
  2. Jeśli używasz specyfikatorów zakresu dla mniej krytycznych pakietów, testuj swój algorytm za każdym razem, gdy zależność zostanie zaktualizowana.
  3. Rozważ pisanie znaczących komentarzy, aby wyjaśnić, dlaczego użyto określonych pakietów lub dlaczego wybrano konkretne wersje.
  4. Przebuduj swój projekt za każdym razem, gdy edytujesz requirements.txt, aby upewnić się, że zależności są poprawnie zainstalowane.

Image title