Forex/ya_Wieloryb1/Zmiany

Z Rainsted
Skocz do: nawigacji, wyszukiwania

Drugi etap prac

Pierwszy etap prac został zakończony po uzupełnieniu warunków otwarcia o przykłady z H1 oraz H4, osiągnięty został również wskaźnik zysku powyżej 5.0 (wersja 253.241). Drugi etap prac obejmuje dalsze ulepszenia, może też się zakończyć integracją z innym robotem. Zagadnienia do rozwinięcia:

  • Otwieranie czwartej pozycji (na pierwszej zmianie koloru).
  • Wybór agresywności zabierania zysku (potrzebny do H4, będzie do przetestowania z M15).
  • Uwzględnianie kierunków wynikających z H1, H4 i D1.
  • Automatyzacja przeglądu warunków.
  • Lepsze określenie TP dla pierwszego i drugiego ruchu (liczenie świeczek, wykrywanie świeczek wyczerpania).
  • Analiza FNFT.

Wersja 254.090

  • Poprawka w powiększaniu tablicy modułu Audytor (zapamiętywanie otwieranych pozycji w celu przewijania wykresu). Wcześniejsza wersja robota (uruchomiona na demo) zalogowała przekroczenie indeksu i otworzyła tylko jedną pozycję zamiast dwóch. Działanie będzie nadal obserwowane. Użycie modułu Audytor było potrzebne do testów na danych historycznych, cel użycia na żywo musi jeszcze być przemyślany i być może należałoby to wyłączyć.
  • Ponieważ dla przykładów z H4 początek wirtualnej doby został ustalony na UTC+1 z czasem letnim dla USA (a dla M15 nie ma to znaczenia), ponownie zostały zoptymalizowane godziny otwierania (uwzględniane dla niektórych wariantów). Po optymalizacji godziny te to >9:00 i <18:00 (pierwsze możliwe otwarcie to 9:15, ostatnie to 17:45). Ustawienia te są zapisane na stałe i ewentualnie później będzie to przerobione na pobierane z parametrów otwarcia rynku.
  • Dodany został mechanizm rozpoznawania przerwy w danych. Dla aktualnej świecy wyliczany jest znacznik czasu zamknięcia następnej i w tym czasie jest spodziewana aktualizacja ceny OnTick(). Jeśli aktualizacja ceny zostanie wykonana po czasie zapamiętanym w znaczniku (czyli brak danych dla świecy kolejnej po aktualnej), zostanie to potraktowane jako konieczność ponownego wczytania danych historycznych, podobnie jak po uruchomieniu. Główne zastosowanie to przywrócenie prawidłowej pracy robota po hibernacji komputera. Obserwowane będzie jeszcze pomijanie oczekiwania na świeczki podczas przerwy w notowaniach, wykorzystujące funkcję SymbolInfoSessionTrade(). Mechanizm przeładowania danych jest wyłączony, gdy robot jest uruchamiany w Testerze Strategii. Do przemyślenia jest zastosowanie dla M1/M2 w godzinach nocnych, ponieważ zdarzają się minuty bez odnotowanej ceny (zauważone np. dla DE40) i przeładowywanie w takim przypadku nic nie poprawi.
  • Wykonane pierwsze testy konceptu FNFT (sformatowanego podobnie do RSI), do puli warunków dodane jako >30, >70, <30 i <70. Nieznacznie poprawia się wskaźnik zysku dla niektórych wariantów. Słabe rezultaty mogą wynikać z niedoskonałego wyliczania "wskaźnika" FNFT, jak również może mieć on większe znaczenie przy dużych odległościach od średnich (niż odbicie od SMA200). Przydatność będzie jeszcze weryfikowana przy kolejnym przeglądzie warunków (dla wariantu z maską 128 wskaźnik zysku zmalał do 1.57 dla pozycji SELL, za to niemal wszystkie pozycje BUY są zyskowne). Ogólnie na danych od 2019 zysk przekroczył $4300 dla 0.1 lota, a wskaźnik zysku jest 5.75. Warunki FNFT pominęły przykład z maską 64, więc będzie to musiało być przeanalizowane ponownie. Również pogorszył się wynik dla przykładu z maską 512.
  • Przy obecnej optymalizacji warunków dla poszczególnych wariantów nie występuje seria pozycji stratnych od września 2024.

