Wiara tu nie ma nic do rzeczy

Po prostu trzeba to zrobić aby się przekonać czy zadziała. Nawiasem mówiąc: kiedyś trafiłem na bibliotekę (początkowo o kodzie otwartym) która robiła właśnie coś dokładnie takiego jak opisałem. Jednak trafiłem na nią za późno: wykupił ją jakiś fundusz hedgingowy ...
BAQ pisze:Sam kiedyś napisałem EA w którym sygnał kupna był złożeniem paru sygnałów (przecięcia średnich, SAR, coś z wstęgami bollingera). Każdy z tych sygnałów był parametrem, można go było włączyć lub wyłączyć. MT4 ma niby jakiś optymalizator z algorytmem genetycznym, nie przelicza wszystkich możliwych kombinacji.
Przelicza ... przelicza, tylko sobie trzeba opcję włączyć ....
Okazuje się jednak, że jeśli każdy z sygnałów ma 2-3 parametry (długość EMA, odległość odchylenia i inne), to potencjalnych kombinacji jest tyle, że każdy optymalizator się na tym wysypie.
Po to właśnie jest AG. 2-3 parametry i kilka wskaźników to betka. Poradzi sobie bez problemu.
StudenTM84 pisze:hmm, zacznę może od pytania czy nie można tego zrobić w optymalizacji testera? jak go kiedyś używałem to zdaje się, że on również używa AG
Nie bardzo. AG w testerze koduje w genotypie parametry EA i szuka po nich. Mi chodzi o kodowanie w genach wskaźników i parametrów do nich. To trochę co innego ....
StudenTM84 pisze:Poza tym nie koduje się wskaźników a jedynie wyniki, które on daje co akurat nie jest chyba trudne
Właśnie o to chodzi, że nie wiesz jakie to wskaźniki i jakie wyniki. Nie wiesz jaką drogą pójdzie AG. Przykładowo: załóżmy że tworzysz AG który ma szukać najlepszego "algorytmu" dla przecięcia 2 średnich.
Definiujesz więc gen, który zawierają parametry MA: opóźnienie, przesunięcie, okres, typ ceny. Pojedynczy osobnik w AG ma 2 takie geny opisujące 2 średnie, plus 3ci gen który określa sposób ich przecięcia (która z góry, która z dołu).
Określasz też jak wygląda prawidłowy gen reprezentujący MA tzn. jakie max/minimalne wartości mogą przyjąć poszczególne parametry.
Odpalasz AG, a on idzie "swoją drogą" .... generuje parametry dla obu MA, przepuszcza poszczególne warianty przez tester, wybiera najlepsze i rozwija je dalej ...
Jednak nie wiesz w którą stronę podąży - będą kombinacje których nigdy nie użyje. W Twoim pomyśle musiałbyś najpierw wygenerować wyniki dla wszystkich możliwych parametrów MA, już to zajmie sporo czasu. Dopiero potem mógłbyś użyć optymalizatora w testerze, podając jako parametry do optymalizacji powiedzmy id zapisanej wcześniej wartości z MA.
Tylko co zrobisz jak wskaźników będzie powiedzmy 20-30 .... będzie problem "upchać to w tester". Poza tym używając testera nie możesz zupełnie sterować funkcją dopasowania: może się okazać, że najlepsza kombinacja to taka gdzie kupuje na początku okresu testowego i trzyma do końca - wykonując jedną transakcję i korzystając z faktu że w okresie testowanym cena poszła do góry.
We własnym AG możesz eliminować takie przypadki: funkcja dopasowania może premiować rozwiązania gdzie wejść jest wiele, czy takie które dobrze zachowują się poza okresem testowym. Możesz też dbać o zróżnicowanie populacji by za wcześnie nie utknąć na tkz. "lokalnym wierzchołku". W testerze mt4 tego nie zrobisz ...