Irracjonalizm backtestów i DD

ODPOWIEDZ
Awatar użytkownika
m_c
Stały Bywalec
Posty: 186
Rejestracja: czwartek 17 paź 2013, 12:51
Lat na Forex: 14
Kontakt:

Irracjonalizm backtestów i DD

środa 15 lip 2015, 16:02

Witam,

ostatnio spędziłem dużo czasu na testach jakiegoś tam systemu. Zastanowiła mnie jedna rzecz. Mianowicie dużo osób chciałoby zobaczyć wyniki back testów w ujęciu długoterminowym (czyli jak się dany system zachowywał w przeszłości np. 10 lat-dość częsta praktyka w funduszach inwestycyjnych oraz działach typu asset management).
Powiedzmy że zaprojektowany system w długim terminie osiągnął wyniki jak w pliku:
irracjonalizm_backtest1.jpg
oraz że jest początek 1995 roku.
Wyniki są bardzo obiecujące, klaszczemy w ręce patrząc na nie. W końcu idziemy na drinka no bo taka okazja nie zdarza się często. Podejmujemy decyzję - wdrażamy ten algorytm. Co było potem, można się domyśleć, jest w pliku:
irracjonalizm_backtest2.jpg
Cały model załamał się.
Reasumując:
nigdy nie można mieć pewności czy model nie załamie się za tydzień, miesiąc, rok. Nawet wyliczenia tego nie przewidzą bo są oparte na przeszłości. W związku z tym robienie backtest w długim okresie mija się z jakimkolwiek sensem według mnie. Podobnie jest ze słynnym DD. nawet pamięć wewnętrzna tu nie pomaga.

Rozważmy teraz taki przykład:
dziś jest 15 lipca 2015, z backtest wynika iż DD dla naszego algorytmu wyniósł 5%. Zaczynamy inwestować. Przesuńmy się teraz w czasie do przodu.
Obecnie mamy 15 września 2015, nasz DD wynosi 9%. Zaczynamy się zastanawiać czy nasz model wciąż działa. Co jest przyczyną. Wyliczamy punkt przegięcia dla naszego modelu. Podejmujemy decyzję że przestajemy używać tego algorytmu.
A teraz spójrzmy na ten przykład z innej strony.
Dziś jest 15 września 2015, z backtest wynika iż DD dla naszego algorytmu wyniósł 9%. Co robimy...? Nic. Zaczynamy inwestować na jego podstawie, po prostu przyjmujemy że DD wyniósł 9%.
Reasumując:
testując cokolwiek opieramy się na przeszłości i próbujemy przełożyć to w sposób liniowy na przyszłość. Ale nie ma to sensu, jak w powyższych przykładach. No bo co nam mówi że DD wyniósł 5%? Dlaczego spodziewamy się że nie będzie większy? I co to znaczy że model się załamuje? W jakim terminie? To są te fale, które co jakiś czas zmywają z pokładu fundusze hedge i inwestorów.

Backtesty robiłem w następujący sposób:
Walk-forward
Out-of_sample data
step 1 week
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.

Awatar użytkownika
jasonbourne
Pasjonat Forex
Posty: 814
Rejestracja: piątek 30 sie 2013, 15:13
Lat na Forex: 8
Rodzaj rachunku: Rachunek rzeczywisty
Lokalizacja: Warszawa

Re: Irracjonalizm backtestów i DD

środa 15 lip 2015, 19:10

Dlatego moim zdaniem najlepsze są testy live, bo są najbardziej wiarygodne, natomiast testy historyczne są tylko jakąś podstawą że w ogóle można "tym czymś" grać na jakieś tam pieniądze. Poza tym absolutnie nie mam zaufania do jakichkolwiek symulatorów.

Co prawda tracę w ten sposób dużo czasu, bo aby przetestować 100 wejść (na przykład sprawdzam czy nowy warunek zwiększa skuteczność) to przeważnie przez 1,5 miesiąca muszę codziennie zapisywać wyniki, czyli aby w miarę obiektywnie ocenić jakiś nowy warunek do systemu to prawie dwa miesiące schodzi, ale czas pokazuje że moje podejście sprawdza się w praktyce.

Istotą jest moim zdaniem szukanie dobrych zależności, a nie testować wszystko jak leci.
"Nie należy mylić prawdy z opinią większości."Jean Cocteau

