Jak Przeprowadzi膰 Backtest Strategii Handlowej
Strona G艂贸wna
Artyku艂y
Jak Przeprowadzi膰 Backtest Strategii Handlowej

Jak Przeprowadzi膰 Backtest Strategii Handlowej

艢rednio zaawansowany
Opublikowane Dec 17, 2020Zaktualizowane Jun 21, 2023
7m

TL;DR

My艣lisz, 偶e masz 艣wietne pomys艂y dotycz膮ce rynku, ale nie wiesz, jak je przetestowa膰 bez ryzykowania swoich funduszy? Umiej臋tno艣膰 backtestowania pomys艂贸w handlowych to chleb powszedni dla dobrego systematycznego tradera.

Podstawowym za艂o偶eniem analizy historycznej jest to, 偶e to, co dzia艂a艂o w przesz艂o艣ci, mo偶e dzia艂a膰 w przysz艂o艣ci. Jak sobie z tym poradzi膰? Jak nale偶y oceni膰 wyniki? Przejd藕my przez prosty proces backtestingu.


Wprowadzenie

Backtesting jest jednym z kluczowych element贸w chartingu i w艂asnych strategii handlowych. Odbywa si臋 on poprzez rekonstrukcj臋 transakcji, kt贸re mia艂yby miejsce w przesz艂o艣ci w oparciu o dane historyczne. Wyniki analizy historycznej powinny da膰 og贸lne poj臋cie o tym, czy strategia inwestycyjna jest skuteczna, czy nie.

Zanim przejdziemy dalej, je艣li chcesz przetestowa膰 swoje w艂asne strategie, Binance Futures jest do tego doskona艂ym miejscem. Je艣li chcesz uzyska膰 dost臋p do danych historycznych z platformy, wype艂nij ten formularz zg艂oszeniowy.


Czym jest backtesting?

Po pierwsze, je艣li chcesz uzyska膰 wgl膮d w to, czym jest analiza historyczna, przeczytaj nasz artyku艂 Czym jest Backtesting?.聽

Kr贸tko m贸wi膮c, g艂贸wnym celem analizy historycznej jest pokazanie, czy Twoje pomys艂y handlowe s膮 dobre. Wykorzystujesz wcze艣niejsze dane rynkowe, aby zobaczy膰, jak poradzi艂aby sobie strategia. Je艣li strategia wygl膮da jakby mia艂a potencja艂, mo偶e by膰 r贸wnie偶 skuteczna w rzeczywistym 艣rodowisku handlowym.


Co zrobi膰 przed rozpocz臋ciem backtestingu

Zanim om贸wimy przyk艂ad analizy historycznej, nale偶y co艣 ustali膰. Musisz odkry膰, jakim jeste艣 traderem. Czy jeste艣 traderem uznaniowym czy systematycznym?

Handel uznaniowy jest oparty na decyzjach - traderzy kieruj膮 si臋 w艂asnym os膮dem, kiedy wej艣膰 i wyj艣膰. Jest to stosunkowo lu藕na i otwarta strategia, w kt贸rej wi臋kszo艣膰 decyzji zale偶y od oceny warunk贸w przez tradera. Jak mo偶na si臋 spodziewa膰, analiza historyczna jest mniej istotna, je艣li chodzi o handel uznaniowy, poniewa偶 strategia nie jest 艣ci艣le zdefiniowana.

To oczywi艣cie nie oznacza, 偶e je艣li jeste艣 traderem uznaniowym, nie powiniene艣 w og贸le przeprowadza膰 backtest贸w ani "handlowa膰 na papierze". Oznacza to po prostu, 偶e wyniki mog膮 nie by膰 tak wiarygodne, jak w przypadku tradera systematycznego.

Handel systematyczny jest bardziej odpowiedni dla naszego omawianego tematu. Systematyczni traderzy polegaj膮 na systemie handlowym, kt贸ry definiuje i m贸wi im dok艂adnie, kiedy wej艣膰 i wyj艣膰. Chocia偶 maj膮 pe艂n膮 kontrol臋 nad strategi膮, sygna艂y wej艣cia i wyj艣cia s膮 okre艣lane przez strategi臋. Wyobra藕 sobie prost膮 strategi臋 systematyczn膮 jako:

  • Kiedy A i B zdarz膮 si臋 w tym samym czasie, wejd藕 w transakcj臋.
  • Kiedy wydarzy si臋 X, wyjd藕 z transakcji.

