Trading na linii kapitału, część 2

Przyznam, że to co za chwilę opiszę jako kontynuację poprzedniego wpisu, zdumiało mnie nieco i przy okazji tym bardziej przekonało do celowości prezentacji na blogu.

 

Autor prezentowanego przez mnie artykułu, który jak widzę jest dostępny w sieci bez przeszkód -> tutaj, wykreaował takie usprawnienie do tradingu w oparciu o krzywą kapitału (w skrócie użyję KK), które może zadziwić swoją nieco przekorną efektywnością, ale przy okazji zmusza do zastanowienia się nad jego logiką.

Zacznijmy od konstrukcji owego wynalazku, do którego bazą tak jak poprzednio jest zwykła średnia arytmetyczna (SMA), nałożona na wykres krzywej kapitału, powstałej w wyniku kolejnych transakcji. Tym razem jednak zamiast zaprzestawać gry po zejściu KK poniżej swojej średniej dokonujemy manewru wręcz przeciwnego:

Odwracamy sygnał zajęcia pozycji wskazany przez system/strategię i dokonujemy transakcji w odwrotnym kierunku.

Czyli

(a) jeśli KK przetnie od góry średnią a system pokaże kupno danego rynku to zamiast tego otwieramy pozycję krótką (lub jeśli padł sygnał „sprzedaj krótko” to zamiast niego kupujemy)

(b) jeśli KK ponownie wychodzi ponad swoją średnią, przecinając ją od dołu, to wszystkie transakcje wykonujemy normalnie, tak jak zakładają reguły systemu.

Poniższy wykres zaczerpnięty z artykułu pokazuje wizualny wynik zastosowania tego pomysłu za pomocą średniej 10 okresowej i przy warunkach jak poprzednio ( dane 60. minutowe dla pary EUR/USD za 6 lat, 10 000 $ kapitału początkowego):

 equity-trading3

Źródło: futuresmag.com

Wygląda to niesamowicie, wręcz niewiarygodnie, ale zysk wyniósł niemal 25 000 $ a nowa KK zrobiła się niesamowicie gładka i nie przecinają ją zbyt wielkie obsunięcia.

Prześledźmy teraz logikę i praktykę pomysłu, o której niestety niewiele można przeczytać, a którą konieczne trzeba zbadać.

1. Które ceny brać pod uwagę ?

Niemal na pewno (artykuł tego nie wskazuje) przy sprawdzeniu momentu położenia krzywej kapitału wobec średniej i podjęciu decyzji o odwróceniu bądź nie sygnału systemu, posługujemy się tylko jednorazową wartością KK z zamknięcia transakcji. W przeciwnym wypadku trzeba by zamykać pozycję zanim osiągnie zakładane poziomy stopów bowiem KK przecina w niektórych wypadkach średnią czasem 2-3 krotnie w czasie trwania transakcji.

Natomiast do konstrukcji KK zapewne użyto godzinowych wycen to jest poprzedniej wartości KK skorygowanej o wielkość aktualnego zysku lub straty z transakcji. Dla pierwszego odczytu jest to wartość początkowa kapitału użytego do gry plus/minus zysk lub strata na zamknięciu pierwszej godzinowej świecy. A godzinowych odczytów dlatego ponieważ takiego rodzaju dane użyto w teście.

Uwaga, jedna pułapka – jeśli nie ma transakcji, KK robi się pozioma i zaburza przebieg średniej. System użyty w testach wygląda na „stop and reverse” czyli cały czas na rynku (krótkie i długie pozycje).

2. Którą KK brać pod uwagę przy odwróceniach sygnału?

Jest to istotne ponieważ mamy do dyspozycji de facto dwie KK ze średnimi – jedna oryginalna, powstała bez zmian i druga, która jest owocem zmian kapitału przy zastosowaniu odwróceń sygnału opisanych wyżej. Nie robiłem jeszcze testów, ale wydaje mi się, że cały czas pracujemy z oryginalną KK jako filtr a nowa KK z odwróconymi sygnałami powstaje jako osobny produkt z realnego tradingu na naszym rachunku. Zresztą sprawdzić można obie opcje w charakterze filtra.

