Grupuje strategie według wskaźników wejścia i wybiera N najlepszych w każdej grupie przy użyciu konfigurowalnych kryteriów. Przydatne do filtrowania dużych baz danych, aby zachować tylko najlepsze strategie dla danej kombinacji wskaźników wejścia.
Oto zaktualizowany artykuł z trzecim argumentem:
Select Best Strategies by Entry Indicators Group with Arguments
Opis
Ten snippet analizy niestandardowej przetwarza bazę danych (databank) i automatycznie wybiera N najlepszych strategii z każdej grupy strategii korzystających z tej samej kombinacji wskaźników wejścia.
Jest przydatny, gdy posiadasz dużą bazę danych z wieloma strategiami zbudowanymi z podobnych elementów składowych. Zamiast porównywać je ręcznie, ten snippet grupuje je według warunków wejścia i zachowuje tylko N najlepszych strategii z każdej grupy, uszeregowanych według konfigurowalnego kryterium oceny.
Jak to działa
Snippet korzysta z wbudowanej w databank kolumny Entry Indicators, aby rozpoznać, z jakich wskaźników korzysta dana strategia w warunkach wejścia. Strategie posiadające dokładnie te same wskaźniki wejścia trafiają do tej samej grupy. Wewnątrz każdej grupy strategie są szeregowane według wybranego kryterium, a N najlepszych zostaje wybranych jako zwycięzcy.
Wszystkie zwycięskie strategie zostają skopiowane do docelowego databanku (Target). Bazowy databank (Source) pozostaje nienaruszony.
Wymagania
Nie są wymagane żadne dodatkowe snippety. Wszystkie zależności są dostępne w standardowej instalacji SQX.
Instrukcja konfiguracji
Skopiuj poniższy kod do nowego snippetu Custom Analysis w edytorze kodu (CodeEditor) i nazwij go SelectBestByEntryGroupArgs
Skompiluj snippet
Utwórz nowy Custom Project
Dodaj nowe zadanie typu Custom Analysis
W konfiguracji zadania ustaw Full databank analysis na SelectBestByEntryGroupArgs
Ustaw swój Source databank (ten zawierający wszystkie strategie)
Ustaw swój Target databank (gdzie zostaną skopiowani zwycięzcy)
Upewnij się, że opcja Filter by results of custom analysis jest wyłączona
Opcjonalnie skonfiguruj pole Input args (patrz poniżej)
Uruchom projekt
Input args
Snippet przyjmuje trzy opcjonalne parametry oddzielone przecinkami: kryterium oceny, liczbę najlepszych strategii do wybrania z grupy (minimum 1, maksimum 10) oraz typ próbki używany do obliczeń.
RetDD — 1 najlepsza na grupę według wskaźnika Ret/DD, pełna próbka
RetDD,3 — 3 najlepsze na grupę według wskaźnika Ret/DD, pełna próbka
RetDD,3,IS — 3 najlepsze na grupę według wskaźnika Ret/DD, próbka In Sample
Sharpe,5,OOS — 5 najlepszych na grupę według wskaźnika Sharpe'a, próbka Out of Sample
Calmar,10,Full — 10 najlepszych na grupę według wskaźnika Calmara, pełna próbka
Dostępne kryteria:
RetDD — wskaźnik Ret/DD (domyślny)
Sharpe — wskaźnik Sharpe'a
ProfitFactor — Profit Factor
NetProfit — zysk netto (bezwzględny)
Calmar — wskaźnik Calmara
WinRate — odsetek zyskownych transakcji
Drawdown — najniższe obsunięcie kapitału (im niższe, tym lepsze)
Dostępne typy próbek:
Full — pełna próbka (domyślna, jeśli pominięto)
IS — próbka In Sample
OOS — próbka Out of Sample
Przykład
Jeśli Twój databank źródłowy zawiera 42 strategie podzielone na 17 różnych kombinacji wskaźników wejścia, a jako Input args ustawisz RetDD,2,OOS, po uruchomieniu snippetu Twój docelowy databank będzie zawierał do 34 strategii — po 2 najlepsze z każdej grupy według wskaźnika Ret/DD obliczonego na danych Out of Sample. Grupy z tylko jedną strategią wniosą tylko jedną.
Kod
Kod znajduje się w nagłówku artykułu.
Zastrzeżenie
Ten snippet jest udostępniany wyłącznie w celach edukacyjnych i badawczych. Nie stanowi porady finansowej ani rekomendacji do handlu jakimkolwiek instrumentem finansowym. Wyniki historyczne dowolnej strategii wybranej przez to narzędzie nie są wyznacznikiem przyszłych rezultatów. Używasz na własne ryzyko. Zawsze weryfikuj wyniki niezależnie przed użyciem jakiejkolwiek strategii w handlu na żywo.
Dziękuję za śledzenie wpisu. Do zobaczenia w kolejnym wydaniu.
José Carlos