Awatar użytkownika
jasonbourne
Pasjonat Forex
Posty: 814
Rejestracja: piątek 30 sie 2013, 15:13
Lat na Forex: 8
Rodzaj rachunku: Rachunek rzeczywisty
Lokalizacja: Warszawa

Re: Irracjonalizm backtestów i DD

środa 15 lip 2015, 21:41

Poza tym moim zdaniem zysk i DD tak naprawdę niewiele mówi o systemie, a dużo osób się tym podnieca.

Dla mnie system to

prawdopodobieństwo wejścia (skuteczność wejść, czyli jakie szanse są na SL)
prawdopodobieństwo wyjścia (skuteczność wyjść, czyli jakie szanse są na TP jak pozycja wejdzie)
częstotliwość sygnałów czyli jak często mamy wejścia w pozycje


Do tego ja zawsze testuję system modułowo tzn. rozbijam na moduły i je dopracowuję, a nie wszystko razem:

moduł pierwszy (sygnał kierunkowy, warunek szukania wejścia, jak często się pojawia, jak często się sprawdza)
moduł drugi (wejście w pozycje, jak często się pojawia, jak często się sprawdza)
moduł trzeci (wyjście w pozycje, jakie są szanse na różne TP, znaczenie współczynnika R)

jest to o tyle wygodne, że można zamieniać moduły na inne i zostawiać te które się sprawdzają.
"Nie należy mylić prawdy z opinią większości."Jean Cocteau

no avatar
pablo90
Posty: 32
Rejestracja: środa 18 lip 2012, 14:58

Re: Irracjonalizm backtestów i DD

środa 15 lip 2015, 23:01

1. Backtest nie daje gwarancji, że model sprawdzi się w przyszłości. Natomiast jeżeli chcesz zacząć używać jakiegoś sytemu to raczej użyjesz systemu, który sprawdzał się w przeszłości, niż takiego, który nie sprawdzał się nawet na danych historycznych. Testy live to strata czasu, bo po zakończeniu takiego testu mamy takie same dane jak te po przeprowadzeniu backtestu. 100 wejść to śmiesznie mała próba na podstawie której ciężko dojść do sensownych wniosków.
2. Z historycznym DD jest tak, że w czasie normalnego używania systemu na rachunku rzeczywistym ten DD może być większy, a może też już nigdy nie dojść do tego poziomu. Ja zakładam, że DD może być 2 razy większy niż w backtestach. Jeżeli w czasie gry na rachunku rzeczywistym DD z backtestów zostaje przekroczony, jest to sygnał, że dane mogły zmienić swoją charakterystykę na taką, która nie została uwzględniona/nie była zawarta w danych historycznych.

Jeżeli testujesz system na danych obojętnie z jakiego okresu, ale zawierają one np. tylko dane określające silny trend wzrostowy i pod to optymalizujesz system, to ciężko oczekiwać, że jakość modelu będzie na takim samym poziomie w trendzie horyzontalnym czy spadkowym. Próbki danych powinny uwzględniać jak najwięcej możliwych scenariuszy.

Awatar użytkownika
m_c
Stały Bywalec
Posty: 186
Rejestracja: czwartek 17 paź 2013, 12:51
Lat na Forex: 14
Kontakt:

Re: Irracjonalizm backtestów i DD

czwartek 16 lip 2015, 06:53

Pablo90,
1. Tu jest problem. Spotkałem się z taką sytuacją, że backtest generował straty przez dwa lata (ok. 90%). I co zrobiłbyś z takim systemem? Idąc za twoją teorią system nadawał się do śmietnika. Jednak pomijając te dwa lata X lat temu, okazuje się że system działa i zarabia. Dokładna odwrotność tego co opisałem. Ponad to jest jeszcze jedna kwestia. Robiąc back-test od momentu X zakładamy że nasze warunki handlowe są poprawne (zakładam wzrost equity). Ale tak naprawdę nie wiesz czy to nie była tylko korekta spadającego equity w jeszcze dłuższym horyzoncie czasowym. I okazuje się że warunki jakie przyjęliśmy są błędne i powinny być odwrotne. Przy backtestach 10 lat wstecz nie ma nawet pamięci wewnętrznej (choć pewnie są rynki które mają tak długa pamięć). Prognozowanie ekonomiczne w terminie dłuższym niż 3 miesiące do przodu to hazard. podobnie chyba powinno być z testami w przeszłość. Trzeba by policzyć długość pamięci wewnętrznej dla danego TF i zrobić odpowiednio dużą liczbę transakcji. Jednak to i tak nic nie gwarantuje. całkiem możliwe, iż systemy powinno się dopasowywać do rynku/zmieniać ustawienia co 3 miesiące.