Pierwszy etap prac

Pierwszy etap obejmuje następujące zagadnienia:

  • Warunki otwierania podanych przykładów na EURUSD/M15.
  • Zamknięcie zysku na pierwszej pozycji (druga pozycja jest trzymana dłużej, aby zamknąć większy zysk).
  • Zamknięcie zysku na drugiej pozycji (niezależnie od pierwszej).
  • Otwarcie trzeciej pozycji.
  • Symetria zagrań oraz wskaźnik zysku powyżej 2.

Głównym zakresem testów są przedstawione w filmie przykłady od maja do sierpnia 2024 na EURUSD. Na innych filmach pokazywane są zagrania na USDJPY.

EURUSD, M15

  • Filtr — ustawienie tylko jednego bitu w masce, wygodne do uruchomienia w optymalizacji w celu sprawdzenia każdego wariantu osobno.
  • Maska — liczba dodana do sumy załącza dany wariant.
  • Przykład — dzień i miesiąc przykładu (rok 2024)
  • Wersja — numer wersji robota w nagłówku, a w wierszu: liczba pozycji na danych od 2019, wskaźnik zysku, procenty zyskownych pozycji BUY oraz SELL.
Filtr Maska Przykład Wersja 249.580 Wersja 249.641 Wersja 249.701 Wersja 251.210 Wersja 252.011 Wersja 252.060 Wersja 252.120 Wersja 252.130 Wersja 253.241
0 1 05-31 29, 2.76, 55%, - 61, 1.49, 55%, 47% 108, 1.93, 48%, 39% 117, 1.44, 75%, 41% 82, 2.13, 55%, 57% 82, 2.08, 55%, 57% 40, 11.86, 82%, 83% 40, 11.86, 82%, 83% 49, 4.40, 86%, 56%
-1 2 06-03 6, 2.90, 50%, - 37, 2.13, 43%, 50% 64, 1.51, 42%, 54% 49, 1.02, 44%, 32% 105, 1.79, 52%, 66% 105, 1.80, 52%, 66% 63, 2.41, 67%, 67% 53, 3.24, 67%, 65% 24, 4.64, 58%, 75%
-2 4 06-07 66, 1.43, -, 45% 27, 6.86, 69%, 57% 50, 10.55, 70%, 50% 70, 2.33, 76%, 47% 74, 4.06, 70%, 70% 74, 3.99, 70%, 70% 74, 3.99, 70%, 70% 74, 3.99, 70%, 70% 12, 55.56, 100%, 67%
-3 8 06-12 39, 1.70, 41%, - 40, 1.99, 53%, 48% 70, 1.24, 33%, 33% 104, 1.15, 70%, 38% 63, 2.03, 52%, 50% 63, 2.09, 52%, 47% 63, 2.10, 52%, 47% 32, 2.81, 79%, 23% 24, 6.05, 83%, 83%
-4 16 07-03 56, 1.46, 48%, - 6, 1.15, 50%, 50% 16, 1.13, 50%, 33% 10, 4.24, 100%, 50% 28, 2.43, 61%, 50% 28, 2.43, 61%, 50% 31, 2.77, 67%, 50% 21, 5.19, 77%, 63% 16, 15.68, 60%, 100%
-5 32 07-10 31, 2.13, 67%, - 35, 2.00, 71%, 50% 64, 1.48, 67%, 33% 69, 1.10, 71%, 51% 37, 1.28, 48%, 50% 27, 2.97, 57%, 83% 27, 2.96, 57%, 83% 27, 2.96, 57%, 83% 24, 2.69, 50%, 75%
-6 64 07-23 7, 2.36, -, 71% 19, 3.38, 56%, 70% 36, 3.57, 55%, 56% 54, 2.45, 76%, 39% 71, 2.80, 54%, 57% 71, 2.88, 54%, 57% 86, 2.49, 83%, 55% 136, 2.86, 79%, 67% 27, 4.64, 71%, 77%
-7 128 07-29 19, 1.38, -, 47% 63, 1.85, 45%, 50% 118, 1.77, 36%, 41% 114, 1.57, 63%, 42% 75, 2.77, 61%, 64% 75, 2.79, 61%, 64% 44, 2.86, 50%, 65% 34, 3.40, 56%, 67% 32, 4.64, 70%, 68%
-8 256 08-02 68, 2.36, 51%, - 19, 2.46, 60%, 56% 30, 3.19, 50%, 37% 81, 1.39, 73%, 34% 137, 1.96, 51%, 57% 111, 2.55, 55%, 63% 113, 2.36, 53%, 63% 113, 2.36, 53%, 63% 34, 2.93, 67%, 50%
-9 512 08-13 23, 1.24, 35%, - 14, 2.40, 50%, 75% 24, 2.32, 50%, 70% 18, 1.31, 100%, 57% 412, 1.45, 59%, 57% 194, 2.71, 71%, 63% 200, 3.04, 69%, 67% 97, 3.04, 85%, 74% 87, 4.71, 91%, 59%
-10 1024 08-23 9, 4.18, 55%, - 44, 3.71, 71%, 61% 82, 1.91, 55%, 41% 109, 1.66, 71%, 42% 60, 3.54, 84%, 59% 60, 3.44, 84%, 59% 60, 3.44, 84%, 59% 60, 3.44, 84%, 59% 38, 9.57, 90%, 56%
-11 2048 08-28 35, 1.87, -, 48% 31, 6.22, 71%, 54% 54, 4.53, 58%, 43% 50, 3.19, 67%, 57% 48, 9.46, 100%, 76% 48, 9.56, 100%, 76% 48, 9.59, 100%, 76% 48, 9.59, 100%, 76% 28, 10.94, 86%, 86%

