Backtest akcji, który pomija firmy wycofane z obrotu, może wykazywać wysokie stopy zwrotu, po cichu usuwając przy tym część najgorszych wyników. Problem często zaczyna się od praktycznego wyboru: pobieramy dzisiejszą listę symboli, a potem testujemy ją na danych z ostatniej dekady. Taka lista z założenia obejmuje tych, którzy przetrwali.
Uwzględnienie nieistniejących już firm w uniwersum badawczym wymaga czegoś więcej niż dodania kilku starych tickerów. Trzeba wiedzieć, które papiery wartościowe istniały i kiedy, kiedy pojawiły się na danym rynku lub z niego zniknęły oraz co stało się z ich wartością na końcu. Trzy częste uproszczenia gubią tę historię na różne sposoby.
Błąd 1: Stosowanie dzisiejszego składu indeksu w każdym roku
Wyobraź sobie, że testujesz miesięczną strategię momentum na obecnych spółkach z indeksu S&P 500, zaczynając od 2010 roku. Firmy, które upadły, połączyły się z innymi lub wypadły z indeksu, są pomijane przy każdym rebalansowaniu. Strategia nigdy nie ma okazji kupić przyszłego przegranego, a jej historyczne uniwersum zachowuje spółki, które ostatecznie okazały się na tyle skuteczne, by pozostać w indeksie.
Efektem jest zwykle zawyżona średnia stopa zwrotu, łagodniejszy drawdown i strategia, która zdaje się preferować proste czynniki, takie jak momentum czy jakość. Te sygnały mogą być prawdziwe. Test zapewnił im też cichą przewagę: wiedzę o tym, kto przetrwał.
Korzystaj ze składu indeksu w ujęciu punktowym. Przy każdym rebalansowaniu zbiór kwalifikujących się papierów powinien obejmować te, które spełniały zasady na podstawie informacji dostępnych w danym momencie. Skład musi mieć przypisane daty obowiązywania, w tym zmiany między zaplanowanymi przeglądami indeksu, jeśli strategia handluje szerszym uniwersum.
Błąd 2: Traktowanie brakującego symbolu jako braku danych
Łatwo pominąć ticker, którego nie ma w aktualnym pliku dostawcy danych. Moduł wczytujący nie widzi ostatnich wierszy, oznacza symbol jako nieaktualny i go odrzuca. Kod może zapisać ostrzeżenie w logu, ale backtest działa dalej na bardziej uporządkowanym zbiorze danych, bez informacji o wykluczonych papierach.
Niektóre papiery znikają w wyniku fuzji lub przejęcia. Inne są wycofywane z obrotu po problemach finansowych, bankructwie albo niespełnieniu wymogów giełdy. Ich ostatnia zwykła cena zamknięcia nie musi odpowiadać wartości, którą otrzymał inwestor. Jeśli akcje spółki w trudnej sytuacji przestają być notowane po $0.40, a później zostają anulowane, pozostawienie pozycji ze znakiem wyceny na poziomie $0.40 może sprawić, że bezwartościowy składnik będzie na zawsze widniał w portfelu. Usunięcie go może całkowicie wymazać stratę.
Prowadź bazę papierów wartościowych z datami wejścia na giełdę i wycofania z obrotu, kodami przyczyn oraz informacją o podmiocie następczym lub wypłacie gotówkowej, jeśli ma to zastosowanie. Zdarzenie wycofania z obrotu powinno zamknąć pozycję lub przekształcić ją zgodnie z tym, co faktycznie otrzymał posiadacz. Szczegóły zależą od zdarzenia i instrumentu; jedna ogólna zasada „ostatniej ceny” nie odda ich wszystkich.
| Zdarzenie | Co może otrzymać posiadacz | Sposób ujęcia w backteście do sprawdzenia |
|---|---|---|
| Przejęcie za gotówkę | Gotówka zgodnie z warunkami transakcji | Zaksięguj wpływy gotówkowe w dniu wejścia transakcji w życie |
| Fuzja z wymianą akcji | Akcje spółki będącej następcą | Zastosuj parytet wymiany i kontynuuj pozycję w papierze wartościowym spółki będącej następcą |
| Anulowanie akcji w wyniku bankructwa | Niewielka wartość odzyskiwalna lub jej brak | Rozlicz pozycję na podstawie właściwego zapisu o podziale majątku lub anulowaniu akcji |
Błąd 3: Aktualizacja uniwersum bez uwzględnienia mechaniki stóp zwrotu
Dodanie historycznych składów indeksu rozwiązuje tylko problem selekcji. Jeśli szereg stóp zwrotu kończy się na ostatniej zwykłej cenie zamknięcia, nadal może pomijać stopę zwrotu związaną z wycofaniem z obrotu. Jeśli dodasz taką stopę zwrotu do szeregu cenowego, który już uwzględnia zdarzenie końcowe, możesz policzyć stratę dwukrotnie. Dostawcy stosują różne konwencje, a sama nazwa pola może nie wystarczyć, by ustalić, którą z nich wykorzystuje plik.
Załóżmy, że cena akcji spada z $10 do $1, a następnie akcje zostają wycofane z obrotu przy podanej końcowej stopie zwrotu wynoszącej −80%. Jeśli najpierw obliczysz stratę cenową na poziomie 90%, a potem przemnożysz ją przez osobną stopę zwrotu z wycofania z obrotu wynoszącą −80%, otrzymasz nieprawdopodobną łączną stratę 98%. Błąd polega na połączeniu dwóch miar opisujących nakładające się fragmenty tej samej ścieżki.
Zanim obliczysz stopy zwrotu portfela, udokumentuj, czy zwykłe stopy zwrotu uwzględniają wypłaty i skutki wycofania z obrotu oraz jaki okres obejmuje każda z nich. Prześledź kilka znanych działań korporacyjnych od surowych obserwacji do końcowej wartości portfela. Uwzględnij pozycje utrzymywane podczas zdarzenia; wykres na poziomie papieru wartościowego może wyglądać wiarygodnie, choć rejestr portfela przypisał wpływy do niewłaściwego dnia.
Gdy symbol znika, potraktuj to jako zdarzenie wymagające wyjaśnienia. Nie zakładaj, że firma przestała mieć znaczenie tylko dlatego, że plik danych przestał ją raportować.
Jak sprawdzić backtest uwzględniający wycofania z obrotu?
Zanim porównasz wskaźniki Sharpe, sprawdź liczebność i zakres danych. Dla każdego roku podaj, ile papierów kwalifikowało się do strategii, ile wycofano z obrotu i ile wykluczono z powodu nierozstrzygniętych braków danych. Następnie sprawdź próbkę wyjść z różnych przyczyn i prześledź każdą pozycję aż do jej końcowej wartości w portfelu.
Uruchom tę samą strategię z uwzględnieniem wycofanych z obrotu papierów i bez nich, ale traktuj różnicę jako diagnostykę jakości danych, a nie jako samodzielną skorygowaną ocenę wyników. Zasady tworzenia uniwersum, konwencje obliczania stóp zwrotu i momenty zdarzeń muszą odpowiadać badanemu pytaniu. Wiarygodny wynik daje rejestr, który wyjaśnia każdą pozycję otwartą w portfelu, każde działanie korporacyjne, przez które przeszła, oraz wartość, którą po sobie zostawiła.
← Wszystkie wpisy