2. Dlaczego 2 razy większy niż w backtest? Robisz to na zasadzie odchylenia standardowego (DD w backtestach to 1 odchylenie, czyli w dwóch powinieneś mieć ponad 90%)?
Dlaczego zakładasz że przekroczenie DD z testów to zmiana charakterystyki? A może to tylko anomalia wynikająca z czynników zewnętrznych np. politycznych albo globalnych typu atak (np. WTC, jednorazowe zdarzenie, które spowodowało znaczący wzrost zmienności i wszystkie wskaźniki przestały działać) lub tzw. rampingu?

Nigdy się nie robi systemu do wszystkiego. Inne są systemu na tzw. "trend" inne na bok a jeszcze inne na korektę. Zastanawiałeś się jak rynek zachowuje się w trakcie ruchów? Inaczej to wygląda w trendzie wzrostowym inaczej w spadkowym a inaczej w bocznym. Do tego dochodzą korekty. Pierwsze dwa mają 3 rodzaje korekt + kierunek główny. Czyli daje nam to 8 zachowań rynku. Do tego jeszcze "trend" boczny, przynajmniej dwa zachowania. Całość daje nam minimum 10 zachowań rynku, diametralnie różnych ze względu na style gry podczas sesji europejskiej i amerykańskiej (pomijam azjatycką). Osiągamy w ten sposób 20 zmiennych zachowań cen. Jesteś w stanie zrobić algorytm, który by to wszystko rozpoznawał i wykorzystywał (zgodnie z twoją teorią, iż próbki powinny zawierać jak najwięcej scenariuszy)?

Awatar użytkownika
m_c
Stały Bywalec
Posty: 186
Rejestracja: czwartek 17 paź 2013, 12:51
Lat na Forex: 14
Kontakt:

Re: Irracjonalizm backtestów i DD

czwartek 16 lip 2015, 07:01

Jasonbourne,

Jak liczysz te prawdopodobieństwa?
Co do częstotliwości wejść. Czy im więcej tym lepiej? Czy raczej skuteczność? Np. było 10 sygnałów wejść, 5 zarobiło z tego system:
zawarł 3 transakcje
zawarł 5, ale zyskowne były 3.

no avatar
pablo90
Posty: 32
Rejestracja: środa 18 lip 2012, 14:58

Re: Irracjonalizm backtestów i DD

czwartek 16 lip 2015, 11:24

m_c pisze:Tu jest problem. Spotkałem się z taką sytuacją, że backtest generował straty przez dwa lata (ok. 90%). I co zrobiłbyś z takim systemem? Idąc za twoją teorią system nadawał się do śmietnika. Jednak pomijając te dwa lata X lat temu, okazuje się że system działa i zarabia.


Dokładnie, odrzuciłbym taki system, bo charakterystyka rynku znowu może wrócić do takiego stanu jak wtedy, gdy system tracił.
m_c pisze:Dlaczego 2 razy większy niż w backtest? Robisz to na zasadzie odchylenia standardowego (DD w backtestach to 1 odchylenie, czyli w dwóch powinieneś mieć ponad 90%)?
Po prostu dwukrotność daje mi dość duży margines błędu. Jeżeli odchylenie 2 krotnie przewyższa założenie modelu to znaczy, że coś jest nie tak i trzeba uważniej przyjrzeć się założeniom systemu. Może rzeczywiście poprawniej od strony statystycznej było by policzyć odchylenie standardowe od średniej z krzywej kapitału i przemnożyć razy 2, ale te 90% odnosi się do rozkładu normalnego, a nie do analizy szeregów czasowych.
m_c pisze:Dlaczego zakładasz że przekroczenie DD z testów to zmiana charakterystyki? A może to tylko anomalia wynikająca z czynników zewnętrznych np. politycznych albo globalnych typu atak (np. WTC, jednorazowe zdarzenie, które spowodowało znaczący wzrost zmienności i wszystkie wskaźniki przestały działać) lub tzw. rampingu?
Pojedyncze zdarzenie nie ma wpływu na długoterminową charakterystykę wyników EA, a jeżeli robot gubi się przy większej/mniejszej zmienności to jest to model źle zaprojektowany, bo akurat zmienność to zmienna, którą bardzo łatwo znormalizować.
m_c pisze:Jesteś w stanie zrobić algorytm, który by to wszystko rozpoznawał i wykorzystywał (zgodnie z twoją teorią, iż próbki powinny zawierać jak najwięcej scenariuszy)?
Nie musi wykorzystywać wszystkich tych sytuacji, wystarczy że EA wykorzystuje jedną sytuację, a resztę pomija. Mimo wszystko warto przetestować czy sytuacje, które nas nie interesują są ignorowane, lub czy ich wystąpienie nie zeruje rachunku, więc tak jak pisałem wcześniej próbki danych powinny zawierać jak najwięcej możliwych scenariuszy rynkowych.

