[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 410
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
1. время открытия бара https://docs.mql4.com/ru/series/iTime
2. пробежаться по всем открытым ордерам и сравнить время открытия https://docs.mql4.com/ru/trading/OrderOpenTime
3. пробежаться по всем закрытым ордерам и сравнить их время открытия
Эмм... я несколько туповат в програмировании... Так и не смог разобратся в OrderSelect . Может напишите готовым кодом, чтобы его уже можно было в советник вставить ? Как узнать время открытия последнего ордера (в истории ордеров (так как ордер уже закрыт по безубытку напр)..
типа
TimeOp = ... и тут код ))
Может напишите готовым кодом, чтобы его уже можно было в советник вставить ?
перенесено
мне порекомендовали сюда ))) ну пусть . посмотрим, может сработает )) даже если это просто шутка, то почему бы ее не поддержать )))
extern double StopProfit = 5; -------- внешняя переменная, действительное число . вопрос : почему я не могу придать ему отрицательное значение ?? если задаю отрицательное то советник начинает просто выставлять ордера и тут же их удалять . насколько я помню действительные числа это все числа и ноль .
вот еще 2 строчки в советнике с этим пораметром :
первая в : expert start function
" StopProfit=", DoubleToStr(StopProfit, 2), AccountCurrency());
вторая в : Управление ордерами и позициями.
if (GetProfitOpenPosInCurrency(NULL, -1, Magic)>=StopProfit)
А что непонятного? Как только открывается ордер, тут же срабатывает условие его закрытия по профиту, который отрицателен, но больше заданного.
перенесено
условие закрытия не может сработать, потому что ордера отложенные. и нет никакой суммарной прибыли или убытка в валюте .
Доброго дня, пожалуйста
1. Посоветуйте где в теле советника лучше писать код который должен выводить на экран сообщения в график (например уровень спреда и тп), то есть с каждым тиком осуществлять вывод инфы.
2. Можно ли в функцию void передать несколько параметров с bool XXX и bool YYY (void ScreenMessage (bool XXXX, bool YYY). В таком случае вылетает ошибка при компиляции, как можно обойти?
1. в любом месте, где достанете
2. обойти ошибку компиляции можно, если написать свой компилятор.
эксперт
Там где в эксперте
ma1=iMA(NULL,0,MovingPeriod1,MovingShift,MODE_SMA,PRICE_CLOSE,0); - Это он с машек считывает
ma2=iMA(NULL,0,MovingPeriod2,MovingShift,MODE_SMA,PRICE_CLOSE,0);
ma3=iMA(NULL,0,MovingPeriod1,MovingShift,MODE_SMA,PRICE_CLOSE,1);
ma4=iMA(NULL,0,MovingPeriod2,MovingShift,MODE_SMA,PRICE_CLOSE,1);
Эти строки нужно заменить на iCustom (назв индюка и его параметры). В общем так долго обьяснять) набери в MetaЕditor'e (это там где прогать надо) iCustom, выдели это слово и нажми F1 там в справке все подробно написано.
Господа! Как сделать ограничение по времени на торговлю.. чтобы эксперт не торговал с 23-00 до 2-00 (по терминальному времени)
Как я понял..
допустим .. Вот как написать числовое значение времени? через двоеточие.. или время тоже как то надо задавать кодом?
T = iTime("USDCHF",PERIOD_M15,0) ....... if (...... && T<23:00&& T>02:00)