Backtesting to zdecydowanie za mało – sprawdź swój automat
Decydując się na trading za pomocą automatycznych strategii, musimy mieć świadomość, że samo zaprojektowanie i zakodowanie warunków strategii to dopiero początek drogi. Kolejnym krokiem jest tzw. backtesting, czyli sprawdzenie poprawności działania na danych historycznych. Ale jeśli myślisz, że to ostatecznie da Ci realny obraz możliwości strategii, to jesteś w błędzie…
Jak działa backtesting
Sam backtesting to inaczej symulacja działania EA na danych historycznych. Pokazuje nam jak nasz automat zachowałby się przy danych parametrach na wybranym odcinku czasowym. O szczegółach będzie decydować środowisko na którym bazujemy, czyli tester strategii wbudowany w platformę lub zewnętrzne, osobne oprogramowanie. Bez wątpienia, najpopularniejszym jest Tester dostępny na platformie MetaTrader 4.
Jednym z kluczowych czynników przy backtestingu jest jakość danych wykorzystanych do przeprowadzenia symulacji. O tym jak wydłużyć historię kwotowań oraz skąd ją pobrać pisaliśmy w podlinkowanym artykule. Ale trzeba pamiętać, że nawet bardzo (względnie) wiarygodny test historyczny, który zakończył się pokaźnym zyskiem, to dla nas tylko komunikat mówiący o tym jak zachowałaby się strategia w przeszłości przy z góry wiadomych warunkach. Nie mówi nam jak automat będzie się spisywał w przyszłości w warunkach, które nie są znane. Zatem pytanie brzmi – co dalej?
Testowanie strategii
Warto wprowadzić sobie pewne kryteria i wymogi zwiększające wiarygodność wyników testu, które mogą mieć odzwierciedlenie w przyszłości. Wybranie jak najdłuższego przedziału czasowego z którego posiadamy kwotowania oraz wprowadzenie naszych „najlepszych” parametrów to niekoniecznie najlepsze rozwiązanie, choć na pewno dobry punkt wyjściowy.
Przeczytaj koniecznie: Jak poprawnie testować automaty
Testy z użyciem różnych parametrów strategii, które rzeczywiście możemy modyfikować w przyszłości używając EA, to coś obowiązkowego. Do tego celu możemy wykorzystać funkcję optymalizacji, czyli wykonanie testu dla różnych kombinacji ustawień.
Jednak przestrzegam przed nadmierną optymalizacją, czyli doskonałym dopasowaniem parametrów strategii do danych historycznych. To da nam bardzo optymistyczny wykres krzywej kapitału z backtestu. Jednak z całą pewnością nie powtórzy się to w realnym handlu.
Backtesting a mieszaj przedziały czasowe
Jak wspomniałem wcześniej, zaznaczenie największego przedziału i wykonanie testu to dobry wstęp. Ale warto wykonać kilka krótszych testów na przedziałach, które będą się na siebie nakładać, np.:
- Test 1 – styczeń – marzec
- Test 2 – luty – kwiecień
- Test 3 – 14 lutego – 30 czerwca
- Test 4 – czerwiec – lipiec
- Test 4 – styczeń – czerwiec
W ten sposób dowiadujemy się jak zachowałaby się nasza strategia, gdybyśmy np. mieli przerwę w handlu na Foreksie lub gdybyśmy wystartowali z nią o innej porze niż styczeń. Dzięki temu, w przypadku gdy nasza strategia np. zanotowała pokaźny zysk na początku roku na skutek „ostatniego tchu” panującego w styczniu trendu, wiemy co stałoby się, gdybyśmy zaczęli handel po nim.
Możemy także poeksperymentować z wykonywaniem testów przy użyciu różnych wartości spreadów. Możemy też sprawdzić jak zachowałby się grając tylko pozycje długie lub krótkie.
Im więcej sprawdzeń wykonamy z wykorzystaniem różnych, potencjalnie realnych warunków, tym większa szansa, że otrzymany wynik będzie bliski prawdy.
Analizuj zagrania
Po wykonaniu backtestera przeanalizuj dokładnie otrzymane dane. Sprawdź na wykresie czy pozycje były otwierane faktycznie zgodnie z założeniami EA. Zobacz w jakich miejscach były zawierane transakcje (co wtedy działo się z rynkiem). Postaraj się określić jaki wpływ na wynik mogłyby mieć ew. poślizgi cenowe oraz rozszerzenia spreadów przy ich realizacji.
Test wykonywany jest w neutralnych warunkach, gdzie nie mamy do czynienia ze zmiennymi spreadami, ograniczoną płynnością, a także nie uwzględniamy czasu realizacji zlecenia. Przy niektórych strategiach nie będzie miało to większego znaczenia (zazwyczaj trading długoterminowy). Jednak przy day-tradingu, news tradingu czy scalpingu właśnie te detale często okazują się decydujące.
Prawdę powie Ci…
Wszystkie powyższe wskazówki mogą jedynie przeważyć szalę na Twoją korzyść. Mogą też pokazać Ci wstępnie czego możesz się spodziewać stosując swój algorytm. To także minimalizacja ryzyka przed wejściem z automatem na prawdziwy rynek i zaliczenie szybkiej, dotkliwej straty.
I tutaj zawsze ostatnim, najbardziej pewnym weryfikatorem jest wykonanie tzw. forward testingu, czyli sprawdzenia EA na realnych warunkach. Mały depozyt i minimalny wolumen (mikro-, a nawet nano-loty) to coś, co da Ci ostateczny podgląd na potencjał automatu. Niestety, i to rozwiązanie ma poważną wadę – wymaga dużej cierpliwości…