Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 854
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Помогите, как узнать первую координату времени линии тренда?
Почему нельзя делать так объявил глобально переменную и массив и хочу сразу присвоить в массив значение из переменной.
И с функциями такая же беда если аргументу присвоить переменную ругается
Почему нельзя делать так объявил глобально переменную и массив и хочу сразу присвоить в массив значение из переменной.
И с функциями такая же беда если аргументу присвоить переменную ругается
Благодарю.
Нормально видимо сказать нельзя. В с++ так делать можно, я думаю это связано с тем что mql4 работает через дескриптор т.е. не имеет прямого доступа к памяти, т.к. каждое значение имеет адрес и если получить доступ к этому адресу можно узнать что там есть, это делает mql4 чрезмерно статическим и ограничивает многие возможности в особенности работу с массивами.
Есть ли возможность в советнике сделать два таймера? Я почему-то думал OnTimer() вызывается в отдельном потоке. Но попробовал добавить бесконечный цикл в OnInit(), а перед этим установил таймер, только цикл и работал, OnTimer() не вызывался.
Мне нужно два независимых действия выполнять постоянно по таймеру. Каждый со своим интервалом. Как это можно реализовать, не подскажете?
Есть ли возможность в советнике сделать два таймера? Я почему-то думал OnTimer() вызывается в отдельном потоке. Но попробовал добавить бесконечный цикл в OnInit(), а перед этим установил таймер, только цикл и работал, OnTimer() не вызывался.
Мне нужно два независимых действия выполнять постоянно по таймеру. Каждый со своим интервалом. Как это можно реализовать, не подскажете?
В этой ветке я хочу начать свою помощь тем, кто действительно хочет разобраться и научиться программированию на новом MQL4 и желает легко перейти на MQL5 - языки очень похожи.
Здесь можно будет обсудить задачи, алгоритмы их решения, да и впрочем, любые вопросы, так или иначе касающиеся программирования для МТ.
Надеюсь, что к решению вопросов подтянутся другие опытные участники нашего форума, и ветка будет интересна всем.
Добрый день. Для самообучения и наработки практического опыта пишу пробный советник. Сейчас он умеет принимать сигнал от индикатора и есть функция для открытия BUY и SELL позиций ( Open_BUY_SELL() ). Эту функцию я слепил из скриптов, опубликованных в CodeBase.
ВОПРОС - могу ли я попросить кого-либо из ГУРУ этой ветки посмотреть получившийся код на предмет корявости. ???
Особые сомнения и опасеня у меня вызывают вот эти места:
Уместно ли писать это внутри функции? Стоит ли перенести это в OnInit()? Функцию я сделал из двух скриптов, файлы приколоты к посту
Это место тоже смущает, если я правильно понимаю - объекты одних и тех же классов дублируют друг друга. Просто одни объявления остались от работы с индикатором, а другие от переделки скриптов в функцию.
Функцию с сигналом пока не связал, хочется сначала разобраться и подчистить код. Понимаю что где-то накосячил, а опыта и знаний, что-бы понять где именно и как сделать правильно, ещё не хватает.
Прошу поддержки.
Приложенные файлы - Советник, два скрипта и индикатор.
Компилятор не ругается, ошибок искать не придётся, только стратегически/тактические соображения нужны, на предмет - можно ли так делать и если сделано неверно, то как надо было.
Плиз.
Но по-хорошему - класс мультитаймера нужно себе сделать.
нельзя усложнять простые задачи! ... сказал Я, который от нефиг делать даже ф-цию определения нового бара в класс обернул ))))
по сабжу:
Есть ли возможность в советнике сделать два таймера? Я почему-то думал OnTimer() вызывается в отдельном потоке. Но попробовал добавить бесконечный цикл в OnInit(), а перед этим установил таймер, только цикл и работал, OnTimer() не вызывался.
Мне нужно два независимых действия выполнять постоянно по таймеру. Каждый со своим интервалом. Как это можно реализовать, не подскажете?