Awatar użytkownika
m_c
Stały Bywalec
Posty: 186
Rejestracja: czwartek 17 paź 2013, 12:51
Lat na Forex: 14
Kontakt:

Re: Irracjonalizm backtestów i DD

czwartek 16 lip 2015, 12:20

Dokładnie, odrzuciłbym taki system, bo charakterystyka rynku znowu może wrócić do takiego stanu jak wtedy, gdy system tracił.
Może ale nie musi. To dopiero wiadomo po fakcie. W związku z tym nie można odrzucać czegoś co przynosi straty. Przykładem może być taka sytuacja: robisz test, są straty. Wprowadzasz wzór na załamanie się systemu. Całkiem możliwe że jeśli system przynosi straty i nagle ze wzoru wynika że system się załamuje to może oznaczać że zacznie przynosić zyski (odwrotność załamania zyskownego)
Po prostu dwukrotność daje mi dość duży margines błędu. Jeżeli odchylenie 2 krotnie przewyższa założenie modelu to znaczy, że coś jest nie tak i trzeba uważniej przyjrzeć się założeniom systemu. Może rzeczywiście poprawniej od strony statystycznej było by policzyć odchylenie standardowe od średniej z krzywej kapitału i przemnożyć razy 2, ale te 90% odnosi się do rozkładu normalnego, a nie do analizy szeregów czasowych.
Chodziło mi bardziej czy wyliczałeś to jakoś matematycznie, czy raczej na "oko". no bo dlaczego nie 3 albo 4? Wiąże się to z tym co pisałem i momentem testu. Czy cena/equity line jest szeregiem czasowym? Bo jeśli tak to co to jest wstęga Bollingera?
A może policzyć odchylenie standardowe od średniej z DD z jakiegoś tam czasu? I wtedy razy 2 lub 3 dla pewności. I uwzględnić skośność i kurtozę.
Pojedyncze zdarzenie nie ma wpływu na długoterminową charakterystykę wyników EA, a jeżeli robot gubi się przy większej/mniejszej zmienności to jest to model źle zaprojektowany, bo akurat zmienność to zmienna, którą bardzo łatwo znormalizować.
Gdyby to była prawda to by nie zbankrutował Amaranth. Jednorazowe zdarzenie i cały fundusz hedge działający ileś tam czasu poszedł z dymem. Jeśli zmienność była X lat temu 200 pips i spadła do 40 (systematycznie) a kurs najpierw urósł potem spadł czyli wygląd jak rozkład normalny, to masz pomysł jak to znormalizować? No bo przyrosty procentowe nie zadziałają jeśli jest ten sam kurs lub zbliżony a najpierw była zmienność 200 a teraz 40. Moim zdaniem znormalizować zmienność można w niskich TF.
Nie musi wykorzystywać wszystkich tych sytuacji, wystarczy że EA wykorzystuje jedną sytuację, a resztę pomija. Mimo wszystko warto przetestować czy sytuacje, które nas nie interesują są ignorowane, lub czy ich wystąpienie nie zeruje rachunku, więc tak jak pisałem wcześniej próbki danych powinny zawierać jak najwięcej możliwych scenariuszy rynkowych.
To potwierdza że nie da się zrobić jednego automatu do wszystkiego. Coś trzeba wybrać. Inna sprawa, że można mieć kilka automatów. Z drugiej strony jeśli robię automat na sesję poranną 9-13 to nie interesują mnie zdarzenia po 13 bo automat już wtedy nie działa. Oczywiście mogą być reperkusje na kolejnej porannej sesji ale nie zawsze i nie koniecznie. A jeśli już występują to wpisują się w mój model.