Niekt贸rzy traderzy wol膮 to podej艣cie. Pozwala ono w pewnym stopniu wyeliminowa膰 emocjonalne decyzje z handlu i zapewni膰 rozs膮dny stopie艅 pewno艣ci, 偶e system handlowy jest op艂acalny. Oczywi艣cie nadal nie ma 偶adnej gwarancji.

Dlatego wa偶ne jest, aby upewni膰 si臋, 偶e w systemie obowi膮zuj膮 bardzo szczeg贸艂owe zasady dotycz膮ce wchodzenia i wychodzenia z pozycji. Je艣li strategia nie jest dobrze zdefiniowana, wyniki r贸wnie偶 b臋d膮 niesp贸jne. Jak mo偶na si臋 spodziewa膰, ten rodzaj handlu jest bardziej popularny przy handlu algorytmicznym.

Istnieje oprogramowanie do backtestingu, kt贸re mo偶esz kupi膰, je艣li chcesz wykonywa膰 automatyczne analizy historyczne. Mo偶esz wprowadzi膰 w艂asne dane, a oprogramowanie przeprowadzi backtest za Ciebie. Jednak w tym przyk艂adzie przeprowadzimy manualny backtest strategii. B臋dzie wymaga艂o to troch臋 wi臋cej pracy, ale jest ca艂kowicie bezp艂atne.


Jak przeprowadzi膰 backtest strategii handlowej

Szablon arkusza kalkulacyjnego Arkuszy Google mo偶na znale藕膰 pod tym linkiem. Jest to podstawowy szablon, kt贸rego mo偶esz u偶y膰 jako punktu wyj艣cia do stworzenia w艂asnego. Daje og贸lne poj臋cie o tym, jakie informacje mo偶e zawiera膰 arkusz do analizy historycznej. Niekt贸rzy handlowcy wol膮 u偶ywa膰 Excela lub zakodowa膰 to w Pythonie - nie ma tutaj 艣cis艂ych zasad. Mo偶esz doda膰 znacznie wi臋cej danych, generalnie wszystko, co uznasz za przydatne.
Data
Rynek
Kierunek
Wej艣cie
Stop LossTake ProfitRyzykoNagrodaPnL

12/08

BTCUSD

Long

$18,000

$16,200

$21,600

10%

20%

3600

12/09

BTCUSD

Short

$19,000

$20,900

$13,300

10%

30%

-1900


Przetestujmy wi臋c prost膮 strategi臋 handlow膮. Oto nasz pomys艂:

  • Kupujemy jednego Bitcoina przy pierwszym dziennym zamkni臋ciu po golden crossie. Rozwa偶amy golden cross, gdy 50-dniowa 艣rednia krocz膮ca przekroczy 200-dniow膮 艣redni膮 krocz膮c膮.
  • Sprzedajemy jednego Bitcoina przy pierwszym dziennym zamkni臋ciu po death crossie. Rozwa偶amy death cross, gdy 200-dniowa 艣rednia krocz膮ca przebije si臋 si臋 poni偶ej 50-dniowej 艣redniej krocz膮cej.

Jak wida膰, zdefiniowali艣my r贸wnie偶 ramy czasowe, w kt贸rych strategia jest wykonywana. Oznacza to, 偶e nie uznamy tego za sygna艂 handlowy, je艣li na 4-godzinnym wykresie pojawi si臋 golden cross.

Na potrzeby tego przyk艂adu przyjrzymy si臋 tylko okresowi do pocz膮tku 2019 r. Je艣li jednak chcesz uzyska膰 dok艂adniejsze i bardziej wiarygodne wyniki, mo偶esz cofn膮膰 si臋 znacznie dalej, m贸wi膮c w kategoriach akcji cenowej Bitcoina.

Zobaczmy teraz, jakie sygna艂y handlowe wygenerowa艂 ten system w danym okresie:

  • Kup za ~$5,400
  • Sprzedaj za ~$9,200
  • Kup za ~$9,600
  • Sprzedaj za ~$6,700
  • Kup za ~$9,000


Oto jak nasze sygna艂y prezentuj膮 si臋 na wykresie:

Strategia golden cross-death cross. 殴r贸d艂o: TradingView.


Nasza pierwsza transakcja przynios艂aby zysk w wysoko艣ci oko艂o $3800, podczas gdy druga transakcja przynios艂aby strat臋 w wysoko艣ci oko艂o $2900. Oznacza to, 偶e nasze zrealizowane PnL wynosi obecnie $900.

Jeste艣my r贸wnie偶 w aktywnym handlu, kt贸ry na grudzie艅 2020 r. ma niezrealizowany zysk w wysoko艣ci oko艂o $9000. Je艣li b臋dziemy trzyma膰 si臋 naszej wst臋pnie zdefiniowanej strategii, zako艅czymy t臋 transakcj臋, gdy nast膮pi nast臋pny death cross.



