Zawieszanie się EA na MT4

O jezykach programowania w platformach i nie tylko.
kliwus
Stały bywalec
Stały bywalec
Posty: 26
Rejestracja: 26 sie 2012, 23:21

Zawieszanie się EA na MT4

Nieprzeczytany post autor: kliwus »

Witam

Piszę sobie kod i go sobie kompiluję, ale ostatnio przekonałem się po dwóch dniach działania bez kompilowania, że EA wylatuje w sensie takim, że widoczny jest na wykresie, ale nic nie robi. Odpalany jest na intervale 5m i nie sprawdza tick'ów, sprawdza tylko na otwarciu świecy i kończy działanie aż do pojawienia się następnej świeczki. Drukuję sobie zwykłym Print'em niektóre właściwości i sprawdzając logi samego EA to kończy działanie gdzie popadnie, można to sprawdzić ew. gdzie wypisując sobie w każdej linii print'a, ale czy to normalne? Aby to wszystko wskrzesić potrzebne jest usunięcie strategi z wykresu i wrzucenie jej na nowo lun kompilacja EA lub uruchomienie platformy na nowo. Dzisiaj wydarzyło się to już po raz kolejny pierwszy raz 2:20 i drugi raz 13:15. Pewnie nie jest to wina systemu, bo na innym koncie mam też ten sam MT4 i tego samego brokera i EA działa i tyle samo wykresów co na koncie demo. Najprawdopodobniej coś gdzieś dopisałem za dużo i coś jest nie tak, logi z dziennika też pustka, w kompilatorze 0 error'ów 0 warn'ów ale z tego co wiem to nigdzie się nie pętli w żadnej z napisanych pętli, co bym widział dość szybko po samym obciążeniu platformy. System to lubuntu 15.04, wine 1.7.50, 2gb ramu + 2gb swap'u dyskowego na dysku 34gb wolnego miejsca, pamięć jest całkowicie zajęta, EA odpalone na 32 wykresach, brak jakichkolwiek błędów w dmesg. Czy ktoś doświadczył podobnego problemu i wie jak go można rozwiązać? W EA wszystko co dopisuje jest mi praktycznie potrzebne i nie pamiętam od którego momentu coś dopisałem co spowodowało problem. Czy są jakieś limity nałożone np. na liczbę warunków (if) w metaeditor? warunków mam dość dużo liczone w setkach :) ale są one krótkie np. if(xyz>zyw), pętle for ze sleep'em (1000) by sie nie przeciążyło, pętle while również.

No nic. Nie piszę więcej, bo nikomu sie nie będzie chciało tego czytać :), resztę dopiszę jeśli pojawią się jakieś sugestie, a jeśli nie to chyba zacznę się cofać w zmianach co porobiłem, których już nie pamiętam :)

Pozdrawiam
Damian

Awatar użytkownika
Pablo90
Pasjonat
Pasjonat
Posty: 1215
Rejestracja: 10 cze 2007, 15:36

Re: Zawieszanie się EA na MT4

Nieprzeczytany post autor: Pablo90 »

Bez kodu ciężko coś wywnioskować, a jeśli rzeczywiście masz tam kilkaset instrukcji warunkowych to nie wiem czy komukolwiek będzie chciało się w tym grzebać nawet jeżeli wstawisz tutaj kod. Może rzeczywiście zbyt mało RAMu jest problemem? Albo niepoprawne działanie MT4 pod Wine? U mnie śmiga ok, ale na wersji stabilnej, nie rozwojowej.

kliwus
Stały bywalec
Stały bywalec
Posty: 26
Rejestracja: 26 sie 2012, 23:21

Re: Zawieszanie się EA na MT4

Nieprzeczytany post autor: kliwus »

Pablo90 pisze:Bez kodu ciężko coś wywnioskować, a jeśli rzeczywiście masz tam kilkaset instrukcji warunkowych to nie wiem czy komukolwiek będzie chciało się w tym grzebać nawet jeżeli wstawisz tutaj kod. Może rzeczywiście zbyt mało RAMu jest problemem? Albo niepoprawne działanie MT4 pod Wine? U mnie śmiga ok, ale na wersji stabilnej, nie rozwojowej.
Dzięki za odpowiedz

Warunków jest sporo, ale wygląda to tak, że jak jeden się nie zgodzi to omija 15 innych instrukcji. No jest to kombajny, a brakuje mi w nim jeszcze zarządzania kapitałem, ale jak już to klęka to będzie kiepsko. Być może problem z RAM'em, ale dziwi mnie to, że dwa pozostałe EA (z mniejszą ilością kodu, bo ten co mi tak szwankuje to jest testowy) działają poprawnie w tym jeden na koncie live i drugi na intervale 1h demo. W każdym bądź razie napisałem sobie kilka godzin temu kolejnych 5 linijek kodu by się EA uruchamiało tylko wtedy i tylko raz gdy pojawi się nowa świeca. Zobaczę sobie rano jak to będzie wyglądało i przy okazji trochę spadło mi obciążenia, ale teraz to też ruchy są mniejsze. Jak to nie pomoże to zmniejszę liczbę słupków w historii i na wykresie. Aha sprawdziłem też jak długo wykonuje mi się całe EA to na prawie każdym wykresie było to 0 sekund, milisekund nie sprawdzałem, w jednym przypadku poszła 1 sekunda, ale to i tak bardzo krótkie czasy.

Pozdrawiam
Damian

kliwus
Stały bywalec
Stały bywalec
Posty: 26
Rejestracja: 26 sie 2012, 23:21

Re: Zawieszanie się EA na MT4

Nieprzeczytany post autor: kliwus »

Obszedłem cały ten problem tak jak pisałem w ten sposób, że moje EA ładuje się raz i nie uruchamia podczas każdego tick'a, by sprawdzić czy pojawiła się nowa świeca i przy okazji odciążyło mi to sprzęt i to znacznie. Jeśli ktoś będzie zainteresowany wkleję tutaj kod, ale puki co problem uważam za zamknięty.

Pozdrawiam
Damian

ODPOWIEDZ