poniedziałek, 23 lipca 2012

26. Odwracanie pozycji poprzez Stop Loss w strategii podążania za trendem



Po ogólnych rozważaniach dotyczących rodzajów zleceń i typów strategii przychodzi pora na ich ścisłe ujęcie w postaci wzorów. Umożliwi to badanie ich własności i ilościową ocenę działania. Zaczniemy od przykładowej strategii podążającej za trendem. Jak wzmiankowałem, podejście podążające jest typowe i powszechnie stosowane wśród uczestników rynku Forex. Ale oczywiście realizować je można na wiele sposobów – poniżej zaproponuję jeden z nich.

Jak napisałem wcześniej, zamiar odwrócenia pozycji realizuje się poprzez jednoczesne złożenie zleceń Stop Loss oraz zlecenia otwierającego na tym samym poziomie – odpowiednio Buy Stop lub Sell Stop, w zależności od bieżącej pozycji. Oczywiście zlecenia nie muszą zostać zrealizowane. Zależy to od przebiegu kursu w danym horyzoncie czasowym, w którym zlecenia obowiązują. Ten horyzont może wyznaczać np. pojedynczy interwał czasowy.

I to jest właśnie pierwsze założenie proponowanej strategii – poziom odwrócenia jest ustalany na początku interwału czasowego i obowiązuje niezmieniony aż do jego końca. Oznacza to w istocie, że decyzję o swoim działaniu gracz podejmuje raz, na podstawie dostępnych dlań danych z wszystkich poprzedzających interwałów oraz kursu początkowego interwału bieżącego. Dalsze ruchy, aż do końca interwału wykonuje Rynek. Celowo napisałem ten wyraz z wielkiej litery, aby podkreślić jego rolę jako drugiego uczestnika tej gry. Ale niekoniecznie przeciwnika.

Drugie założenie, nieco mniej intuicyjne i przez to chyba trudniejsze do zaakceptowania, polega na określaniu poziomów odwrócenia pozycji relatywnie do kursu początkowego, czyli Open. Rozwijając tę myśl: zajmując pozycję krótką, poziom odwrócenia ustawić należy w ustalonej odległości powyżej kursu otwarcia. Tam nastąpi ewentualne zamknięcie poprzez Stop Loss i otwarcie poprzez Buy Stop. Z kolei zajmując pozycję długą poziom odwrócenia ustawia się w ustalonej odległości poniżej kursu otwarcia. Tam odpowiednio będą oczekiwać Stop Loss i Sell Stop.

W istocie oznacza to, że decyzja gracza sprowadza się do ustalenia tej odległości, oznaczanej dalej literą t. Właściwy poziom odwrócenia wyznaczy już Rynek. Motywacje do stosowania tego rodzaju strategii, jak również dyskusje na temat wszystkich ich wad i zalet zapełniłyby jeszcze wiele stron, dlatego będziemy do nich wracać w przyszłości. Natomiast teraz chciałbym jak najszybciej przedstawić wzory, pozwalające zbadać jej własności w praktyce.

Występują tutaj znane symbole OHLC. Jak to już poprzednio wyjaśniałem przy okazji wzorów związanych z oszacowaniem zmienności, symbol n występujący tutaj jest to po prostu indeks bieżącego rekordu. Dodatkowo każdy z kursów OHLC występuje w dwóch wersjach, oznaczonych indeksami górnymi: BID i ASK. Stosowanie tych symboli jest podyktowane tym, że np. pozycja długa jest otwierana po kursie ASK, ale zamykana już po kursie BID. Po takim kursie zarazem jest otwierana pozycja krótka, która później będzie zamykana po kursie ASK. I w ten sposób cykl się powtarza – oczywiście zwykle na zupełnie innych poziomach.

Zaczniemy od najprostszego zagadnienia, jakim jest napisanie wzorów na przejścia pomiędzy pozycjami. Wymaga to wprowadzenia odpowiednich symboli. Pozycję długą oznaczać będzie liczba +1, natomiast krótką –1. Jest to chyba dość naturalna symbolika, która – konsekwentnie stosowana - dodatkowo będzie się przydawać w implementacjach i symulacjach. Potrzebna jest też zmienna przechowująca bieżącą pozycję. Proponuję symbol 



jako wartość pozycji na końcu interwału o indeksie n. Parametr t jest tutaj niezbędny, ponieważ wartość ta zależeć będzie od pozycji poprzedzających, jak również od odległości t determinującej poziom odwrócenia.

Wzory są relatywnie proste i dają się ująć we wspólne wyrażenie warunkowe. Warto zauważyć, że pozycją początkową na interwale n-tym jest 


