Własne EA, czyli poszukiwanie Złotego Grala
A pokusił byś sie o zmianę warunków BUY/SELL na takie wg tego:personov pisze:Coś tam jednk sie traci jeśli jest sygnal SELL i go nie otwiera, bo jest BUY otwarte. Widocznie niezależne dziaśłanie BUY i SELL coś wiecej daje.
Co do testu na dłuższej historii to EA nie ma żadnych ograniczeń. Widocznie jest jakiś błąd Twoich danych.
http://www.forex-nawigator.biz/dyskusje ... hp?t=19484

Jeżeli chcesz odnieść sukces, naucz się cenić ludzi.
mike_05 nie zaprogramuję tego. Ni dlatego, że mi sie nie chce lub nie umiem tylko dlatego, że nie warto.
Po pierwsze wskaźnik strasznie repaintuje.
Po drugie wykres wskaźnika odświeża się co tick i tak zamula robota, że test z jednego dnia trwa u mnie ok. 2 godzin !!
Kiedyś miałem tak samo ze wskaźnikiem "TMA" - identycznie repaintuje i odświeża sie co tick.
Po trzecie zasady, któe są opisane w linku, który podałeś są sprzeczne z tymi które są w "szkielecie martygnałowym", który przedstawiłem.
No chyba, żeby wziąść pod uwagę tylko przecięcie -55 od dołu = BUY, przecięcie 55 od góry = SELL.
Aby brać pod uwagę ponowne przecięcie i otwieranie kolejnej pozycji to już całkiem inny robot.
Po pierwsze wskaźnik strasznie repaintuje.
Po drugie wykres wskaźnika odświeża się co tick i tak zamula robota, że test z jednego dnia trwa u mnie ok. 2 godzin !!
Kiedyś miałem tak samo ze wskaźnikiem "TMA" - identycznie repaintuje i odświeża sie co tick.
Po trzecie zasady, któe są opisane w linku, który podałeś są sprzeczne z tymi które są w "szkielecie martygnałowym", który przedstawiłem.
No chyba, żeby wziąść pod uwagę tylko przecięcie -55 od dołu = BUY, przecięcie 55 od góry = SELL.
Aby brać pod uwagę ponowne przecięcie i otwieranie kolejnej pozycji to już całkiem inny robot.
Solą życia jest kasa.
Czy praktykował ktoś z was łączenie różnych EA w jednym kodzie ? Np. mamy 2 lub 3 fajne pomysły i upychamy to w jednym kodzie nadajac im rózne numery magic, aby warunki nie kolidowały. Dzięki temu można wykonywać BackTesty na wszystkich 3 pomysłach. A może tak być, że jeden pomysł lepiej pracuje w innych warunkach rynkowych niż pozostale, dzięki temu się uzupełniają.
Solą życia jest kasa.
Myslałem nad takim rozwiązaniem. Trzeba by chyba okreslić elementy wspólne kodu, jakiś podział kasy na poszczególne EA i potem jakiś przełacznik, który by badał warunki wszystkich EA i uruchamiał ten fragment któregoś EA, który jest "w stanie akcji" buy/sell. Case?
Jeżeli chcesz odnieść sukces, naucz się cenić ludzi.
Da się ale niestety jest to trudne.personov pisze:Czy praktykował ktoś z was łączenie różnych EA w jednym kodzie ? Np. mamy 2 lub 3 fajne pomysły i upychamy to w jednym kodzie nadajac im rózne numery magic, aby warunki nie kolidowały. Dzięki temu można wykonywać BackTesty na wszystkich 3 pomysłach. A może tak być, że jeden pomysł lepiej pracuje w innych warunkach rynkowych niż pozostale, dzięki temu się uzupełniają.
Choćby z braku obiektów w MT4. Gdyby można było z każdego EA zrobić osobną klasę, a potem obiekt i wywoływać po kolei EA(x).Trade… w pętelce.
A co to znaczy każda klasa ma metodę Trade i to specyficzną dla każdego EA.
Klasa definiuje pewien standard i daje wstępny kod do dziedziczenia, ale potem każdy obiekt ma swoje wyjątki
W języku proceduralnym jest to bardzo na około z rozmaitych względów.
Już sama inwentaryzacja otwartych zleceń stanowi niezłe wyzwanie.
A co dopiero kontynuacja? W sensie że jak coś jest już zamknięte to otwiera drogę do czegoś innego i to nie generalnie ale w ramach jednej z metod?
Jak to rozróżnić jak jest w jednym worze?
Na dodatek brak wielowątkowości - jest jedna kolejka zleceń. Wystarczy że jedno nadzieje się na 2-u minutowe odczekiwanie na "off quotes" żeby reszcie coś uciekło :-L
Na to akurat jest rozwiązanie - kilka terminali handlujących to samo konto

Ale oznacza to też, że każde EA samo sobie rzepkę skrobie… coś za coś

Klasa definiuje pewien standard i daje kod wstępny kod do dziedziczenia, ale potem każdy obiekt ma swoje własne procedury kryjące się pod tymi standardami.
Coś jak żółta ciężarówka i czerwona wyścigówka startują ze świateł na normalnej ulicy… jedno samochód i drugie też, a świtała są wspólne dla wszystkich;
for (int i=0;i<objectCount;i++) objectArray.Car..Accelerate()...
Tak czy inaczej, nie masz klas/obiektów w MT4. Są w MT5. Ale MT5 jest jakby to określić bez używania naprawdę mocnych słów?
Jakże często ludzie mają już gotową opinię zanim zdążą pojąć istotę rzeczy.
A gdy już ta istota w pełni do nich dotrze, jakże często muszą zmagać się z konsekwencjami swojej opinii ;-)
A gdy już ta istota w pełni do nich dotrze, jakże często muszą zmagać się z konsekwencjami swojej opinii ;-)
Od biedy można to rozwiązać konsolidując raporty. Na jednym z zamkniętych forów widziałem takie narzędzie. Testuje się kolejne EA i zapisuje wyniki (raporty) do pliku (można to zautomatyzować). Narządko łyka te raporty i tworzy wspólną linię equity.personov pisze:Przełącznik testowalem. Mi chodzi o to aby chodziły równolegle. W jednym czasie.
Od bidy można tak "obskoczyć" wielowalutowość i "wielorobotowość".
Jak ktoś chce coś więcej wiedzieć to niech pisze.
Słabe, marne, do bani, "g*" warte ?259 pisze:Ale MT5 jest jakby to określić bez używania naprawdę mocnych słów?