Ze względu na podobieństwo warunków wielu wariantów często zdarza się jednoczesne ich spełnienie, przez co włączenie wszystkich wariantów da mniejszą liczbę pozycji niż suma powyższych.

Wersja 253.241

  • Wyłączony mechanizm, który mógł przestawiać zyskowne pozycje na przedwczesne zamknięcie na BE, ponieważ po spełnieniu warunków nie był uwzględniany kierunek pozycji. Szybkie sprawdzenie wykazało, że nie ma to wpływu na zysk i wskaźnik zysku na danych historycznych, natomiast mogło ukierunkować optymalizację na pominięcie potencjalnych zysków.
  • Ponowny przegląd warunków otwierania pozycji po zlokalizowaniu błędu w określaniu typu świeczek (nieprawidłowe zaokrąglenie). W miarę możliwości warunki są zaostrzane tak, aby wskaźnik zysku przekraczał 3.0 (ewentualnie 2.5, jeśli wariant wykazuje asymetrię, tzn. gdy zwiększany wskaźnik zysku w jedną stronę skutkuje zmniejszeniem w stronę przeciwną).
  • Dodany mechanizm zapisywania listy otwieranych pozycji do pliku, plik ten następnie może być wczytany wskaźnikiem ya_Audytor w celu sprawniejszego przewijania wykresu do istotnych świeczek. Jest to jednoczenie zaczątek mechanizmu śledzenia, który docelowo ma pozwolić na analizę, jak kolejne wersje robota radzą sobie z miejscami, gdzie powinna albo nie powinna być otwierana pozycja.
  • Wstępnie dodany drugi ring, mający składać świeczki M15 w H1 i obliczać SMA20 i SMA200 dla H1. Wynika to z obserwacji, że nieudane wybicia od SMA200/M15 często rozbijają się na SMA200/H1, co wymaga dalszej analizy statystycznej. Aktualny mechanizm obliczania średnich jest oparty na buforowaniu, co pozwala obliczać wstępne wartości średnich przed zamknięciem świecy (testowane na D1 w celu otwarcia pozycji przed godziną zamknięcia), ale również komplikuje obsługę wielu okresów.