no avatar
pablo90
Posty: 32
Rejestracja: środa 18 lip 2012, 14:58

Re: Irracjonalizm backtestów i DD

czwartek 16 lip 2015, 12:37

Jeśli zmienność była X lat temu 200 pips i spadła do 40 (systematycznie) a kurs najpierw urósł potem spadł czyli wygląd jak rozkład normalny, to masz pomysł jak to znormalizować? No bo przyrosty procentowe nie zadziałają jeśli jest ten sam kurs lub zbliżony a najpierw była zmienność 200 a teraz 40. Moim zdaniem znormalizować zmienność można w niskich TF.
Nie chodzi mi o normalizację kursu, tylko o dostosowanie systemu do zmiany zmienności. Można do tego użyć chociażby wskaźnika ATR i w oparciu o ten wskaźnik wyznaczasz punkty zamknięcia pozycji. Tak więc to rozwiązuje problem jeśli chodzi o zarządzanie pieniędzmi. Jeśli chodzi o samo podejmowanie decyzji to wystarczy, że użyjemy względnych wartości wskaźników a nie sztywnych wartości kursów/wskaźników i ten problem również jest wtedy rozwiązany (pomijając fakt, że wskazania części wskaźników analizy technicznej w ogóle nie zależą od panującej zmienności). Jeżeli chodzi o samą normalizację kursu (danych szeregu czasowego) to częstą praktyką jest odjęcie od kursu wartości średniej, a następnie podzielenie przez odchylenie standardowe, ale uważam, że takie działanie w przypadku standardowej analizy technicznej ma ograniczone uzasadnienie.

Awatar użytkownika
m_c
Stały Bywalec
Posty: 186
Rejestracja: czwartek 17 paź 2013, 12:51
Lat na Forex: 14
Kontakt:

Re: Irracjonalizm backtestów i DD

czwartek 16 lip 2015, 16:00

Cały czas mówię o zmienności. Dlatego pytałem jakbyś znormalizował ATR przy zachowaniu tak jak opisałem? Czyli systematycznemu spadkowi z 200 do 40.
Co do odejmowania kursu i średniej. Problem polega na tym, iż możesz mieć wzrost takiego wskaźnika-świadczy to o rosnącym kursie lub spadek- świadczy to o:
a. kurs spada w kierunku średniej
b. kurs stoi w miejscu i średnia dogania kurs.
Oczywiście najprościej jak jest wzrost wskaźnika, bo można przyrosty robić na zasadzie delty, średniej. Gorzej jak chcesz grać na spadki, bo występują dwie sytuacje opisane powyżej.

Awatar użytkownika
jasonbourne
Pasjonat Forex
Posty: 814
Rejestracja: piątek 30 sie 2013, 15:13
Lat na Forex: 8
Rodzaj rachunku: Rachunek rzeczywisty
Lokalizacja: Warszawa

Re: Irracjonalizm backtestów i DD

czwartek 16 lip 2015, 16:33

m_c pisze:Jasonbourne,

Jak liczysz te prawdopodobieństwa?
Co do częstotliwości wejść. Czy im więcej tym lepiej? Czy raczej skuteczność? Np. było 10 sygnałów wejść, 5 zarobiło z tego system:
zawarł 3 transakcje
zawarł 5, ale zyskowne były 3.
W przeciwieństwie do wcześniejszych postów moja wypowiedź będzie prosta. Bo tworzenie systemu i zarabianie nim jest proste (chociaż nie banalne), pod warunkiem że się idzie właściwą drogą.

Jak policzyć prawdopodobieństwo wejścia? No banalnie prosto, wejścia poprawne dzielimy przez wszystkie i wychodzi Nam na przykład 40%. Wbrew pozorom już 100 próbek daje dość wiarygodne wyniki, chociaż oczywiście im więcej tym lepiej. Analogicznie liczymy skuteczność TP.

Co Nam dają takie wyniki? Bardzo dużo. Na przykład mamy system o parametrach:

Skuteczność wejść 50%
Skuteczność TP 50%
średni R (TP/SL) =10
częstotliwość = 1 transakcja dziennie

