W niedawnym tekście przedstawiłem ogólną propozycję funkcji kryterium jako ilorazu
wskaźnika zysku przez wskaźnik ryzyka. Dzisiaj kolejny przykład
pary tak skonstruowanych wskaźników wraz z efektem symulacji ich
działania dla systemu transakcyjnego o dwóch poziomach hierarchii.
Tym, co odróżnia konstrukcję tej propozycji od poprzednio
przedstawianych jest jej jawna zależność od upływu czasu,
mierzonego kolejnymi interwałami. Innymi słowy – wartość
wskaźników jest zależna od chronologicznego układu obserwacji
zawartych w badanej sekwencji.
Dla
porównania: poprzednio stosowane miary zysku, zarówno średnia jak
i mediana, miały tę własność, że ich wartości nie były
zależne od kolejności, w jakiej występowały dane wejściowe. W
języku matematycznym własność ta jest formalnie określana jako
niezmienniczość na permutacje zbioru danych wejściowych. Podobnie
dla miar ryzyka takich, jak odchylenie standardowe, odchylenie
bezwzględne czy nawet odstęp międzykwartylowy.
Warto
zauważyć, że z tego schematu wyłamuje się maksymalne obsunięcie,
które z samej definicji zależy od kolejności próbek, gdyż mierzy
spadki kapitału względem wcześniej osiągniętych maksimów.
Natomiast innym wskaźnikiem ryzyka, na który chciałbym zwrócić
uwagę jest średniokwadratowa odległość krzywej kapitału gracza
od przybliżającej ją prostej regresji. Szczegółowe omówienia
własności powyższego wskaźnika będą jeszcze omawiane w
przyszłości, natomiast teraz chciałbym po raz pierwszy przybliżyć
go i jego zastosowanie do optymalizacji parametru.
Definicja
opiera się na wyznaczeniu sum kwadratów różnic pomiędzy prostą
przechodzącą przez początek układu współrzędnych i o zadanym
nachyleniu alfa a ciągiem skumulowanych zysków, czyli po
prostu kolejnych sum częściowych badanej sekwencji:
To jest definicja ogólna, ponieważ prosta może być dowolna. Natomiast wyznaczając takie alfa, dla którego powyższe wyrażenie osiąga minimum, otrzymujemy prostą regresji liniowej. I właśnie współczynnik kierunkowy tej prostej przyjmiemy jako miarę zysku:
Słuszne
jest zapewne rozumowanie, że im większe nachylenie tej prostej, tym
szybszy przyrost kapitału. Zarazem rozrzut punktów na linii
kapitału wokół tej prostej określa zmienność a zatem może
służyć do oceny ryzyka. Z tego wynika konkretna postać formuły
na optymalizację parametru, zgodnie ze schematem ogólnym
Rezultaty
zastosowania powyższego kryterium do systemu hierarchicznego o dwóch
poziomach przedstawia poniższy wykres. Zakres rekordów notowań
tygodniowych EURUSD, jak również konwencja kolorystyczna wykresu są
takie same jak dla poprzednich eksperymentów z tej serii.
Dodatkowo
warto wspomnieć że wprowadzona tutaj liczbowa ocena stabilności wynosi 15 300. Oznacza to w szczególności, że dla tego akurat
zbioru danych i parametrów działanie strategii jest najmniej
stabilne wśród wszystkich dotychczas przebadanych wariantów.
Niemniej jednak warto poznawać nowe funkcje, jako kandydatów na
kryteria optymalizacji dla nowo tworzonych systemów.
Kontynuacja wątku tutaj.
Kontynuacja wątku tutaj.
Stabilność to nie wszystko, liczyłem również średni zysk (i ryzyko) po wszystkich m,
OdpowiedzUsuńżeby porównać to z wynikiem systemu o dwóch poziomach adaptacji.
Wydaje się, że w tym przypadku powyższe miary mogłyby być nawet lepsze od dotychczasowego lidera (CG/MDD).
Dobry pomysł. Myślę, że skorzystam z Twojej uwagi i wyliczę również te wartości. Wyniki spiszę i podam, pewnie w postaci tabelki. Tym bardziej, że w zapasie mam jeszcze jedną - chyba już ostatnią w tej serii - funkcję kryterium.
UsuńDzisiejsze wzory są mało użyteczne z punktu widzenia implementacji, gdyż raczej nie będziemy przeszukiwać całego zbioru continuum dla optymalnego alfa :). Z medianą jeszcze można sobie poradzić stosując iteracyjnie sortowanie przez wstawianie.
OdpowiedzUsuńJasne, przeszukiwanie (nawet na skończonej siatce wartości z zadanym skokiem) byłoby zabójcze z punktu widzenia złożoności obliczeniowej. Oczywiście wykres który dzisiaj pokazałem, wyznaczyłem w symulacji z zastosowaniem jawnych wzorów na wartości tych wskaźników, które udało mi się wyprowadzić. Jest to temat na tyle ciekawy i złożony, że podam go w oddzielnym wpisie, może nawet niejednym.
UsuńDobry system, powinien uzależniać wielkość pozycji od posiadanego kapitału. Jeśli system utrzymuj stałą zyskowność transakcji w czasie, to krzywa kapitału będzie funkcją wykładniczą. Czy regresja liniowa będzie miała sens? Przyznaję, że we wzory się nie wgłębiałem, bo jestem zbyt leniwy i mogę się mylić.
OdpowiedzUsuńNie jestem też taki pewien, czy warto poznawać kolejne funkcje optymalizacji systemów. Może lepiej poświęcić czas na jakieś bardziej konkretne zadania i użyć jednego z wielu istniejących miar, np. Ulcer Index (też zależy od kolejności obserwacji)?
Kwestię doboru wielkości pozycji będę traktować jako zagadnienie osobne, niejako nadbudowę na system elementarny działający stale na jednej pozycji. Nawiązuję tutaj do dyskusji, jaka wynikła po pierwszym omówieniu elementarnego systemu: http://inteligentnesystemy.blogspot.com/2012/08/1-przedmiot-zainteresowania-prosty-lecz.html?showComment=1345921567372#c8071517279031821038
UsuńNatomiast nawet w przypadku systemów z dynamicznym doborem pozycji taką miarę można z powodzeniem stosować, wystarczy przetransformować linię kapitału za pomocą funkcji logarytmicznej. Wtedy trend wykładniczy przejdzie na liniowy i regresja ma sens.
Co do wielości wskaźników, to faktycznie namnożyło się ich już, ale implementacyjnie nie było to problemem, bo każdy z nich to parę linijek, a w symulacjach wybór robi się przez prostego switch-a.