Data: 2010-01-04 19:40:28 | |
Autor: sf | |
XTB-Trader 4 + skrypt w mq4 | |
Witam,
Potrzebuje napisać skrypt w mq4, który będzie przechwytywał każdą akcję sprzedaży oraz kupna dokonywaną przy użyciu programu XTB-Trader 4 i wysyłał ją przez HTTP na wskazany serwer. Napisałem sobie skrypt, który wysyła na serwer jakieś przykładowe dane, ale tylko i wyłącznie gdy uruchomię ręcznie skrypt ze wskazaniem wykresu. Moje pytanie brzmi w jaki sposób dodać do programu XTB-Trader 4 skrypt, który będzie czekał na zdarzenie i jeśli będzie ono sprzedażą lub kupnem to wyśle dane na serwer. -- |
|
Data: 2010-01-05 01:28:41 | |
Autor: Joachim | |
XTB-Trader 4 + skrypt w mq4 | |
sf pisze:
Witam, Zdarzenia dotyczące zmian cen jednego instrumentu możesz przechwytywać przy pomocy Expert Advisora, ale pewnie to wiesz i pewnie to wykorzystujesz. Zdarzenia dotyczące zdarzenia zlecenia kupna/sprzedaży nie umiem przechwycić, być może nie ma w ogóle takiej możliwości. Jeśli znajdziesz taką możliwość, to wrzuć na forum, chętnie ją poznam. Ale obejście tego problemu można zastosować następująco: Sposób 1 - zaimplementować EA tak, żeby podczas składania zleceń wykonywał jakąś twoją funkcję i żadne przechwytywanie zdarzeń nie byłoby konieczne. Pewnie cię to nie satysfakcjonuje, bo pewnie już byś to stosował. Sposób 2 - Który być może cię zadowoli, to uruchomienie skryptu w którym będzie pętla, a pętla będzie mniej więcej wyglądała następująco: 1) sprawdzenie aktualnie otwartych zleceń 2) sprawdzenie czy aktualnie otwarte zlecenia są takie same, jak podczas sprawdzania w poprzedniej iteracji pętli. Jeśli coś się zmieniło, to obsługujesz taką sytuację; 3) wykonanie sleepa na kilkadziesiąt [ms] 4) goto 1 Ja czasem sposób drugi stosuję i on mnie satysfakcjonuje. Stosuję takie podejście z pętlą w sytuacji reakcji na nowe zlecenia w terminalu, oraz dlatego, bo nie znalazłem w MQL4 możliwości przechwycenia zdarzenia zmiany cen z kilku instrumentów przez JEDEN skrypt (z jednego instrumentu wiadomo jak przechwycić zmianę ceny, a z wielu instrumentów prawdopodobnie się nie da). J. |
|
Data: 2010-01-05 10:08:00 | |
Autor: sf | |
XTB-Trader 4 + skrypt w mq4 | |
Joachim <joachim1110@op.pl> napisał(a):
Sposób 2 - Który być może cię zadowoli, to uruchomienie skryptu w którym będzie pętla, a pętla będzie mniej więcej wyglądała następująco: Dziękuję za odpowiedź. Moja wiedza na temat zagadnienia jest zdecydowanie niższa niż sądzisz bo dopiero wczoraj uruchomiłem pierwszy raz ten program. Dostałem zlecenie wykonania strony, na której umieszczone byłyby informacje o tym jak dana osoba gra. Udało mi się dojść do tego sposobu drugiego tak jak to opisałeś. Czyli jestem w stanie w pętli pobierać listę zleceń wyświetlającą się w terminalu. Wystarczy sprawdzać czy pojawiło się nowe zlecenie i jeśli tak to wysłać za pomocą POST dane na serwer. Przykładowy kod o zdarzeniach znalazłem na stronie: http://articles.mql4.com/350 Wysyłkę na serwer: http://codebase.mql4.com/4428 Mam tylko nadzieję, że te zlecenia z terminalu pojawiają się w ułamkach sekund od złożenia zlecenia. -- |
|