METODOLOGIA
Tworzenie strategii inwestycyjnej to złożony i wieloetapowy proces wymagający odpowiedniego podejścia. Osobiście korzystam z ośmioetapowej metodyki, podzielonej na dwa odrębne „bloki”. Pierwszy blok koncentruje się na opracowaniu i testowaniu strategii, natomiast drugi na jej praktycznym zastosowaniu.
Model ten został opracowany na podstawie doświadczeń wielu praktyków rynkowych, a także mojego własnego doświadczenia w tworzeniu i testowaniu strategii inwestycyjnych. Choć nie istnieje jedno uniwersalne rozwiązanie, poniższe kroki są powszechnie stosowane w różnym stopniu przez specjalistów z branży.
Blok 1: Tworzenie strategii inwestycyjnej
Pierwszy blok obejmuje pięć kluczowych etapów:
-
Sformułowanie strategii inwestycyjnej – określenie podstawowych założeń i celów strategii.
-
Określenie zasad inwestycyjnych – opracowanie ostatecznych, obiektywnych i testowalnych komputerowo reguł inwestycyjnych.
-
Przeprowadzenie wstępnego testu strategii inwestycyjnej – wstępna ocena skuteczności strategii inwestycyjnej na danych historycznych.
-
Optymalizacja strategii inwestycyjnej – dostosowanie parametrów w celu maksymalizacji funkcji celu (zwrotu skorygowanego o ryzyko).
-
Ocena stabilności strategii inwestycyjnej – ocena zdolności strategii do generowania zysków w czasie rzeczywistym.
Jeśli strategia pomyślnie przejdzie wszystkie pięć etapów, a wyniki testów wskazują na jej potencjalną skuteczność w realnym tradingu, następuje przejście do drugiego bloku.
Blok 2: Wykorzystanie strategii w praktyce
Drugi blok obejmuje trzy kolejne kroki:
-
Wykorzystanie strategii w czasie rzeczywistym – wdrożenie strategii do portfela strategii inwestycyjnych.
-
Monitorowanie wyników – porównanie wyników rzeczywistych z wynikami symulacji historycznej i ich analiza.
-
Udoskonalanie strategii inwestycyjnej – ciągłe dostosowywanie i ulepszanie strategii na podstawie uzyskanych wyników.
Każdy z tych ośmiu etapów jest ściśle powiązany z sukcesem poprzedniego kroku, a cały proces opiera się na ciągłym sprzężeniu zwrotnym. Informacje uzyskane na późniejszych etapach są wykorzystywane do udoskonalania wcześniejszych kroków, co czyni ten model wyjątkowo elastycznym i efektywnym.
Dzięki takiemu podejściu strategia ewoluuje w sposób ciągły, prowadząc do jej doskonalenia i ulepszania. Może to także skutkować opracowaniem zupełnie nowych strategii, wynikających z obserwacji i analizy działania pierwotnego modelu.
Poniżej omówiono po krótce każdy z kroków.
Krok 1: Sformułowanie strategii inwestycyjnej
Każda strategia inwestycyjna zaczyna się od pomysłu. Kluczowe zasady, na których opiera się strategia, muszą być jasno i precyzyjnie zdefiniowane. Opis strategii powinien zawierać również uzasadnienie, dlaczego uważamy, że będzie ona miała dodatnią wartość oczekiwaną (tzw. edge) i będzie skuteczna w praktyce. Dzięki temu zbudujemy w sobie przekonanie o zasadności strategii, co jest niezwykle istotne w obliczu trudniejszych momentów rynkowych.
Przykładowo, w przypadku strategii typu trend-following, uzasadnienie może brzmieć: „Uważam, że metoda trend-following jest skuteczna w długim terminie, ponieważ rynki mają naturalną tendencję do poruszania się w trendach, a inwestorzy często zamykają zyskowne pozycje zbyt wcześnie, co pozwala na przedłużenie ruchów trendowych”. Im silniej przemawiają do nas te argumenty, tym większe będzie nasze przekonanie o słuszności podejścia inwestycyjnego.
Strategia inwestycyjna może być zarówno prosta, jak i bardziej złożona, jednak powinna dążyć do minimalizacji liczby parametrów wymagających optymalizacji (więcej o ryzyku over-fittingu, związanego z optymalizacją znajduje się w dokumencie „Over-fitting i optymalizacja”). Najlepiej, jeśli liczba takich parametrów nie przekracza pięciu. Dodatkowo strategia powinna być łatwa do zrozumienia i komunikacji.
Ostatecznie strategia inwestycyjna musi zostać sprowadzona do zestawu precyzyjnych zasad i formuł. Taka struktura pozwala na jednoznaczną implementację strategii oraz jej obiektywną weryfikację.
Krok 2: Określenie zasad inwestycyjnych
Aby strategia mogła zostać przetestowana, konieczne jest jej przekształcenie w format zrozumiały dla wybranej platformy testowej. W naszym przypadku jest to platforma Trading Blox, która wykorzystuje język programowania zorientowany obiektowo. Niedokładne odwzorowanie pomysłu inwestycyjnego w formie skryptu prowadzi do nieprecyzyjnych symulacji historycznych, co w efekcie może zniekształcić ocenę wydajności strategii. Bez poprawnie napisanej skryptowej wersji strategii inwestycyjnej zarówno symulacja historyczna, jak i analiza wyników stają się niemożliwe.
Dobrym rozwiązaniem na tym etapie jest stworzenie tzw. pseudokodu – czyli opisanie krok po kroku działań, jakie ma wykonywać kod strategii. Pseudokod pomaga zachować klarowność założeń oraz ułatwia ich implementację.
Przykład pseudokodu dla strategii z dwiema średnimi kroczącymi:
-
Oblicz wartość szybkiej średniej kroczącej;
-
Oblicz wartość wolnej średniej kroczącej;
-
Zajmij długą pozycję, jeśli wczoraj szybka średnia krocząca znajdowała się poniżej wolnej średniej kroczącej, a dzisiaj znajduje się powyżej;
-
Pozostań w długiej pozycji, dopóki nie pojawi się sygnał sprzedaży;
-
Zajmij krótką pozycję, jeśli wczoraj szybka średnia krocząca znajdowała się powyżej wolnej średniej kroczącej, a dzisiaj znajduje się poniżej;
-
Pozostań w krótkiej pozycji, dopóki nie pojawi się sygnał kupna.
Dzięki zastosowaniu pseudokodu proces implementacji strategii w wybranej platformie jest znacznie bardziej efektywny, a ryzyko popełnienia błędów interpretacyjnych zostaje zminimalizowane.
Krok 3: Przeprowadzenie wstępnego testu strategii inwestycyjnej
Po ukończeniu kroku 2, czyli zdefiniowaniu zasad inwestycyjnych i zapisaniu ich w formie skryptów, kolejnym etapem jest ich weryfikacja. W praktyce oznacza to potwierdzenie, że kod działa poprawnie, zgodnie z zamierzeniami, i jest spójny z założeniami strategii inwestycyjnej.
Na tym etapie należy osiągnąć trzy kluczowe cele:
-
Weryfikacja poprawności wszystkich formuł i reguł w skrypcie.
-
Ustalenie, czy formuły, reguły i ich kombinacje zachowują się zgodnie z oczekiwaniami.
-
Potwierdzenie, że strategia inwestycyjna spełnia teoretyczne oczekiwania.
Aby odpowiedzieć na dwa pierwsze pytania, należy wygenerować zestaw historycznych transakcji i przeanalizować je, odpowiadając na cztery podstawowe pytania:
-
Czy formuły są prawidłowe? Weryfikujemy, czy wskaźniki, które wymagały ręcznego stworzenia, są obliczane poprawnie. W przypadku wskaźników dostarczanych wraz z platformą testową, możemy pominąć ten krok, pod warunkiem, że rozumiemy, jak są one kalkulowane.
-
Czy zasady transakcyjne są prawidłowe? Sprawdzamy, czy reguły transakcyjne działają zgodnie z oczekiwaniami (np. przecięcie średnich kroczących generuje sygnały kupna/sprzedaży).
-
Czy transakcje są prawidłowe? Oceniamy, czy system otwiera transakcje we właściwym kierunku, po odpowiedniej cenie i w odpowiednim momencie.
-
Czy transakcje są zgodne z teoretycznymi założeniami strategii? Analizujemy, czy generowane transakcje odzwierciedlają oczekiwane zachowanie strategii. Na przykład w przypadku strategii trend-following oczekujemy, że transakcje będą dokonywane zgodnie z kierunkiem długoterminowego trendu.
Do oceny powyższych aspektów pomocne są graficzne prezentacje wykresów instrumentów finansowych, z zaznaczonymi miejscami otwarcia i zamknięcia pozycji oraz wartościami odpowiednich wskaźników. Przegląd kilku transakcji pozwoli odpowiedzieć na postawione pytania.
Aby odpowiedzieć na trzecie pytanie, tj. „czy strategia działa zgodnie z teoretycznymi oczekiwaniami?”, wykonujemy pierwszy test strategii na danych in-sample. Mimo że może się wydawać nietypowe testowanie strategii przed optymalizacją parametrów, już na wstępie powinniśmy mieć orientacyjne parametry strategii, które naszym zdaniem powinny generować dodatnie wyniki.
Na tym etapie przede wszystkim odrzucamy strategie, które generują systematyczne straty. Jeśli strategia liniowo traci kapitał, jest to wyraźny sygnał, że dalsza optymalizacja parametrów jest nieuzasadniona. Oczekujemy, że strategia będzie generować dodatnie wyniki, choćby na niskim poziomie. Jeśli tak się dzieje, można uznać, że strategia działa zgodnie z założeniami teoretycznymi.
Jeżeli uznamy, że system działa prawidłowo, możemy przejść do kolejnego etapu. W przeciwnym razie, jeśli wyniki są niezadowalające lub strategia radykalnie odbiega od teoretycznych założeń, może być konieczne powtórne sformułowanie strategii inwestycyjnej (krok 1) oraz zasad inwestycyjnych (krok 2).
Na tym etapie, gdy przeprowadzamy już pierwsze testy strategii, konieczne jest określenie wielu elementów testów, które, choć nie są bezpośrednio związane ze strategiami, mają znaczący wpływ na wyniki końcowe. Do takich elementów należą między innymi: zakres instrumentów finansowych, okresy czasu dla testów in-sample oraz out-of-sample, źródło historycznych danych cenowych czy koszty transakcyjne.
Wszystkie te elementy zostały szczegółowo opisane w dokumencie „Specyfikacja Testów”, który stanowi kluczowy punkt odniesienia w procesie testowania strategii.
Krok 4: Optymalizacja strategii inwestycyjnej
Ten etap procesu tworzenia strategii inwestycyjnej jest jednym z najbardziej czasochłonnych, ponieważ obejmuje dwa kluczowe elementy: optymalizację parametrów (na danych in-sample) oraz testowanie tej optymalizacji (na danych out-of-sample). Optymalizacja, której dwie główne metody przedstawiono poniżej, ma na celu odpowiedź na pytanie, dla jakiego zakresu parametrów uzyskujemy najwyższą wartość funkcji celu oraz czy zakres ten jest stabilny (robust – omówiony poniżej). Testowanie natomiast pozwala ocenić, czy zoptymalizowane parametry generują satysfakcjonującą funkcję celu na danych out-of-sample.
W dalszej części kroku 4 skupimy się na dwóch kluczowych aspektach optymalizacji strategii: metodach optymalizacji oraz stabilności (robustness). Oba te elementy odgrywają fundamentalną rolę, niezależnie od tego, czy pracujemy z gotowym pomysłem inwestycyjnym, czy tworzymy strategię od podstaw.
Optymalizacja strategii inwestycyjnej
Optymalizacja strategii polega na znalezieniu takiego zakresu parametrów, który zapewni trwałą (robust) i możliwie najwyższą stopę zwrotu skorygowaną o ryzyko. Oznacza to, że zależy nam nie tylko na optymalnych wartościach parametrów, ale również na tym, aby niewielkie zmiany w tych parametrach nie prowadziły do istotnych zmian w wynikach strategii.
W naszym procesie optymalizacji wykorzystujemy dwie główne metody:
-
The Prioritized Step Search – Ta metoda polega na optymalizacji parametrów jednej zmiennej (lub dwóch powiązanych zmiennych), przy założeniu stałych wartości pozostałych zmiennych. Następnie przechodzimy do kolejnej zmiennej w celu jej optymalizacji. Metoda ta jest szczególnie użyteczna, gdy w procesie testowania i optymalizacji dodajemy nowe elementy do strategii (proces ten został opisany w dokumencie "Tworzenie strategii inwestycyjnej od podstaw").
-
The Grid Search – Metoda polega na pełnej optymalizacji wszystkich wskazanych parametrów poprzez stworzenie szerokiego zakresu możliwych ich kombinacji. Jest szczególnie skuteczna w przypadku prostych strategii, gdzie od początku znamy wszystkie jej elementy (np. korzystając z pomysłów innych osób) i szukamy jedynie optymalnych wartości parametrów dla wybranych warunków rynkowych.
Niezależnie od wybranej metody, nadrzędnym celem optymalizacji strategii jest znalezienie stabilnego zakresu parametrów. Oznacza to, że wartość funkcji celu strategii (np. MAR) powinna pozostawać względnie stabilna przy niewielkich zmianach parametrów w zoptymalizowanym zakresie. Stabilność strategii jest kluczowym czynnikiem, który zapewnia jej odporność na zmienne warunki rynkowe oraz minimalizuje ryzyko nadmiernego dopasowania do danych historycznych (overfittingu).
Poniżej przedstawiono przykład niestabilnej optymalizacji (tzw. Spiky Space) dla strategii wykorzystującej dwie średnie kroczące. W procesie optymalizacji staramy się znaleźć takie długości obu średnich kroczących, które maksymalizują wartość wskaźnika MAR (CAGR%/Max Drawdown), będącego funkcją celu.
W przypadku strategii niestabilnych zauważalne są pojedyncze „szczyty” – obszary z wysokimi wartościami MAR otoczone znacznie niższymi wynikami. Tego rodzaju układ wskazuje na niestabilność strategii, ponieważ nawet niewielkie zmiany w długościach średnich kroczących mogą prowadzić do istotnych różnic w wynikach. Strategia o takiej charakterystyce jest trudniejsza do utrzymania w zmieniających się warunkach rynkowych, co podważa jej przydatność w praktyce.