Wersja 252.130

  • Przegląd wariantów pod kątem warunku pomijania godzin "nocnych". W większości przypadków ograniczenie godzin zwiększa wskaźnik zysku, ale zmniejsza zysk. Wcześniej było to uwzględnione w dwóch wariantach (1 i 64), zostało dodane w dwóch i wyłączone w jednym (obecnie: 1, 8, 16, 512). Od 2019 roku zmniejszyła się liczba otwieranych pozycji o około 100, a ogólny wskaźnik zysku zwiększył się do 3, zysk jest nieznacznie większy. Sprawdzenie godzin granicznych nie przyniosło lepszego wyniku.
  • Sprawdzony ponownie wpływ pełni Księżyca na efektywność zagrań. Filtr pomijania pełni był dla wariantu z maską 256, obecnie dodany również do 128 oraz 2. Zysk nieznacznie większy, wskaźnik zysku zwiększył się do 3.27. W wielu innych wariantach powstrzymanie otwierania pozycji podczas pełni również poprawia wskaźnik zysku, jednak zmiany są nieznaczne i dają mniejszy zysk.

Wersja 252.120

  • Poprawione warunki dla wariantów z maską 1, 2, 16, 64, 128. Na danych EURUSD od 2019 wskaźnik zysku sięgnął 2.5 (dla wszystkich wariantów). Nadal występuje asymetria dla wariantów z maskami 2, 8, 64 — albo jest to błąd, albo pewne świeczki (typu "M") dają lepszą prognozę w górę, a inne (typu "a") lepszą prognozę w dół. Ewentualnie można by to zweryfikować mając dane w postaci USDEUR. Dalsze (ręczne) ulepszanie warunków wydaje się bezcelowe i będzie wykonywane tylko w razie nieotwierania przykładów oraz spadku wskaźnika zysku poniżej 1.4.
  • Wykonana optymalizacja godzin nocnych wykazała przedział pomiędzy godzinami 10 i 19 wirtualnej doby, z warunkami bez domknięcia (>10, <19, co ma znaczenie dla M15). Należałoby ponownie sprawdzić wpływ takiego ograniczenia godzin na poszczególne warianty, wraz z uwzględnieniem zmian czasu na letni w Europie oraz USA.
  • Kolumna w tabelce wyników utworzona dla parametrów stanu wąskiego 160, 8, 1.3. Optymalizacja wskazuje ewentualnie kierunek 170, 8, 1.3 (kilka pozycji więcej, nieco wyższy zysk, ale mniejszy wskaźnik zysku).

Wersja 252.060

  • Dla wariantu z maską 32 zmienione warunki otwarcia. Jest to jedyny wariant, w którym odbicie od SMA200 nie wybija poza zakres OC poprzednich świeczek (co najmniej 25). Można by ewentualnie uznać, że zakres OC poprzednich świeczek jest wybijany 4 świeczki później, ale wymagałoby to rozpoznania formacji 6 świeczek (i uznania ich za jedną dużą). Być może przykład ten byłoby lepiej rozgrywać z H1, gdzie wybicie następuje z przecięcia SMA20 i SMA40. Obecna efektywność od 2019: 27 pozycji, wskaźnik zysku 2.97 (BUY 2.35 dla 21 pozycji, SELL: 2.27 dla 4 pozycji), zyskowność 57% BUY oraz 83% SELL. Ogólnie dla wszystkich wariantów wskaźnik zysku zwiększył się z 1.76 do 1.82, a zyskowność pozycji wynosi po 57.7% w obie strony.
  • Poprawione warunki dla wariantu z maską 256, ponieważ nie był otwierany przykład (2024-08-02), ze względu na pochylenie SMA200 będące poza zakresem. Uzyskiwane wyniki się nieznacznie poprawiły.
  • Dodana regresja liniowa dla cen zamknięcia. Ma to służyć do wykrywania świeczek wydechowych (które uzyskują znacznie większe pochylenie niż SMA30) i przełączenia SL na przesuwanie po każdej świecy. Rozwiązanie w obecnej formie ma niewielkie znacznie, na danych od 2019 roku zwiększyło zysk o 2%. Z jednej strony pozwala zamknąć pozycje z większym zyskiem, jednak z drugiej strony przyczynia się do wcześniejszego zamknięcia. Być może da się poprawić warunki uruchomienia, ale ogólnie uzysk jest zbyt mały, żeby warto się było tym dalej zajmować.
  • Poprawione warunki otwarcia pozycji dla wariantu z maską 512 (2024-08-13). Dotychczas był to wariant, który miał najmniejszy wskaźnik zysku (1.25 dla BUY).

