Bezpośrednia odpowiedź: czym jest przykład zrealizowanego backtestu
Przykład zrealizowanego backtestu pokazuje krok po kroku, jak zastosować jasno zdefiniowaną regułę do danych historycznych, aby oszacować, co by się wydarzyło. „Backtesting” w tym kontekście oznacza symulowanie decyzji na podstawie wcześniejszych obserwacji, bez zakładania, że przyszłe wyniki będą zgodne z historią. „Praktyka” oznacza, że zapisujesz każde założenie, aby inna osoba mogła odtworzyć te same obliczenia i sprawdzić, skąd bierze się wynik.
Mechanizm i definicja: co robisz w backteście
Praktyka backtestingu zazwyczaj ma pięć wejść:
- Reguła decyzyjna: dokładnie kiedy wchodzisz/wychodzisz (lub jak obliczasz prognozę/ocenę).
- Zbiór danych: historyczna seria czasowa z konsekwentnymi znacznikami czasu.
- Model handlowy: jak realizują się zlecenia (np. z użyciem otwarcia następnej świecy) i jak obsługujesz spread.
- Model kosztów: prowizje, opłaty i założenia dotyczące spreadu.
- Metryka: co mierzysz (np. skumulowany zwrot, maksymalny spadek, skuteczność, albo średni zwrot na transakcję).
Stabilne mechanizmy: workflow (zdefiniuj regułę → wybierz okno danych → zasymuluj realizacje → policz metryki → udokumentuj) pozostaje takie samo. Zmienne warunki: reżim rynkowy, jakość danych, szczegóły realizacji i koszty mogą się zmieniać i mogą dominować nad wynikami.
Przykład zrealizowany (scenariusz liczbowy) z wyraźnymi założeniami
Załóżmy, że celem jest ocena prostej reguły do celów edukacyjnych. To nie jest rekomendacja i wykorzystuje uproszczenia „syntetyczne”, aby założenia były wyraźne.
Reguła („jeśli–wtedy”)
Dla każdego dnia utrzymujesz pozycję dokładnie przez 1 dzień. Pozycja jest albo „long” (ekspozycja), albo „flat” (brak ekspozycji). Reguła decyzyjna jest następująca:
- Jeśli zamknięcie poprzedniego dnia jest wyższe niż zamknięcie sprzed dwóch dni, zajmij ekspozycję long na następny dzień.
- W przeciwnym razie bądź flat na następny dzień.
Zbiór danych (obserwacje historyczne)
Użyj sześciu kolejnych dziennych obserwacji (Dzień 0 do Dzień 5). Załóżmy, że poniższe zamknięcia są „znanymi” cenami historycznymi do backtestingu:
- Zamknięcie Dzień 0: 100
- Zamknięcie Dzień 1: 102
- Zamknięcie Dzień 2: 101
- Zamknięcie Dzień 3: 103
- Zamknięcie Dzień 4: 104
- Zamknięcie Dzień 5: 102
Policzymy decyzje dla Dni 2–5, ponieważ reguła potrzebuje Dnia t-2.
Założenia dot. realizacji i kosztów
Te założenia określają zasymulowany zwrot.
- Cena wejścia: otwarcie następnego dnia jest równe temu zamknięciu tego dnia (uproszczenie). Usuwa to niepewność śród-dzienną.
- Cena wyjścia: zamknięcie kolejnego dnia jest równe zamknięciu następnego dnia (ponieważ okres utrzymania wynosi 1 dzień).
- Spread i prowizja: łączny koszt handlu jest stały i wynosi 0.1% wartości nominalnej każdego dnia, w którym jesteś long. Jeśli jesteś flat, koszt wynosi 0%.
- Brak ograniczeń dźwigni, brak odsetek od depozytu zabezpieczającego i brak poślizgu poza modelem kosztów.
Definicja metryki
Policz „net daily return” na wartości nominalnej:
- Jeśli long w dniu t: net return = (Close(t) / Close(t-1)) − 1 − 0.001
- Jeśli flat: net return = 0
Symulacja krok po kroku
Decyzje:
- Dla decyzji Dzień 2: porównaj zamknięcie Dzień 1 (102) z zamknięciem Dzień 0 (100). 102 > 100 → idź long w Dzień 2.
- Dla decyzji Dzień 3: porównaj zamknięcie Dzień 2 (101) z zamknięciem Dzień 1 (102). 101 > 102 jest fałszywe → flat w Dzień 3.
- Dla decyzji Dzień 4: porównaj zamknięcie Dzień 3 (103) z zamknięciem Dzień 2 (101). 103 > 101 → long w Dzień 4.
- Dla decyzji Dzień 5: porównaj zamknięcie Dzień 4 (104) z zamknięciem Dzień 3 (103). 104 > 103 → long w Dzień 5.
Policz net returns:
- Dzień 2 (long): Close(2)/Close(1) − 1 − 0.001 = 101/102 − 1 − 0.001 ≈ −0.0098039 − 0.001 = −0.0108039 (≈ −1.08%)
- Dzień 3 (flat): net = 0
- Dzień 4 (long): 104/101 − 1 − 0.001 = 0.0297029 − 0.001 ≈ 0.0287029 (≈ +2.87%)
- Dzień 5 (long): 102/104 − 1 − 0.001 = −0.0192308 − 0.001 ≈ −0.0202308 (≈ −2.02%)
Skumulowana prosta suma (ponieważ w tym przykładzie użyto małych liczb i ma on charakter ilustracyjny): łączny net return ≈ −1.08% + 0% + 2.87% − 2.02% ≈ −0.23% w ocenianym okresie.
Czego uczy ten przykład zrealizowany: wynik powstaje mechanicznie z Twojej reguły, Twoich danych oraz Twoich wyraźnych założeń dot. realizacji/kosztów.
Ograniczenia i tryby awarii (co może pójść nie tak)
- Nadmierne dopasowanie: jeśli reguła jest zbyt ściśle dopasowana do danych z przeszłości (wiele przełączników, wiele testów), może wyglądać dobrze historycznie, ale zawieść gdzie indziej. 2) Realizm realizacji: założenie idealnych wypełnień lub uproszczonej wyceny może wyolbrzymiać wyniki.
DOCUMENT END