Ewaluacja wynik贸w backtestingu

Wi臋c co pokazuj膮 te wyniki? Nasza strategia przynios艂aby rozs膮dny zwrot, ale jak dot膮d nie pokazuje niczego wyj膮tkowego. Mogliby艣my zrealizowa膰 obecnie otwart膮 transakcj臋, co drastycznie zwi臋kszy艂oby nasz zrealizowany PnL, ale to zniweczy艂oby cel backtestingu. Je艣li nie b臋dziemy trzyma膰 si臋 planu, wyniki r贸wnie偶 nie b臋d膮 wiarygodne.

Mimo 偶e jest to systematyczna strategia, warto r贸wnie偶 wzi膮膰 pod uwag臋 kontekst. Nierentowna transakcja z $9600 do $6700 mia艂a miejsce w czasie crashu zwi膮zanego z COVID-19 w marcu 2020 r. Taki czarny 艂ab膮d藕 mo偶e mie膰 ogromny wp艂yw na ka偶dy system handlowy. To kolejny pow贸d, dla kt贸rego warto cofn膮膰 si臋 dalej, aby sprawdzi膰, czy ta strata jest warto艣ci膮 odstaj膮c膮 od normy, czy tylko efektem ubocznym strategii.
W ka偶dym razie tak mo偶e wygl膮da膰 prosty proces backtestingu. Ta strategia mo偶e by膰 obiecuj膮ca, je艣li cofniemy si臋 jeszcze bardziej i przetestujemy j膮 z wi臋ksz膮 ilo艣ci膮 danych lub uwzgl臋dnimy inne wska藕niki techniczne, aby potencjalnie wzmocni膰 wytwarzane przez ni膮 sygna艂y.

Ale co jeszcze mog膮 Ci pokaza膰 wyniki backtestingu?

  • Pomiar zmienno艣ci: twoje maksymalne i minimalne osi膮gni臋te warto艣ci.
  • Ekspozycja: kwota kapita艂u, jak膮 musisz przeznaczy膰 na strategi臋 z ca艂ego Twojego portfolio.
  • Roczny zwrot:聽roczny procentowy zwrot ze strategii.
  • Wsp贸艂czynnik zwyci臋stw do聽pora偶ek: ile transakcji w systemie jest zwyci臋skich a ile przegranych.
To tylko kilka przyk艂ad贸w i nie jest to wyczerpuj膮ca lista. To, jakie dane chcesz 艣ledzi膰, zale偶y wy艂膮cznie od Ciebie. W ka偶dym razie im wi臋cej szczeg贸艂贸w na temat konfiguracji zapiszesz, tym wi臋cej mo偶liwo艣ci b臋dziesz musia艂 wzi膮膰 pod uwag臋 podczas analizy wynik贸w. Niekt贸rzy traderzy s膮 bardzo rygorystyczni w przeprowadzaniu analiz historycznych i mo偶e to r贸wnie偶 odbija膰 si臋 na ich wynikach.
Ostatni膮 rzecz膮 godn膮 rozwa偶enia jest optymalizacja. Je艣li przeczyta艂e艣 nasz artyku艂 o backtestingu, b臋dziesz wiedzia艂, jaka jest r贸偶nica mi臋dzy analiz膮 historyczn膮 a forward testingiem lub handlem na papierze. Pomocne mo偶e by膰 przetestowanie i optymalizacja pomys艂贸w w "偶ywym" 艣rodowisku handlowym, takim jak testnet Binance Futures.


Przemy艣lenia ko艅cowe

Przeszli艣my przez podstawowy proces przeprowadzania r臋cznego backtestu strategii handlowej. Pami臋taj, 偶e wyniki osi膮gni臋te w przesz艂o艣ci nie gwarantuj膮 przysz艂ych wynik贸w.

艢rodowiska rynkowe zmieniaj膮 si臋 i b臋dziesz musia艂 dostosowa膰 si臋 do tych zmian, je艣li chcesz poprawi膰 sw贸j handel. Og贸lnie rzecz bior膮c, nie warto te偶 艣lepo ufa膰 danym. Zdrowy rozs膮dek mo偶e by膰 zaskakuj膮co przydatnym narz臋dziem do oceny rezultat贸w.

Nadal masz pytania dotycz膮ce backtestingu i krypto? Sprawd藕 nasz膮 platform臋 pyta艅 i odpowiedzi Zapytaj Akademi臋, gdzie spo艂eczno艣膰 Binance odpowie na Twoje pytania.