Skocz do zawartości

MQL4, jak użyć funkcji orderSelect?


mientek
 Udostępnij

Rekomendowane odpowiedzi

Witam.
Programuję w MQL4 bota do handlu na giełdzie. Bot generalnie działa od kilku tygodni, nawet już zdążył zarobić, ale cały czas go udoskonalam.
Tym razem mam problem i nie wiem jak go rozwiązać, mianowicie:
Jeżeli EA otworzy pozycję, to automatycznie ma nad nią kontrolę (cały czas ją "sprawdza" i wie kiedy ewentualnie zamknąć).
Natomiast jeżeli ja otworzę pozycję ręcznie, to pozycja ta nie jest kontrolowana przez EA (a w momencie kiedy EA uzna, że są dobre warunki do otwarcia pozycji, to otwiera raz jeszcze, a tego nie chcemy).

Generalnie chciałbym to zrobić tak, aby EA po włączeniu najpierw sprawdziło, czy są już otwarte jakieś pozycje.
Jeżeli nie ma, to standardowo czekamy na określone warunki do otwarcia.
Jeżeli jest już jakaś pozycja, to nie otwiera kolejnej tylko przejmuje kontrolę nad tą otwartą.

Mój pomysł jest taki, żeby na starcie EA użyć funkcji OrdersTotal i zadać warunek jeżeli OrdersTotal > 0, to wiadomo, że jakaś pozycja jest już otwarta
(a tak przy okazji, moje EA działa na kilku instrumentach finansowych. Czy funkcja OrdersTotal pokaże mi ilość zleceń ogólnie z całego terminala, czy tylko z tego instrumentu, na którym działa EA?)
Następnie funkcja OrderSelect, zaznaczanie pozycji.
I teraz najtrudniejsze. Jak użyć funkcji OrderSelect, żeby zaznaczyć pozycję, która została otwarta nie przez EA, a ręcznie?
Jeżeli pozycję otwiera EA, to z automatu pobiera ticket lub magic number, który jest potrzebny by program "kontrolował" zlecenie
A jak pobrać ticket lub magic numer pozycji, jeżeli ta została otwarta ręcznie? Tylko tej wiedzy mi potrzeba, jak użyć poprawnie funkcji OrderSelect, a z resztą już sobie poradzę.

Dodam że mam uruchomione 4 EA na 4 instrumentach jednocześnie, więc czasami mam w terminalu i 4 otwarte pozycje na raz.

Odnośnik do komentarza
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.
Uwaga: Twój wpis zanim będzie widoczny, będzie wymagał zatwierdzenia moderatora.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie
 Udostępnij

×
×
  • Dodaj nową pozycję...