sobota, 18 sierpnia 2012

Przedmiot zainteresowania – prosty lecz działający system transakcyjny na EURUSD

Rozważania wstępne siłą rzeczy mają zawsze charakter dość ogólny i mogą wydawać się zbyt abstrakcyjne. Dlatego też będę starał się przeplatać je konkretnymi przykładami systemów, początkowo prostych, później stopniowo coraz bardziej złożonych. A efekty ich działania w postaci symulacji zajmowanych pozycji oraz zysków i strat będę prezentować dla konkretnych par walutowych. Dzisiaj pierwszy z takich przykładzików.

System jest prosty, wręcz banalny, zatem z pewnością nie jest przeznaczony do realnej gry, ale nie to jest celem jego prezentacji. Ma on objaśnić ideę konstrukcji i rozbudowy systemów – od elementarnych do coraz bardziej złożonych. Oto więc założenia:

  1. system ma charakter podążania za trendem – wybicie w górę to sygnał zajęcia pozycji długiej, a w dół – krótkiej,
  2. gracz jest stale obecny na rynku, zajmując naprzemiennie pozycje długie i krótkie o stałej wielkości, w tym przykładzie 1 lota, początkowa pozycja jest długa,
  3. decyzje są podejmowane wyłącznie na podstawie kursów OHLC w ustalonych przedziałach czasowych, tutaj są to interwały tygodniowe,
  4. odwrócenie pozycji odbywa się poprzez jednoczesne zlecenia StopLoss i odpowiednio BuyStop/SellStop na tym samym poziomie,
  5. poziom odwrócenia jest ustalany na początku interwału w stałej odległości w górę/dół od kursu Open i obowiązuje aż do końca interwału,
  6. minimalny krok notowań to 0.0001, spread 2 punkty a poślizg przy realizacji zlecenia też wynosi 2 punkty, nie są uwzględniane rolowania pozycji.

Przykład pokazuje efekty działania systemu dla pary EURUSD, jednak równie dobrze mógłby dotyczyć jakiejkolwiek innej pary o rozsądnej płynności. Dane pochodzą z serwisu transakcyjnego brokera FXClearing, który zapewnia warunki zbliżone do opisywanych – brak punktów swapowych a przy tym konto mikrocentowe, nieocenione przy eksperymentowaniu na realnym rynku.

System opisany powyżej od jakiegoś czasu drobiazgowo „wałkuję” na moim pierwszym blogu. Tam można znaleźć szczegółowo rozpisane wzory matematyczne definiujące warunki na odwrócenia pozycji, jak również ich rozliczenia tzn. zyski i straty osiągane w kolejnych interwałach. Tutaj chcę skupić uwagę na efektach jego działania i wnioskach stąd płynących. Do symulacji uwzględniłem dane z okresu od początku 2011 roku do chwili obecnej.

Jak nietrudno zauważyć, opis systemu pozwala na niemal jednoznaczne określenie pozycji zajmowanych przez gracza, jego zysków i strat. Dlaczego „niemal”? Ano dlatego, że wymagane jest określenie odległości determinującej poziom odwrócenia opisanej w p. 5. Odległość ta jest zatem parametrem strategii, czyli otrzymujemy tutaj nie jeden, a całą rodzinę systemów transakcyjnych. Aby to zilustrować, poniżej przedstawiam przebiegi skumulowanych zysków/strat dla poszczególnych wartości parametru. Dodatkowo w tle pokazane są zmiany kursu bazowej pary walutowej, oczywiście przeskalowane i przesunięte tak, aby wszystko zmieściło się na wspólnym wykresie.