Jak widzę coś takiego od razu wiem czego się spodziewać, w tym wypadku to jest mega *odstrzelony* system o bardzo dużej zyskowności, ale też można sobie policzyć prawdopodobieństwa różnych scenariuszy (np. 10 SL z rzędu, 20 SL z rzędu itp)

Natomiast co daje wiedza, że system zarobił 300% w rok przy DD 15%? Nic nie daje. Takie wartości mogą podniecać dzieci, blondynki i początkujących, ale jak kolega słusznie zauważył w pierwszym poście, tak naprawdę nie wiadomo czego można się spodziewać w przyszłości widząc takie liczby.

Dlaczego nie wiemy czego się spodziewać? Bo nie koncentrujemy się na tym co trzeba.

Więcej na ten temat napisałem tutaj

http://comparic.pl/poczatki-gry-gieldzi ... a-systemu/
"Nie należy mylić prawdy z opinią większości."Jean Cocteau

Awatar użytkownika
jasonbourne
Pasjonat Forex
Posty: 814
Rejestracja: piątek 30 sie 2013, 15:13
Lat na Forex: 8
Rodzaj rachunku: Rachunek rzeczywisty
Lokalizacja: Warszawa

Re: Irracjonalizm backtestów i DD

czwartek 16 lip 2015, 17:01

I jeszcze taka moja uwaga, nieco bardziej romantyczna.
Moim zdaniem nic tak nie pomaga zrozumieć ruchów ceny, dotknąć jej istoty, zbliżyć się do niej jak najbardziej się tylko da, jak robienie badań statystycznych "na sucho". Czyli kartka, długopis i jedziemy przez kilka tygodni. Tu jest bardzo istotne, że ja zawsze rozdzielam badania od gry, bo jak się otwiera pozycje, to jednak pieniądze (straty i zyski) zaburzają "dostrzeganie istoty"i patrzymy na rynek poprzez pryzmat kasy, i nie widzimy wystarczająco wyraźnie czym naprawdę jest.

Dlatego ja w ogóle nie robię badań komputerowych, tylko właśnie ręcznie i na sucho, bo w ten sposób można bardzo dobrze poczuć rynek. A w konsekwencji, czuć się pewnie tam, gdzie większość ludzi czuje się niepewnie. Ale to już kwestia podejścia.
"Nie należy mylić prawdy z opinią większości."Jean Cocteau

Awatar użytkownika
m_c
Stały Bywalec
Posty: 186
Rejestracja: czwartek 17 paź 2013, 12:51
Lat na Forex: 14
Kontakt:

Re: Irracjonalizm backtestów i DD

piątek 17 lip 2015, 07:26

Jak policzyć prawdopodobieństwo wejścia? No banalnie prosto, wejścia poprawne dzielimy przez wszystkie i wychodzi Nam na przykład 40%. Wbrew pozorom już 100 próbek daje dość wiarygodne wyniki, chociaż oczywiście im więcej tym lepiej. Analogicznie liczymy skuteczność TP.
Widocznie źle zrozumiałem. Zasugerowałem się tym prawdopodobieństwem. Myślałem że wyliczasz jakoś prawdopodobieństwo czy transakcja wejdzie w rynek, lub przyniesie zysk. Coś na styl VaR.
Co oznacza "poprawne":
a. wejścia przynoszące zysk
b. wejścia zgodne z modelem (kwestia brokera, poślizgów itd)

Robienie modeli z kartką papieru jest ok. Jednak jest jeszcze coś. Ja zrobiłem sobie model, skuteczność 45-55%. Jedna transakcja dziennie. Ustawiłem relację relację TP/SL dość wysoko. Używałem trailinga. Okazało się, że w realnych warunkach osiągam średnio trochę więcej niż 2. Problem polega na tym, iż rzadko kiedy wejdziesz idealnie i wyjdziesz też tak. Tylko cześć ruchu bierzesz. Czyli jeśli weźmiesz 60% a ruch ma np. 100 to masz 60 pips. A co jeśli bierzesz tylko 40%? Rzadko jest 100 pips ruchu pomiędzy np. 9-13.
Kolejna rzecz. Zrobiłem model arbitrażu statystycznego w excel. wynikało z niego, że jest ok. Przełożyłem to na MQL i zonk. Na platformie transakcje są czasem zgodne czasem w innych miejscach (przesuniecie o jedną świecę lub zupełnie inne miejsca). Nie wiem czy to zależało od układu świec czy od czegoś innego (może różnica wynikała z danych). Generalnie widzę różnice pomiędzy modelami na kartce, w excel lub np. w Amibrokerze. Niby ten sam sposób liczenia a wartości wskaźników potrafią być różne. Jeśli to jest +/- 0.5 pkt, to jeszcze ok, ale jeśli różnica dochodzi do 30% to już porażka, bo sygnały są inne.

