Po
zakończonych niedawno dygresjach na temat struktur
korelacji i autokorelacji pora
powrócić do głównego
wątku naszych rozważań,
czyli rozliczeń strategii w postaci wpływów i obciążeń
wynikających z utrzymywania i/lub odwracania pozycji. Do
implementacji pozostały wzory
definiujące zyski ze strategii antytrendowej.
Zatem teraz omówię formułę, którą umieścimy w odpowiedniej
zakładce roboczego arkusza.
Analogicznie
jak w przypadku rozliczeń strategii podążającej za trendem, nowe
zakładki będą mieć nazwy charakteryzujące istotę strategii. W
przypadku podejścia kontrariańskiego naturalny jest przedrostek
Cont.
A piszę o zakładkach w liczbie mnogiej, ponieważ pamiętając o
założeniu neutralnej pozycji początkowej
i wykorzystując koncepcję wirtualnych
inwestorów,
każda z trajektorii będzie realizowana w dwóch wariantach, które
następnie będą scalane tworząc właściwą historię kapitału
gracza antytrendowego.
Przejdźmy
zatem do zakładki
odpowiadającej sytuacji gracza antytrendowego i rozpoczynającego od
pozycji długiej, która to zakładka uzyskała nazwę ContGainL.
Jej formuły będą oczywiście opierać się o wzory wyprowadzone tutaj . Zarazem konstrukcja jest oparta na prostej
sztuczce implementacyjnej,
która zdecydowanie ułatwia realizację obliczeń. Sztuczka została
po raz pierwszy użyta przy okazji implementacji analogicznych formuł dla gracza podążającego.
Przypomnę
krótko, że opiera
się ona na spostrzeżeniu, że warunki występujące we wzorach na
rozliczenia pozycji zostały
już przez nas raz zaimplementowane
w zakładkach symulujących odwrócenia pozycji. Wystarczy zatem
sięgnąć do nich i wykonać odpowiednie porównania. A ponieważ
warunki zestawiające wszystkie możliwe układy pozycji w dwu
następujących po sobie interwałach są wzajemnie
wykluczające,
można zapisać je w postaci oddzielnych wyrażeń połączonych
znakiem dodawania:
IF(AND($ContL.B2=1;$ContL.B3=1);
$quotes.$F3-$quotes.$F2;0)+
IF(AND($ContL.B2=1;$ContL.B3=-1);
2*($quotes.$C3-$quotes.$A$4*B$1)-($quotes.$F2+$quotes.$J3);0)+
IF(AND($ContL.B2=-1;$ContL.B3=-1);
$quotes.$J2-$quotes.$J3;0)+
IF(AND($ContL.B2=-1;$ContL.B3=1);
($quotes.$J2+$quotes.$F3)-2*($quotes.$G3+$quotes.$A$4*B$1);0)
Poniżej
prezentuję fragment nowo powstającej zakładki w roboczej wersji
arkusza.
Implementacja
całości algorytmu, uwzględniając scalanie trajektorii
startujących od pozycji długiej i krótkiej, będzie kontynuowana w
następnym odcinku.
Brak komentarzy:
Prześlij komentarz