Jak widać skuteczność systemu, mierzona łącznym skumulowanym zyskiem osiągniętym na zakończeniu badanego okresu, jest silnie zależna od parametru. Oczywiście występują tutaj jeszcze inne czynniki, np. wpływ pozycji początkowej, którą przyjęto jako długą, choć wartość ta nie jest w żaden sposób wyróżniona – równie dobrze mogłaby być krótka. Warto przy tym podkreślić, że dla odpowiednio dużych wartości parametru początkowa długa pozycja nigdy nie zostaje odwrócona, co odpowiada strategii typu Buy-and-Hold (w istocie na wykresie linia odpowiadająca tej wartości parametru pokrywa się z linią obrazującą przyrosty kursów pary walutowej). Nietrudno zauważyć, że gdyby początkowa pozycja była krótka, to wyniki dla tych wartości byłyby dokładnie przeciwne. Do kwestii znaczenia pozycji początkowej będę jeszcze wracać.

Ten prosty eksperyment obliczeniowy miał na celu łagodne wprowadzenie do zagadnienia wpływu parametrów na skuteczność systemów. W dalszych etapach będę zatem drążyć temat dynamicznego doboru tych parametrów, w szczególności poprzez metody optymalizacji.

Kontynuacja wątku tutaj.

4 komentarze:

  1. Tworzenie systemów korzystających ze stałej wielkości pozycji jest błędem. Takie systemy nie dają możliwości dostosowania do wielkości konta. Ponadto, co gorsza, zaniżają maksymalne procentowe obsunięcie kapitału.
    Jeśli system w pierwszym okresie działania wygeneruje spore zyski i potem wygeneruje serie strat, to zaobserwowane obsuniecie kapitału będzie wyglądało niegroźnie. W rzeczywistości dla osoby zaczynającej grać w tamtym momencie może oznaczać bankructwo.

    Więcej tutaj:
    http://mechanicalforex.com/2011/03/trading-fixed-position-sizes-the-big-problem-with-this-lot-sizing-approach.html

    Polecam ten blog.

    OdpowiedzUsuń
    Odpowiedzi
    1. Bynajmniej nie sugeruję, żeby w realnej grze stosować jedną stałą wielkość pozycji. Natomiast badanie własności takich systemów traktuję jako jeden z etapów do konstrukcji systemu docelowego. Optymalizacja wielkości pozycji będzie kolejnym etapem, realizowanym po znalezieniu elementarnej strategii o dodatniej wartości oczekiwanej (oczywiście empirycznej). Te cele warto traktować oddzielnie, to zwiększa przejrzystość struktury systemu.
      Ujmę to słowami pewnej traderskiej mądrości: "Mając wygrywający system podstawowy, możemy zwiększyć jego skuteczność stosując mądre zarządzanie kapitałem. Natomiast kiepskiemu systemowi nie pomogą żadne techniki doboru wielkości pozycji - jest on z góry skazany na klęskę w długim terminie".

      Usuń
  2. System podążający za trendem + stała obecność na rynku - dla mnie to się wyklucza :) Chyba, że założymy, że na rynku stale panuje jakiś wyraźny trend spadkowy lub wzrostowy, co moim zdaniem (i zapewne nie tylko) jest nieprawdą. To tyle na początek o trendach.

    Pozdr.

    ZP

    OdpowiedzUsuń
    Odpowiedzi
    1. Oczywiście że na każdym rynku panują okresy beztrendowe. Jednak nie wyklucza to sensu systemu stale obecnego na rynku. Są to własności przeciwstawne, ale - moim zdaniem - bynajmniej nie sprzeczne. Konstrukcja systemów tego typu nie jest jednak zadaniem banalnym.
      Natomiast co do systemów typu wejście-wyjście: zauważmy, że fakt istnienia trendu można stwierdzić dopiero jakiś czas od jego rozpoczęcia. Zatem system tego typu ma również wiele okazji do błędów: "przegapianie trendów", fałszywe wejścia, przedwczesne opuszczanie pozycji. Stąd też moja hipoteza: żadna z tych koncepcji nie zapewnia automatycznej przewagi nad drugą. Wszystko zależy od konkretnej realizacji systemu.

      Usuń