Wersja 252.011

  • Przebudowana obsługa SL. Pozycje po otwarciu mają ustawiany sposób prowadzenia SL (istotne świeczki i średnia albo wszystkie świeczki) wraz z wymaganym poziomem załączenia SL (żeby cena mogła wyjść poza strefę SL początkowego). Pierwsza pozycja ma przesuwany SL wszystkimi świeczkami, o ile przekroczy poziom aktywacji (wstępnie 2.7 razy rozmiar średniej świecy). Natomiast druga tylko istotnymi oraz średnią, a zmiany SL na niej uruchamiają się dopiero po zamknięciu pierwszej pozycji (niemniej wyjście poza linię 200° załącza zmianę SL wszystkimi świeczkami). Aktualizację SL w pozycjach realizuje moduł obsługi pozycji, natomiast robot dostarcza tylko poziomy przestawienia oraz informację o istotności świecy generującej poziom. Rozwiązanie wymaga jeszcze dalszego dopracowania, natomiast powinno już pozwolić na obsługę wielu okresów (w ramach osobnego robota, np. "trifecta").
  • Poprawione otwieranie trzeciej pozycji, warunki pochylenia średnich zmienione z zadanej wartości minimalnej na zerową. Dodatkowo trzecia pozycja jest zamykana w sposób identyczny jak druga. Dla podanych przykładów otwieranie trzeciej pozycji zwiększa zysk o około 20%.
  • Naprawione warunki dla wariantu z maską 128 (07-29). Badana jest przedostatnia świeca, czy nastąpiło odbicie od SMA200 i czy łącznie tworzą odpowiednio duży ruch. Udało się uzyskać symetrię w obu kierunkach.
  • Dopasowane warunki dla wariantu z maską 2, który wcześniej nie otwierał przykładu z 2024-06-03. Ponieważ wyjście ze stanu wąskiego jest dosyć wątłymi świecami, póki co nie udało się podnieść wskaźnika zysku powyżej 1.7, a wykres zysku faluje. Pierwsza świeca wybijająca ma rozmiar na granicy 1.5 średniego rozmiaru, a kolejne dwie po 1.3 średniego rozmiaru (granica dla dwóch świec to 2.0) — muszą być dwa osobne zestawy warunków, zależnie czy zmiany w sposobie liczenia rozmiaru średniej świecy spowodują przekroczenie granicy 1.5, czy nie. Ponieważ optymalizacja otwarć i generalizacja przykładów nie jest priorytetem, pozostanie to tak do ewentualnego kolejnego przeglądu wariantów.
  • Ustawianie początkowego TP na stałą wartość TP:SL (z wartościami z optymalizacji 5.0 i 7.5 dla drugiej pozycji) zostało zastąpione możliwością ręcznego ustawienia tych wartości (i również wykonania optymalizacji (obecnie wychodzą wartości 4.5, 5.0 i 2.0 dla trzeciej pozycji). Jednak celem jest wyłączenie początkowego TP:SL (który był prowizorycznym sposobem zapewnienia zysku) w celu przetestowania reguł przestawiania SL. Sztywny TP może poprawiać zyski, jednak będzie niepotrzebnie zaburzał testy. Wyniki optymalizacji mogą się zmieniać w przyszłych wersjach, ponieważ początkowy TP był w stanie wygenerować zysk, gdy obsługa SL działała błędnie.
  • Przejrzane i doprowadzone do symetrii warunki dla masek od 64 do 2048. Niestety ze względu na inne wprowadzone zmiany warunki otwierania dla niektórych wariantów muszą być ponownie przejrzane, ponieważ zmieniła się ich efektywność. Statystyki tej wersji również zostają zapisane jako punkt wyjściowy do dalszych zmian, a nie jako wersja ulepszona.
  • Poprawiona obsługa trzeciej pozycji w zakresie warunków otwierania (otwarcie musi być bliżej SMA30), początkowego SL (połowa rozmiaru HL poniżej L albo powyżej H) oraz zamykania (bez uzależnienia od pozycji drugiej).

Wersja 251.210

  • Robot został wyposażony w prowizoryczny panel sterujący do obsługi podczas działania na żywo. Pierwszy przycisk (z nazwą robota) sygnalizuje kolorem czerwonym brak możliwości obsługi pozycji. Jego naciśnięcie resetuje zawartość wewnętrznych struktur, co jest potrzebne w razie przerwy w pobieraniu danych, spowodowanej np. hibernacją albo brakiem połączenia (planowane jest wykrywanie przerwy w działaniu, ale obecnie ma niski priorytet).
  • Dodane zabezpieczenie zysku na BE, jeśli zamknięcie świecy jest odsunięte od ceny otwarcia o krotność rozmiaru średniej świecy. Mechanizm ten poprawia wyniki, ale optymalizacja nie daje jednoznacznej wartości mnożnika. Minimalną dobrą wartością jest 0.2, a dobre rezultaty są również w okolicy 1.0 oraz 1.3. Mechanizm będzie obserwowany i dodatkowo optymalizowany później. Być może jego znaczenie się zmieni po dopracowaniu zamykania zysku na pierwszej pozycji.
  • Dodane rozróżnianie otwartych pozycji, dzięki czemu każda może być osobno prowadzona. Z otwartych początkowo dwóch pozycji pierwsza ma być szybko zamknięta z zyskiem, druga ma być trzymana możliwie długo, trzecia ma być otwierana na odbiciu od SMA20(30), natomiast czwarta i piąta na zmianach koloru. Trzecia pozycja nie jest otwierana, jeśli druga została zamknięta. Otwieranie czwartej i piątej będzie wymagać, by była otwarta druga albo trzecia.
  • Poprawione zamykanie pozycji pierwszej, jest teraz związane ze zbliżeniem ceny do linii odbicia SMA200 od SMA20 (oznaczanej jako 200°). Początkowy TP został przesunięty z wartości 3.0 na 5.0 początkowego rozmiaru SL (ustawienie bez istotnych podstaw merytorycznych), przez co teraz ma dużo mniejsze znaczenie. Dalsze prace będą miały na celu rezygnację ze sztywnego TP na rzecz porównania ze średnimi, początkowy TP zostanie utrzymany głównie w celu łapania absurdalnie dużych ruchów.
  • Pojawiła się wada działania robota, polegająca na zauważalnej asymetrii zyskowności pozycji. W większości wariantów zyskowność pozycji BUY jest około 70%, natomiast dla SELL jest to bliżej 40%. Ponieważ planowane jest poszukiwanie przyczyn tej asymetrii, wyniki zostały dodane do tabelki, aby móc porównać z kolejnymi wersjami. Wyniki te są gorsze niż dla poprzedniej sprawdzonej wersji. Ogólnie od 2019 roku wskaźnik zysku jest około 2.0, otwieranych jest ponad 600 pozycji (co najmniej 2 a czasem 3 przypadają na jedno zagranie). Do czasu naprawienia asymetrii pozostałe funkcjonalności wydają się mieć niższy priorytet.

Wersja 249.918

Dodane otwieranie trzeciej pozycji jako odbicie od SMA30 w ramach scenariusza 1. Warunki są ustalone dopiero wstępnie, więc dla podanych przykładów zysk zwiększa się nieznacznie, natomiast na danych od 2019 scenariusz 1 w obecnej postaci generuje straty — będzie to jeszcze dopracowane. Scenariusz 1 można uruchamiać i testować niezależnie od scenariusza 5, tzn. zdarzenie określone scenariuszem 5 zostanie rozpoznane, ale nie będzie otwierać pozycji. Rozdzielone zostały algorytmy wieloryba i swingu, co powinno umożliwić niezależne ich działanie (inne średnie są brane do określenia stanu wąskiego). Robot został przystosowany do działania na żywo, tzn. po dodaniu na wykres używa najnowszych danych historycznych do ustalenia parametrów, przepuszczając je tak, jak bieżące świeczki (jedynie bez otwierania pozycji). Ponieważ przestały działać warunki dla jednego z przykładów (08-13), a dla innego wygenerowana została strata (07-10), nie będzie wykonywane porównanie efektywności z poprzednimi wersjami. Przykład z 06-03 został usunięty przez optymalizację, która znajduje granicę pochylenia SMA200 jako 1.3, natomiast w tym przykładzie wynosi ono 1.7 i należałoby zrobić specjalną wersję stanu wąskiego, w którym SMA200 jest pochylona, a SMA30 się odbija — pierwsze podejście do opracowania takiego wyjątku nie dało dobrych rezultatów, a ponieważ rozgrywanie wszystkich przykładów nie jest uznane za konieczne, analiza i obsługa tego przykładu jest przełożona jako opcja na późniejsze wersje.

Wersja 249.701

W ramach scenariusza 5 zostało dodane otwieranie drugiej pozycji, dla której TP jest 2 razy dalej (TP:SL=6:1 albo 8:1) niż dla pierwszej (TP:SL=3:1 dla większych świeczek albo 4:1 dla mniejszych), a SL jest przestawiany na BE w momencie zamknięcia pierwszej. Ta druga pozycja jest wstępną formą rozgrywania "tułowia". Jej wielkość określa się jako ułamek pozycji pierwszej. Zliczając od 2019 roku, dla 10% uzyskuje się zwiększenie zysku o 40%, natomiast dla 100% zysk jest większy o 47% (względem kapitału) — w każdym przypadku wskaźnik zysku zwiększył się do około 2.25, a dla 100% ogólny ułamek zyskownych pozycji zmniejszył się do 48%. W zakresie podanych przykładów wskaźnik zysku jest około 9, natomiast udział zyskownych pozycji to około 63%.

  • Zrobiona na EURUSD statystyka stanów wąskich i szerokich w celu znalezienia warunków braku drugiego ruchu. Dla M15 maksymalna odległość pomiędzy średnimi sięga wartości 1900 (nie były sprawdzane te miejsca, więc może to być skutkiem uszkodzenia zbioru danych historycznych). Najczęściej występujące wartości są pomiędzy 100 a 250 (obszar stabilizacji ze zbliżoną gęstością prawdopodobieństwa, obejmuje 1/3 przypadków) — wartości odchylone od tego przedziału w obie strony zmniejszają swoją gęstość mniej więcej parabolicznie.

Wersja 249.641

Test wykonany na danych M15 pobranych z Dukascopy od 2019 do 2022 — mogą być rozbieżności co do godzin ze względu na brak dbałości w zakresie zmian czasu na letni (co jednak nie powinno mieć wpływu na wyniki, ponieważ istotna jest głównie kolejność świeczek). Poprawiony algorytm wyliczania zmian średniego rozmiaru świecy w ciągu doby (6 przedziałów, licznie średniej arytmetycznej rozmiaru świec w każdym przedziale i uwzględnianie jej z wagą 10%). Wykonana symetryzacja dla wariantów (analogiczne warunki dla otwierania pozycji w przeciwną stronę, z parametrami dobranymi tak, aby w obie strony wychodził zysk). Robot otwiera 10 z 12 przykładów (06-03 i 07-03 — maski 2 i 16 — wypadły na skutek optymalizacji parametrów). Od 2019 liczba otwieranych pozycji jest teraz nieznacznie zmniejszona (306), wskaźnik zysku jest około 2 (zysk do strat ma proporcję 1:1), transakcji zyskownych około 51%. Wykres zysku utrzymuje stałe pochylenie, ale ma okresy stagnacji, trwające 6 oraz 11 miesięcy. Warunki otwierania pozycji wymagałyby jeszcze dopracowania, ale wydają się być dostateczne, aby w kolejnej wersji uruchomić obsługę drugiego ruchu ("tułów wieloryba"). Pozycje LIMIT na -32% wybicia nie poprawiają efektywności, więc na razie nie będą uwzględniane przy ocenie.

Wersja 249.580

Przygotowane warunki otwierania pozycji na podanych przykładach (12 z 12 na EURUSD). Tymczasowo pozostawione dodatkowe warunki, które również generują zyskowne pozycje. Ogólnie od 2019 roku otwieranych jest 366 pozycji, z których 48% jest zyskowne. Zysk do strat ma proporcję 1:2 (co jest raczej słabym wynikiem, w porównaniu do ya_SwingOVT1, uzyskującym 10:1 na amerykańskich indeksach giełdowych). Jednak nie jest jeszcze dopracowane zabieranie zysku, jak również obsługa drugiej nogi, więc docelowa efektywność działania powinna być większa. Nie była weryfikowana symetria warunków otwarcia pozycji, również wyrywkowo były uwzględniane warianty świeczek. Ponieważ w kilku przypadkach występują bardzo duże świeczki, dla których sensowniej by było otwierać pozycje z M5 albo M2, równolegle będą prowadzone prace nad robotem, który będzie sprawdzał sygnały na trzech okresach.

Wersja 249.290

Wstępnie uruchomiona wersja, rozpoznaje 6 z przedstawionych 12 przykładów (EURUSD). Dodatkowo otwiera pozycje w 6 innych miejscach, gdzie kończą się one niewielkim zyskiem albo niewielką stratą. Uruchomienie od 2019 pokazuje ciąg strat w 2021 roku i raczej stagnację przed 2021 — może to wynikać z niedoskonałości danych testowych, których poprawność nie była weryfikowana.


Robot Podstrony Dodatkowe informacje
2301 ya_ScalperRB Zmiany Wybijanie poprzednich szczytów i dołków (RB).
2302 ya_Wybijacz Zmiany Pozycje STOP na zewnątrz ruchu we wskazanych godzinach (Orchard).
2403 ya_FAB4 Zmiany Rozgrywanie otwarcia indeksów giełdowych (OVT).
2405 ya_SwingOVT1 Zmiany Równoległość średnich na S&P500/D1 (OVT).
2406 ya_Wieloryb1 Zmiany Wybicia ze SMA200 — przykłady EURUSD/M15 (OVT).
2507 ya_Wieloryb4 Zmiany Wybicia ze SMA200 — przykłady EURUSD/H4 oraz USDJPY/H1 (OVT).
2508 ya_LK2410 Zmiany Rozgrywanie z podziałem na sesje Azja/Londyn/NY (LK).
Wskaźnik Podstrony Dodatkowe informacje
ya_M2OVT Wyliczanie średnich dla M2 całodobowych i sesyjnych (OVT).
ya_D1OVT Wyliczanie średnich sesyjnych z łączeniem świeczek M30 — S&P500/D1 (OVT).
ya_H4OVT Wyliczanie średnich dla H4 z łączonych świeczek H1 i ustawianej północy (OVT).
ya_Audytor Przewijanie wykresu wg listy wygenerowanej przez robota (własny).
ya_CandlesM2 Prostokąty obrazujące świece M2 na wykresie M1 (OVT).
ya_Kalibrator Przetwarzanie plików CSV (własny).