czyli pozycja końcowa z interwału poprzedzającego.


 
Przypadki 1 i 3 oznaczają brak odwrócenia pozycji. W przypadku pozycji krótkiej sprowadza się to do nieprzekroczenia przez kurs maksymalny ustawionego poziomu. Symetrycznie, dla pozycji długiej kurs minimalny nie schodzi do poziomu odwrócenia. Natomiast przypadki 2 i 4 oznaczają osiągnięcie lub przekroczenie (odpowiednio w górę lub w dół) poziomu i uaktywnienie zleceń zamknięcia i otwarcia.

Formuły te pozwalają wyznaczać sekwencje pozycji zajmowanych przez gracza na podstawie notowań w rekordach OHLC dla różnych przypadków parametru t. Czyli dokonywać najprostszych symulacji. Jednak tym, co nas najbardziej interesuje jest badanie skuteczności strategii poprzez wskaźniki zysku i ryzyka. W tym celu będą potrzebne wzory określające zyski i straty jako funkcje odpowiednich danych i parametrów. To zostanie przedstawione w kolejnej części.

5 komentarzy:

  1. Użycie litery "t" do oznaczenia progu zamknięcia/otwarcia pozycji to był bardzo zły pomysł - kojarzy się to z oznaczeniem czasu i jest bardzo mylące... :(
    No cóż... niestety co autor to inne oznaczenia - podstawowy problem podręczników do matmy :P.
    Do tego nie rozumiem założeń strategii - w jaki sposób ma ona przynieść dochód jak pozycja jest zamykana przez stop loss? A może coś pominąłem?
    A w ogóle to czy w tym wypadku nie lepiej użyć trailing stopa? :]

    OdpowiedzUsuń
    Odpowiedzi
    1. Literę "t" zastosowałem jako skrót od threshold, czyli próg. Skrót może i nie najszczęśliwszy, ale trudno, już tak zostanie...
      Co do dochodowości, to stop loss jest zamknięciem pozycji ale od razu jest otwierana przeciwna. Więc owszem, do chwili zamknięcia profitu nie będzie, tylko strata, natomiast celem jest złapanie startującego trendu w przeciwną stronę, więc zysk będzie pochodzić w zamierzeniu z okresu po odwróceniu i powinien przewyższać koszt odwrócenia.

      Usuń
  2. Wybacz, że Cię tak męczę, ale chce się upewnić czy dobrze rozumuję tą ideę - krótki przykład bez zaliczenia SL i odwrócenia pozycji.
    1. Analizujemy pierwszy słupek. Otwieramy pozycję długą i ustawiamy SL na poziomie Open - t
    2. Cena sobie wariuje w obrębie H i L ale nie dociera do SL
    3. Ostatecznie słupek się zamyka i są dwie opcje CO - ale jeśli dobrze rozumiem to nie jest istotne.
    4. Teraz pytanie: mamy nowy słupek. Czy jeśli nie zaliczyliśmy poprzednio SL to rozumiem, że poprzednia pozycja jest w dalszym ciągu otwarta? I nie ma tu znaczenia czy CO z poprzedniego słupka? Jeśli tak to co dzieje się ze SL? Czy on jest w dalszym ciągu na poprzednim poziomie (co wydaje mi się bez sensu), czy może aktualizujemy go do poziomu Onew - t (gdzie Onew to cena Open z nowego słupka)? - czyli taki nietypowy trailing stop?
    Z góry dzięki za wyjaśnienie problemu :)

    OdpowiedzUsuń
    Odpowiedzi
    1. Ups, chyba w komentarzach nie można używać znaków specjalnych - w tym znaków większości i mniejszości (nawiasów ostrokątnych)...
      w punkcie 3. powinno być: Ostatecznie słupek zamyka się i są dwie opcje C>O lub C<O
      Podobnie należy zamienić "CO" z punktu 4

      Usuń
    2. Tak, dokładnie tak należy rozumieć pp. 1-3. A co do pytania w p. 4, to poziom odwrócenia (czyli SL) jest aktualizowany właśnie dokładnie do ceny o takim samym "t" ale liczonym już w odniesieniu do nowego kursu Open. Tak jak napisałeś.
      Skojarzenie ze stopem podążającym jest trafne i równie trafne jest określenie "nietypowy". Można powiedzieć, że ma "połowiczne" własności trailing stopa: normalny tr.stop jest "podciągany" (i jak najbardziej można to aktualizować właśnie względem kursów Open) ale tylko wtedy, kurs idzie w stronę zyskowną. W przypadku "adverse excursion" poziom stopa jest niezmieniany.
      Natomiast w proponowanym przeze mnie, nieortodoksyjnym :) modelu jest pełna symetria - aktualizujemy zawsze względem nowego Open.

      Usuń