Awatar użytkownika
jasonbourne
Pasjonat Forex
Posty: 814
Rejestracja: piątek 30 sie 2013, 15:13
Lat na Forex: 8
Rodzaj rachunku: Rachunek rzeczywisty
Lokalizacja: Warszawa

Re: Irracjonalizm backtestów i DD

piątek 17 lip 2015, 08:10

m_c pisze:Widocznie źle zrozumiałem. Zasugerowałem się tym prawdopodobieństwem. Myślałem że wyliczasz jakoś prawdopodobieństwo czy transakcja wejdzie w rynek, lub przyniesie zysk. Coś na styl VaR.
Co oznacza "poprawne":
a. wejścia przynoszące zysk
b. wejścia zgodne z modelem (kwestia brokera, poślizgów itd)
Dla mnie wejście poprawne to takie które przestawię na BE. Jak mam na BE to później wchodzi już moduł TP, który albo się sprawdzi albo nie. U brokerów, u których gram, nie ma poślizgów. :celebr:

Ja gram specyficznie. Wejścia z SL 10 pips a TP nawet w porywach do 500, czyli wolę to sobie rozdzielać, bo moduł wejść ma duże znaczenie, jego skuteczność, trafność, częstotliwość, zasadniczo tylko nad nim pracuję, bo reszta działa ok.
"Nie należy mylić prawdy z opinią większości."Jean Cocteau

Awatar użytkownika
jasonbourne
Pasjonat Forex
Posty: 814
Rejestracja: piątek 30 sie 2013, 15:13
Lat na Forex: 8
Rodzaj rachunku: Rachunek rzeczywisty
Lokalizacja: Warszawa

Re: Irracjonalizm backtestów i DD

sobota 18 lip 2015, 12:26

Jeszcze kilka słów na temat mojego podejścia, które jest moim zdaniem racjonalne, i co szczególnie istotne, sprawdza się w praktyce.

Mam skuteczność wejść ok. 40%, a skuteczność TP w granicach 70%, co razem daje ok. 30% wejść zakończonych zyskiem. Zawsze warto wyliczać granicę zyskowności systemu, która w tym wypadku wynosi ok. 2,5 czyli tyle musi wynosić minimalny TP, aby system był zyskowny

Wzory i szczegółowe wyliczenia w artykule, do którego podawałem link wcześniej.

W praktyce dzieją się różne rzeczy, dlatego warto tą granicę podnosić dużo wyżej i w moim wypadku minimalny R wynosi 5, czyli ignoruję transakcje z mniejszym TP/SL niż 5.

Matematycznie wygląda to tak:

0,3 *5 - 0,7= 0,8


Jak widać szału nie ma, ale mój średni R wynosi 15, a ten minimalny ma na celu tylko i wyłącznie eliminację transakcji ze zbyt małą czy nawet ujemną wartością oczekiwaną.

Co więcej, i co szczególnie istotne, jeżeli system ma dobrą wartość oczekiwaną i niezłą częstotliwość, to jeżeli obliczenia są w miarę poprawne, po prostu musi być zyskowny. Oddzielną sprawą jest jednak DD. Przy skuteczności na poziomie 30% nie należy się dziwić (bo nie ma w tym nic niezwykłego), że mogą wystąpić serie nawet po 20-30 transakcji stratnych, no ale tak już jest.
"Nie należy mylić prawdy z opinią większości."Jean Cocteau

Awatar użytkownika
esco
Gaduła
Posty: 294
Rejestracja: czwartek 08 mar 2012, 21:29

Re: Irracjonalizm backtestów i DD

czwartek 31 gru 2015, 10:55

W praktyce w tak długim okresie robi się backtesty "out of sample".
Np lata 2000-2010 optymalizacja i test na 2011-2015.
"Anyone who believes in indefinite growth in anything physical, on
a physically finite planet, is either mad - or an economist." - Kenneth Ewart Boulding

ODPOWIEDZ

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 15 gości