Poniżej przedstawiono przykład strategii wybicia z kanału Donchiana, którą optymalizujemy pod kątem liczby dni wybicia dla otwarcia i zamknięcia pozycji. Funkcją celu, podobnie jak wcześniej, jest wskaźnik MAR (CAGR%/Max Drawdown).
W przypadku tej strategii wartości MAR pozostają stabilne w szerokim zakresie kombinacji parametrów, co oznacza brak tzw. Spiky Space. Taka charakterystyka wskazuje na większą stabilność strategii. Zaznaczone obszary, odpowiadające globalnym maksimum funkcji celu, wyznaczają najbardziej stabilne i potencjalnie najskuteczniejsze kombinacje parametrów.
Strategia o takiej stabilności jest bardziej odpowiednia do zastosowania w realnym tradingu, ponieważ niewielkie zmiany warunków rynkowych nie powinny istotnie wpłynąć na jej wyniki ani zachowanie.


Stabilność strategii inwestycyjnej
Jak już wcześniej wspomniano, stabilność strategii (robustness) jest kluczowym elementem w procesie jej tworzenia. Termin „robustness” oznacza „zdolność do wytrzymywania i pokonywania niekorzystnych warunków”, co doskonale odnosi się do strategii inwestycyjnej. Stabilna strategia to taka, która z dużym prawdopodobieństwem będzie generować zyski, nawet w zmiennych i trudnych warunkach rynkowych, co zapewnia jej trwałość i długowieczność.
Cztery główne cechy stabilnej strategii inwestycyjnej:
-
Zyskowność w szerokim zakresie optymalizowanych parametrów.
-
Zyskowność na szerokim koszyku instrumentów finansowych.
-
Zyskowność w różnych warunkach rynkowych.
-
Zyskowność zarówno na transakcjach długich, jak i krótkich.
Naszym celem jest stworzenie strategii maksymalnie stabilnej, a nie wyłącznie maksymalnie zyskownej – te dwa elementy nie zawsze idą w parze. Stabilna strategia to nasza najlepsza gwarancja osiągnięcia pozytywnych wyników w nieprzewidywalnym świecie tradingu. Jak zauważył Larry Hite: „Nie szukamy optymalnej strategii; szukamy najodporniejszej strategii”.
Testowanie stabilności parametrów
Testowanie stabilności parametrów odbywa się zarówno na danych in-sample, jak również na danych out-of-sample. Naszym celem jest posiadanie stabilnej strategii niezależnie od tego, które dane zostaną wykorzystane.
W pierwszym kroku testujemy stabilność parametrów na danych IS. Stosując metodę "The Prioritized Step Search" lub "The Grid Search" wyznaczamy zakresy wartości dla wszystkich optymalizowanych parametrów. Zakresy powinny być odpowiednio szerokie, aby można było wiarygodnie zweryfikować stabilność strategii.
W jaki sposób wyznaczyć taki obszar? Osobiście zaczynam od heatmapy i wyznaczam zakresy, gdzie funkcja celu MAR jest najbardziej stabilna i ma najwyższe wartości. Zakresy ustalam w ten sposób, aby iloraz najwyższej i najniższej wartości zakresu wynosił co najmniej 150%. To znaczy, jeżeli wyznaczam górny zakres wartości dla średniej kroczącej na poziomie 150 dni, to dolny zakres tej średniej kroczącej ustalam na poziomie 100 dni, aby ich iloraz wyniósł 150%. Zatem będę testował stabilność tej średniej na zakresie 100-150 dni. Analogicznie robię dla wszystkich parametrów, otrzymując finalnie szerokie zakresy wartości dla wszystkich optymalizowanych w danym momencie parametrów.
Mając określone wszystkie zakresy parametrów, dokonuję na danych IS pełnej analizy wszystkich możliwych kombinacji parametrów. Kluczowym kryterium oceny jest, aby wszystkie wyniki testów wykazywały dodatnią wartość wskaźnika MAR, a maksymalny drawdown nie przekraczał 250% wartości drawdown dla wyniku z najwyższym MAR. Jeśli którykolwiek test generuje ujemną wartość MAR lub jeśli drawdown przekracza 250% wartości drawdown dla wyniku z najwyższym MAR, strategia (bądź testowany element, w przypadku stosowania metody The Prioritized Step Search) zostaje całkowicie odrzucona. Taki wynik wskazuje na brak stabilności parametrów, co świadczy o niskiej odporności strategii i jej niewystarczającej przydatności w zmieniających się warunkach rynkowych.
Gdy strategia zaliczy test stabilności na danych IS, przechodzimy do testowania tych zakresów na danych OOS. Ponownie kluczowym kryterium oceny jest, aby wszystkie wyniki testów wykazywały dodatnią wartość wskaźnika MAR. Ponadto, pomimo iż wyniki na danych out-of-sample (OOS) są często słabsze niż na danych in-sample (IS), kluczowe jest ustalenie wyraźnej granicy, przy której strategia powinna zostać odrzucona z powodu istotnego pogorszenia się wartości funkcji celu. W naszym przypadku taką granicą jest spadek wartości MAR o więcej niż 50% względem wyników testów in-sample (porównujemy najwyższe MAR osiągnięte na danych IS oraz OOS). Jeśli strategia wykazuje tak znaczną degradację wyników na danych OOS, oznacza to, że nie jest wystarczająco stabilna (robust) i nie nadaje się do realnego zastosowania.
Tak dokonana wstępna ocena stabilności parametrów pozwala nam przejść do kolejnego kroku, gdzie strategia zostanie poddana kolejnej serii testów stabilności, z testem Walk-Forward Analysis będącym finalnym sprawdzianem dla strategii. Ostatecznym celem jest stworzenie nie tylko strategii, która osiąga wysokie wyniki historyczne, lecz przede wszystkim takiej, która posiada realną przewagę rynkową i może skutecznie funkcjonować w przyszłości.
Krok 5: Ocena stabilności strategii inwestycyjnej
Ocena stabilności strategii inwestycyjnej to kluczowy etap w procesie jej tworzenia. Na tym etapie analizujemy, czy wyniki strategii, w szczególności historyczne stopy zwrotu, są wynikiem solidnej (robust) konstrukcji, która pozwala na generowanie zysków w realnych warunkach rynkowych.
Stabilność strategii można ocenić za pomocą różnych metod, takich jak:
-
testowanie strategii na różnych skalach czasowych,
-
testowanie na ruchomym oknie czasowym,
-
symulacja Monte Carlo,
-
test long/short bias,
-
Walk-Forward Analysis.
Spośród wymienionych metod, analiza Walk-Forward Analysis jest uważana za najbardziej wiarygodną w ocenie stabilności strategii, ponieważ najlepiej odzwierciedla zmieniające się warunki rynkowe i pozwala na bardziej precyzyjną weryfikację jej odporności.
Testowanie strategii na różnych skalach czasowych
Jeśli zoptymalizowaliśmy parametry strategii w skali dziennej, kolejnym krokiem jest przetestowanie jej w szerszych skalach czasowych, takich jak tygodniowa i ewentualnie miesięczna, przy użyciu parametrów zoptymalizowanych historycznie w skali dziennej. Test ten pozwala ocenić, czy strategia jest odporna (robust) na zmiany skali czasowej.
Ważne jest, aby strategia w szerszej skali czasowej wygenerowała wystarczającą liczbę transakcji, co umożliwi rzetelną ocenę jej efektywności. Dopiero na tej podstawie można wyciągać wnioski dotyczące jej przydatności. Oczekujemy, że strategia wygeneruje dodatnią wartość wskaźnika MAR na połączonych danych in-sample i out-of-sample.
Testowanie na ruchomym oknie czasowym
Testowanie na ruchomym oknie polega na ocenie rocznej i trzyletniej stopy zwrotu w oknach czasowych przesuwanych co jeden rok (dla danych in-sample i out-of-sample łącznie). Proces ten obejmuje zastosowanie optymalnych parametrów strategii, ustawienie rocznego lub trzyletniego okna transakcji oraz przesuwanie go o jeden rok.
Następnie analizujemy, jaka część tych rocznych i trzyletnich okresów wykazała dodatnie stopy zwrotu. Strategia uznawana za stabilną (robust) powinna osiągać zyskowne wyniki w co najmniej 70% rocznych i trzyletnich okresów.
Symulacja Monte Carlo
Symulacja Monte Carlo polega na przeprowadzeniu licznych symulacji w celu zbadania, jak strategia może funkcjonować w różnych scenariuszach rynkowych. Kluczowym celem tej metody jest ocena potencjalnego drawdown zoptymalizowanej strategii. Symulacja Monte Carlo lepiej oddaje możliwe zmiany krzywej kapitału i głębokość potencjalnego drawdown, dzięki czemu pozwala na bardziej realistyczną ocenę ryzyka.
Warto przeprowadzić symulację zarówno ze zwracaniem, jak i bez zwracania, aby lepiej zrozumieć, czy jesteśmy w stanie przetrwać takie spadki zarówno psychicznie, jak i finansowo. Jest to również idealna okazja, aby porównać drawdown uzyskany w testach zoptymalizowanych z wynikami symulacji Monte Carlo, wykorzystując 95% przedział ufności.
Strategia uznawana za stabilną (robust) powinna w symulacji Monte Carlo osiągać drawdown, który nie przekracza 200% wielkości drawdown z testów in-sample.
Test long/short bias
W przypadku wielu instrumentów rynki mają naturalną tendencję do poruszania się w kierunku wzrostowym (tzw. Long Bias), co sprawia, że inwestowanie w scenariusze wzrostowe jest często łatwiejsze niż granie na spadki. Optymalizowanie strategii pod scenariusz wzrostowy, wynikający zwykle z danych używanych do optymalizacji, może prowadzić do problemów w sytuacji, gdy rynki wejdą w długoterminowe trendy spadkowe. W takich warunkach strategia może generować znaczne straty.
Aby sprawdzić, czy strategia nie wykazuje skłonności do Long Bias lub, rzadziej, Short Bias, należy zweryfikować rozkład historycznych transakcji na kupno i sprzedaż. W idealnych warunkach rozkład ten powinien wynosić około 50%/50%. Jeśli jednak jedna strona jest znacząco preferowana (np. 70%/30%), strategia może być niestabilna w realnym środowisku rynkowym.
Strategia uznawana za stabilną (robust) powinna wykazywać maksymalnie 60% skłonności (bias) w jednym kierunku.
Walk-Forward Analysis
Analiza Walk-Forward (WFA) służy do oceny zdolności strategii do działania w rzeczywistych warunkach rynkowych oraz dostarcza wiarygodnych miar zysku i ryzyka po procesie optymalizacji. Dodatkowo pozwala odpowiedzieć na kluczowe pytania:
-
Jakiej stopy zwrotu można oczekiwać od strategii? Wynik optymalizacji często przedstawia zawyżoną stopę zwrotu, co prowadzi do nierealistycznych oczekiwań. WFA dostarcza bardziej wiarygodnych miar zwrotu.
-
Jaki zestaw parametrów zastosować w kolejnym okresie? Dzięki WFA możliwe jest dostosowanie parametrów strategii do ostatnich zmian na rynku.
Walk-Forward Analysis polega na testowaniu strategii inwestycyjnej na wielu okresach czasowych, co pozwala zminimalizować ryzyko overfittingu (nadmiernego dopasowania strategii do danych historycznych). Proces WFA składa się z dwóch powtarzanych kroków:
-
Optymalizacja: Strategia jest optymalizowana na okresie treningowym (in-sample), w którym parametry dostosowuje się w celu uzyskania najlepszych wyników.
-
Testowanie: Strategia, z parametrami zoptymalizowanymi w poprzednim kroku, jest testowana na okresie testowym (out-of-sample), który nie był wykorzystany w trakcie optymalizacji.
Kluczowym elementem WFA jest miara Walk-Forward Efficiency (WFE), która pozwala ocenić, czy strategia może być skuteczna w rzeczywistych warunkach rynkowych. WFE porównuje stopę zwrotu osiągniętą w oknie in-sample (gdzie parametry były optymalizowane) ze stopą zwrotu w oknie out-of-sample. Analogicznie dla wartości drawdown. Strategia uznawana za stabilną (robust) powinna charakteryzować się WFE na poziomie co najmniej 50% dla stopy zwrotu oraz maksymalnie 150% dla drawdown.
WFA można przeprowadzić na dwa sposoby:
-
Poddając analizie wszystkie zoptymalizowane parametry w zakresie +/- 20%;
-
Poddając analizie kluczowe zoptymalizowane parametry w zakresie +/- 20% i pozostawiając drugorzędne parametry na poziomie zoptymalizowanym.
Pierwsze podejście jest preferowane, ponieważ umożliwia weryfikację wszystkich zoptymalizowanych parametrów. Jednak w przypadku strategii wykorzystujących „krótkie” parametry, takie jak wskaźnik RSI obliczany na podstawie dwóch świec, drugie podejście może okazać się bardziej praktyczne. Testowanie takiego parametru w minimalnym zakresie, np. jednej i trzech świec, może znacząco zmienić charakterystykę strategii. Warto jednak pamiętać o kluczowej zasadzie: tego typu parametru nie można optymalizować w testach. Oznacza to, że jeśli przyjmujemy wartość startową na poziomie dwóch świec, nie testujemy, czy strategia będzie działała lepiej na trzech lub czterech świecach. Jeżeli jednak dokonamy takiej optymalizacji, nie możemy pominąć tego parametru w analizie WFA, ponieważ został on dostosowany na podstawie danych historycznych, co wymaga uwzględnienia go w testach WFA.
Istotnym aspektem analizy WFA jest wybór długości okien in-sample i out-of-sample. Dobór ten powinien być optymalizowany w procesie WFA na podstawie wartości WFE, co pozwala na uzyskanie miarodajnych wyników i zapewnia lepsze odwzorowanie rzeczywistych warunków rynkowych.
Krok 6: Wykorzystanie strategii w czasie rzeczywistym
Po przeprowadzeniu wyczerpujących testów wdrożenie strategii inwestycyjnej w czasie rzeczywistym staje się stosunkowo proste. Sygnały kupna/sprzedaży oraz zlecenia stop-loss są generowane automatycznie przez komputer na podstawie wcześniej ustalonych formuł i zasad. Kluczowe jednak jest konsekwentne egzekwowanie wszystkich sygnałów bez wyjątków, co w praktyce może być trudniejsze, niż się wydaje. Jak zauważył Larry Williams: „Trading strategies work. Traders do not”.
Przed podjęciem ostatecznej decyzji o dodaniu strategii do portfela strategii inwestycyjnych, należy zweryfikować, czy wnosi ona rzeczywistą wartość dodaną do wyników całego portfela. Nie ma sensu wprowadzać strategii, która generuje podobne sygnały lub charakteryzuje się zbliżonym przebiegiem krzywej kapitału. Dlatego oceny dokonuje się na podstawie kilku kluczowych kryteriów:
-
Korelacja dziennych stóp zwrotu – im niższa korelacja z innymi strategiami, tym lepiej. Najlepsze wyniki uzyskuje się przy korelacji bliskiej zeru lub ujemnej.
-
Zmniejszenie maksymalnego drawdown – jeżeli dodanie strategii do portfela skutkuje obniżeniem maksymalnego drawdown, jest to bardzo dobry sygnał.
-
Poprawa funkcji celu – w tym przypadku miarą jest wskaźnik MAR. Poprawa MAR po dodaniu nowej strategii świadczy o jej wartości dodanej do portfela.
-
Lepsze wyniki w symulacji Monte Carlo – symulacja Monte Carlo, jak wspomniano wcześniej, służy do określenia potencjalnego maksymalnego drawdown. Jeżeli wyniki symulacji poprawiają się po dodaniu nowej strategii, jest to silny pozytywny sygnał.
Powyższe elementy często wzajemnie się zazębiają – zazwyczaj wszystkie są spełnione lub żaden.
Po decyzji o włączeniu strategii do portfela może pojawić się pytanie: kiedy rozpocząć jej wykorzystanie? Czy należy to zrobić od razu, czy może lepiej poczekać? Niektóre opracowania sugerują wprowadzenie okresu „inkubacji” trwającego 3-6 miesięcy. W tym czasie strategia jest monitorowana bez podejmowania realnych transakcji. Obserwuje się generowane sygnały, pozycje i wyniki w celu wychwycenia potencjalnych nieprawidłowości w jej działaniu.
W naszym przypadku okres inkubacji trwa od momentu uruchomienia strategii w środowisku live do wystąpienia drawdown wynoszącego około połowy maksymalnego drawdown zaobserwowanego na danych historycznych. Dopiero po osiągnięciu tego progu strategia zaczyna być stosowana z wykorzystaniem realnych środków. W ten sposób czekamy z inwestowaniem rzeczywistych pieniędzy, aż do wystąpienia pierwszego drawdown, który wynosi około połowy maksymalnego drawdown z danych historycznych.
Krok 7: Monitorowanie wyników
Inwestor powinien stale monitorować efektywność strategii w czasie rzeczywistym. Kluczowe jest porównywanie historycznych wskaźników i miar strategii, takich jak: procent zyskownych transakcji, średni zysk i strata pozycji, profit factor, MAR, Sharpe, R3 oraz inne wskaźniki wykorzystywane podczas optymalizacji strategii, z wynikami generowanymi na bieżąco. Dodatkowo należy analizować wskaźniki opisujące profil transakcyjny strategii – w Trading Blox są to m.in. „Trading Performance” i „Win/Loss Statistics”.
Prawidłowo zaprojektowana i przetestowana strategia powinna zachowywać się w rzeczywistych warunkach podobnie jak podczas testów. Jeśli jednak pojawiają się odchylenia, konieczne jest zrozumienie ich przyczyn. Ważnym ograniczeniem jest czas – przed wyciągnięciem jakichkolwiek wniosków należy odczekać kilka miesięcy, aby zgromadzić wystarczająco dużą próbę danych do analizy.
Niektórzy praktycy rynku sugerują, aby wprowadzać mechanizmy stop loss dla strategii, podobnie jak dla pojedynczych pozycji. Po osiągnięciu takiego progu strategia przestaje być stosowana. Przykładowymi stop loss mogą być:
-
określona wartość drawdown (np. wynikająca z symulacji Monte Carlo na poziomie 99%),
-
liczba stratnych transakcji z rzędu.
Obecnie nie stosujemy mechanizmów wyłączających strategię po osiągnięciu określonych progów, jednak jest to na tyle interesujący temat, że może zostać rozważony w przyszłości.
Krok 8: Udoskonalanie strategii inwestycyjnej
Ciągłe monitorowanie wyników strategii inwestycyjnej dostarcza cennych informacji na temat jej mocnych i słabych stron. Taka analiza, w połączeniu z obserwacjami zmieniających się warunków rynkowych, może być źródłem pomysłów na ulepszenie strategii. Każda wprowadzana poprawka powinna jednak zostać starannie przetestowana przed wdrożeniem w realnych transakcjach, aby uniknąć ryzyka nieprzewidzianych skutków.
Dodatkowo regularne przeprowadzanie analizy Walk-Forward (WFA) pozwala na dostosowanie parametrów strategii do zmian w zachowaniu rynku, co zwiększa jej skuteczność w dynamicznie zmieniającym się środowisku rynkowym.