3. Na ile realistyczne są przedstawione wyniki?

Na użytek artykułów przedstawia się zwykle wypucowane, lśniące chromem i pachnące optymizmem oraz lekko dopasowane do danych historycznych wersje pomysłów, celem podkreślenia efektów i uzmysłowienia ich działania w jak najjaskrawszym świetle. Tak samo mogło być i w tym wypadku więc proszę nie spodziewać się podobnie fantastycznych rezultatów w realnym tradingu. Tym bardziej, że nie dostajemy żadnej informacji o kosztach prowizji i poślizgach. Niemniej jednak każdy pomysł wygładzający zmienność KK jest wart szczegółowej inspekcji.

4. Jak działa ten pomysł pod względem logicznym?

Jeśli KK schodzi poniżej średniej to zakładać należy, że system trafił na niezbyt sprzyjające warunki rynkowe, np. podążający za trendem wpada na beztrendową flautę. Odwracając sygnały korzystamy wówczas z tradingu w małych zakresach (od wsparć do oporów) zamiast wybić. Może jednak uciec wówczas sygnał porządnego wybicia z tej konsolidacji. Dlatego pomysł powyższy jest dobry do szybkostrzelnych, krótkoterminowych transakcji, które elastycznie i dość szybko dopasowują się do charakteru rynku.

5. Jak wykorzystać to efektywnie?

Cóż, nie da się uniknąć najpierw testów na danych historycznych. Te wyniki powyższe wydają mi się niesamowicie wyśrubowane i zapewne jeszcze nie wszystkie obserwacje i wnioski zawarłem wyżej ani nie podsuwa ich artykuł. Gdybym miał testować to w realnych warunkach to podzieliłbym kapitał na 3 części następująco: 1/3 do gry oryginalnym systemem, 1/3 do gry tylko z 1 średnią jak w poprzednim wpisie, 1/3 do gry z odwracaniem jak wyżej.

Ciekaw jestem natomiast Waszych obserwacji a szczególnie wyników testów!

-kat—

[Głosów:0    Średnia:0/5]

30 Komentarzy

  1. lesserwisser

    A gdzie jest to obiecane kilka słów wyjaśnienia, które miały być dodane w kolejnym wpisie?

    Obiecanki cacanki a głupiemu smutek. 🙁

    Jadę na krótkie wywczasy, a jak wrócę to mam nadzieję, że się nie zasmucę.

  2. pit65

    Tak pobierznie.

    “Niemal na pewno (artykuł tego nie wskazuje) przy sprawdzeniu momentu położenia krzywej kapitału wobec średniej i podjęciu decyzji o odwróceniu bądź nie sygnału systemu, posługujemy się tylko jednorazową wartością KK z zamknięcia transakcji. ”
    vs
    “Natomiast do konstrukcji KK zapewne użyto godzinowych wycen to jest poprzedniej wartości KK skorygowanej o wielkość aktualnego zysku lub straty z transakcji.

    ..bowiem KK przecina w niektórych wypadkach średnią czasem 2-3 krotnie w czasie trwania transakcji.”

    No to teraz to troche nie rozumiem no bo jeśli posługujemy się konstrukcją KK z poprzeniej godziny/rozumiem Close/ to jak może ta sama kk przecinać 2,3 razy średnią.
    Niewykonalne w czasie do następnej Close, skoro Close jest już zablokowany niejako w czasie past i nic już sie przecinać nie może.Trzeba czekac następną godzinę na valid pomiar.
    Natomiast skoro jest już to opóżnienie godzinowe KK to rzeczywiście przecinać może w ostępach godzinowych , ale na pewno nic pomiędzy.
    NO i teraz nasuwa się pytanie o zmienność.
    Patrząc na wykres godzinowy Edka zastanawiam się czy ta dedukcja jest słuszna biorąc momentami monstrualne przyspieszenie zmienności na tym interwale do tak głądkiej krzywej kapitału w efekcie transformacji.
    Być może autorowi udało się znależć filtr właśnie postępując odwrotnie do logiki , który to świetnie wpasowuje się do charakteru kursu tego instrumentu /odwrotnośc przy płaskim rynku i małej zmienności/.
    Co jednak z hiper zmiennością w odstępach godzinowych to musiałoby byc widoczne na KK przy podjęciu większego ryzyka?
    ale jest
    wiele dalszych niewiadomych .
    np.: Equity można róznie liczyć aktualny Close, poprzedni Close, real time, od transakcji do transakcji ???????????

    Generalnie autor wyznacza pewną ideę badania KK i widzimy jedynie efekt malarstwa , a jest tyle zmiennych do zbadania ,że by powtórzyć jego track record trzeba się nieźle nabadać , a VAn Gogh pozostanie tylko jeden 🙂

  3. Jack

    Trading equity curve nie jest takim nowym pomysłem – wystarczy wpisać tą frazę w google, aby otrzymać kilka ciekawych linków na ten temat. Np.WealthLab ma zaimplementowany tzw. PosSizer, który na podstawie przecięcia dwóch średnich z portfolio equity curve, lub średniej i equity zmienia wielkość pozycji.

    Autor omawianego artykułu Octavio Riano przedstawił tą metodę w sposób – moim zdaniem
    mocno przerysowany. Z systemu, który przez 6 lat na zainwestowanych 10 tys. zdołał zarobić
    jedynie 300 dol. za pomocą różnych kombinacji bez zmiany MM zdołał wycisnąć 35 000 $ zysku. Jestem przekonany, że zastosował tzw. frictionless, czyli wyniki są z pominięciem kosztów. Wtedy – im szybsza średnia, tym gładsza equity – ale też dużo więcej sygnałów,
    co w praktyce po uwzględnieniu kosztów (spread) czyni tą metodę nieopłacalną.
    Niemniej jednak idea jest jak najbardziej słuszna – sam stosuję trading equity curve od lat
    z powodzeniem, grając systemowo na fw20. Przede wszystkim w wyniku zastosowania tej metody poza mniejszym maxDD drastycznie spada ryzyko bankructwa.

    W testowaniu tej strategii jak słusznie zauważył KatHay należy traktować oddzielnie instrument bazowy – czyli oryginalną equity curve (KK) i nową KK jako osobny produkt.

  4. pit65

    @Jack

    Problem, może nie problem EQ jest taki ,że nadaje się jako substytut . instrumentów /wskażników/ systemu bazowego , który to system produkuje dośc niegładki przebieg Equity dający jednak nadzieje na dalszą pracę nad nim.
    NAjlepiej dający dużą amplitudę góra-dół.
    Wtedy jest miejsce do poprwiania niezbyt elastycznych do warunków rynkowych instrumentów bazowych na których oparliśmy system.
    Więc robimy niejako drugi przebieg.
    W przypadku dobrego systemu bazowego z względnie gładka linia equity można bardzo często tylko system uczynić mniej stabilnym w stosunku do oryginału.Przewaznie poprawka nie jest warta grzechu , choc nigdy nie zaszkodzi sprawdzić 🙂

  5. copy

    Pit KK przecina średnią 2-3 krotnie w czasie trwania transakcji, a nie godzinowej świeczki. Zapewne otwarcie pozycji następuje na Close świeczki sygnalnej lub na Open kolejnej, więc nie ma fizycznej możliwości, aby KK przecięła średnia kilka razy na którejkolwiek z tych świeczek.

  6. Jack

    @pit65
    Co do dobrego systemu bazowego i gładkiej equity pamiętam ciekawy wpis na blogu Investora:
    http://investor.blox.pl/2012/04/Zmiennosc-to-nie-ryzyko.html

    Nawet jak piszesz jeśli system jest OK i ma względne gładką krzywą equity to moim zdaniem dobrze jest ustawić na niej jakiegoś stopa np. długoterminową średnią lub min. z x sesji, aby się zabezpieczyć przed tym że każdy, nawet najlepszy system w końcu może przestać się sprawdzać – ja mniej więcej w ten sposób podchodzę do tej metody – nie żeby maksymalizować zyski, tylko zabezpieczyć się przed stratami.

  7. pit65

    @COPY
    “w czasie trwania transakcji”

    dzięki za wyprowadzenie mnie ze złej petli myslowej 🙂
    Te 2,3 krotne przecięcia to jest zmora nie tylko equity , ale każdego sygnału ze średnią , a gra equity może byc dodatkowo amplifikowane przez MM oraz dodatkowe opóżnienie gdyż do obróbki powinno sie poza systemem opartym na Close brac equity z poprzedniego słupka , która to equity jest prezentacją opóźnienia płynącego z base system co w konsekwencji powoduje ,że opóznienia sie nakładają i to nie tylko na tzw boczniaku -to co napisałem:
    jeżeli equity tworzy wzglednie gładką hossę na twoim rachunku to kup i trzymaj , nie kombinuj z KK Płaci :-).
    Dlatego ja nie znalazłem jakiegoś praktycznego zastosowania EQ w kombinacji ze średnią, jedynie widzę tutaj grę na dużej zmienności KK w czasie by ją próbować trochę wygładzić względnie uwaga Jack-a o ochronie kapitału ma sens.
    Byc może tak dobre wyniki zawdziecza autor takiej kombinacji wejśc i wyjśc ,że omija te 2,3 przecięcia w czasie trwania sygnału.

    @Jack

    Zgadzam sie z inwestorem ,że zmienność to nie ryzyko.
    Dla mojego depo jest to stop MAXDD określony rozkładem Monte Carlo z wyników historycznych szeregów out of sample dlatego z Equity sie nie bawię.
    Dlatego też w roku 2011 po przekroczeniu 12% DD na systemie wybiciowym podobnym jak inwestor opatrym o zmienność liczoną metoda Wildersa postawiłem stopa i jak widać do dnia dzisiejszego była to decyzja słuszna.
    Od 2 lat gram na innym gdzie mam likwidacyjnego stopa na 16% MaxDD.
    Jak sie zbałamuci to żegnaj Gienia.

  8. pit65

    No i żeby być w zgodzie z Equity to MaXDD także jest pochodna gry z Equity tylko nie jest to forma klasycznej średniej kroczącej 🙂

  9. Lucky

    @pit re: Monte Carlo
    Z mojego doswiadczenia MC nie docenia jak nisko moze zejsc equity i potem odbic. Innymi slowy “jak sie piep&&y to sie piep&&y”. Tak jest nawet w in-sample. IMVHO nalezaloby jakos zwiekszyc limit, np wylaczamy sys jesli DD jest wieksze niz 99.9% max DD z MC.

  10. pit65

    @Lucky

    “jak sie piep&&y to sie piep&&y” – zgadza się
    Te rzeczy nie zależą od MC tylko od synchronizacji systemu z rynkiem.
    NA szczęście ta synchronizacja nie pada momentalnie więc MC może Ci w miarę wcześnie zasygnalizować i pomóc wyliczyc moment wyjścia z sys. w funkcji podejmowanego ryzyka.
    W tym sensie nie jest ważne jak nisko może zejść Equity mierzone rozkładem MC bo stopa ustawisz np, na 95 percentylu chroniąc się przed grubym ogonem strat. To czy potem odbija czy nie nie jest istotne bo MC nie weryfikuje czy przeżywasz najgorszy jego wariant w sensie statystycznym czy warunki na tyle trwale sie zmieniły ,że synchronizacja systemu padła i wymaga zmiany parametrów lub samego systemu. Czerwone światło dostałaś tak czy owak panie Nowak 🙂
    In-sample jest IMO bezużyteczne bo w ostateczności przyjmując zbyt optymistyczne wnioski prowadzi Cię do przeinwestowania aka. przeszacowania ryzyka więc i nominalne wyniki wyplute z analizy MC stają się automatycznie niedoszacowane , aczkolwiek jak ktoś chce to nie zaszkodzi nigdy obliczyc sobie z góry w miarę precyzyjnego stopa , tym bardziej w in-sample gdzie ryzyko overfitting jest bardzo duże, a im większy overfitting tym absolutna obiektywna wartośc predyktywna statystyki MC maleje, tym nie mniej do stopa się nadaje tak samo jak out-sample ,a nawet jest bardziej wskazane 🙂

  11. copy

    PIT, nigdy nie robiłem dodatkowych testów metodą Monte Carlo, czy poleciłbyś jakiś program do tego typu testów?

  12. pit65

    @copy

    1.Equity Monaco
    2.Prosizer-exel
    3.TradeSim
    4.Market System Analyzer-ze stajni Bryanta
    5.Stator

    Do prostej analizy danych wyplutych np. do pliku textowego i anlizy dystrybucji DD czy zysku spokojnie wystarczy darmowa poz 1.

  13. copy

    Poszukałem trochę w internecie, ale nie znalazłem żadnego pluginu do Amibrokera za to są jakieś do Exela, masz jakieś doświadczenie w tym względzie?

  14. pit65

    @copy

    Nie ma na razie nic z tego w AB musiałbys sobie taki plugin napisać.
    Jest jakiś plugin do Metasa , ale to PPP czyli pełna płatna porażka.
    Popracuj z Equity Monaco.
    Wyeksportuj wyniki systemu z AB do pliku tekstowego tylko zyski i straty z pozycji dzień po dniu w kolumnie, będą danymi wejściowymi do EM.
    Poczytaj trochę manuala na stronie EM jak go uzywać.Wszystko proste i dość szybkie w zastosowaniu.

  15. darkh

    @pit
    TradeSim to wlasnie TEN plugin do Metasa 😉

  16. pit65

    @darkh
    NIe jestem pewien ale oryginalny program Larry Sandersa nie jest już wspierany przez autora /not active/
    Za to są co najmniej dwie strony które rozprowadzają program pod nazwa TradeSim.
    http://tradesim.agecon.uiuc.edu/ -podobno nieaktywna /program/
    http://www.compuvision.com.au/ -plugin do Metasa
    NIe testowałem ,ąle spotkałem opinie ,że z 2 linku produkuje nierealistyczne wyniki.

  17. pit65

    Poproszę o moderacje komentarza- linki

  18. pit65

    Te nasze komentarze sa niewiele warte ponieważ nie uwzgledniamy czynnika okołorynkowego.
    Całe to equity granie można potłuc o kant … bo nadchodzi nowe przynajmniej na naszych futkach.
    Prezes głęboko kłania sie do HFT mając nadzieję na większe zyski z prowizji wyrosłe pod jego Gwiazdą jednocześnie jak to z ukłonami bywa nieładnie wypina się na ludzi stosujących podejście analizy historycznej.
    Otóż od 23 września punkcik na FW ma wartość 20 i wymusi przesunięcię środka ciązkości w stronę mniejszych interwałów .Jaki skutek nie wiadomo ale
    Zasieje to niepewność co do kontynuacji dotychczasowych wyników stosowanych przez mechaników opierających swe wnioskowanie np. o walk forward z ostatnich 10 lat.
    Co do mnie to ja mu prezesury finansowac nie będę przynajmniej przez najbliższe 3 lata oczywiście za to wypięcie się 🙂
    Niech se szuka narwąnców prowizyjnych w HFT.
    FX czeka i się nie wypina jak narazie 🙂

  19. kathay (Post autora)

    Wszystkim podziękowania za komentarze i uwagi.

    @pit
    puściłem koment z linkami;
    Copy słusznie wytłumaczył problem z wieloma przecięciami, starałem się pisać jak najjaśniej

  20. kathay (Post autora)

    @Jack
    Brak kosztów powoduje, że pewnie każda średnia przejdzie w teście a żadna w realu.
    IMHO autor zrobił jeszcze inny myk:
    celowo wybrał takie parametry by system mógł sporo nadrobić transakcjami odwrotnymi przy zejściu poniżej KK.Widać to po długich i mało zmiennych DD na pierwszym rysunku poprzedniego wpisu.

  21. kathay (Post autora)

    @Less

    EQ można stworzyć nie tylko na jeden sposób.
    Jak wrócisz sprecyzuj proszę gdzie potrzeba więcej wyjaśnień.
    I miłego urlopu :)Mam nadzieję, że przywieziesz sporą garść
    przemyśleń, którymi nas zarzucisz

  22. kkk

    @pit65: a na FX to nie ma HFT ?? 🙂

  23. kathay (Post autora)

    Poprzednio padło pytanie w jakim programie testować pomysł z KK.
    Na dobrą sprawę można dla prostych pomysłów zrobić to nawet w arkuszu kalkulacyjnym typu excel.
    Nie wiem jak KK trading działa w MT4/MT5, w Amibrokerze brakuje mi tego typu funkcji w pakiecie.

  24. JL

    Przyklad Monte Carlo w AmiBroker jest w ksiazce H. Bandy’ego: Quantitative Trading Systems (http://www.quantitativetradingsystems.com).

  25. pit65

    @Kat
    “w Amibrokerze brakuje mi tego typu funkcji w pakiecie”

    Jest funkcja equity() którą mozna obrabiac do woli, niestety lub stety nie jest to funkcja typu przeciąg i upuść trzeba deczko pogłówkować 🙂
    Prosty przykład pod poprzednim wpisem o KK podałem Robertowi:

    privatepaste.com/5914809d21

    @kkk

    Nie w tym kontekście 🙂

  26. pit65

    @JL

    Są różne zastosowania MC.
    W QTS Bandy nie opisuje przykładu analizy danych wyjściowych z systemu polegających na tasowaniu szeregów czasowych celem uzyskania możliwych rozkładów miast jednego statystycznego pomiaru..
    Opisuje natomiast przykład dodania random szumu do danych wejściowych i analizę różnych Equity powstałych przez dodanie anomalii .
    Innymi słowy MC można stosować niejako “od przodu systemu” jak i “od tyłu”.
    Od przodu testuje sie odporność systemu na zmianę parametrów wejściowych, a od tyłu możliwy rozkład wyników statystycznych przez tasowanie historycznych wyników z wyjścia najlepiej out-sample.
    To są 2 rózne podejścia do MC.

  27. JL

    @copy
    do listy pit65 dodalbym jeszcze nastepujace rozwiazania implementujace MonteCarlo:

    1/ OmniTrader
    2/ MTPredictor
    3/ TradingBlox
    4/ PowerST (to juz soft high end za spora kase)
    5/ Mechanica (Std/Pro, pro podobnie jak PowerST to soft high end)

  28. lesserwisser

    @ kathay

    No i co kolego Tomaszu, ja se wracam z wywczasów a tu ani widu ani słychu o obiecanej equity curve. Jak widać jest po linii i na bazie, o (equity) curve. 🙂

    Widzę, że musze się udać na dalszy odpoczynek, jakże niezasłużony.

  29. kathay (Post autora)

    @less
    rest in peace na tej plaży 😉
    Jak już wrócisz na dobre to proszę sprecyzuj o co musimy się pospierać a obiecuję, że dam ci satysfkację

  30. lesserwisser

    @kathay

    Dziś chwilowo wróciłem do domu. Trzeba będzie trochę poszperać aby się pospierać. 😉 Do zobaczenia za tydzień.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Proszę podać wartość CAPTCHA: *