voldemar227 Опубликовано 31 марта, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 марта, 2016 Советник нарисовал линий на хай и лоу свечи, но вот при смене таймфрейма линий сбрасываются.... Что пройсходит при смене таймфрейма и как зделать так чтобы линий были устойчивы к таким переключениям??? тут много нюансов, нужно переменные отвечающие за линии обозначить на глобальном уровне, или искать для них данные на заданном таймфреме.больше тут ничем не помочь, без кода.. 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
vitek01 Опубликовано 31 марта, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 марта, 2016 Советник нарисовал линий на хай и лоу свечи, но вот при смене таймфрейма линий сбрасываются.... Что пройсходит при смене таймфрейма и как зделать так чтобы линий были устойчивы к таким переключениям??? тут много нюансов, нужно переменные отвечающие за линии обозначить на глобальном уровне, или искать для них данные на заданном таймфреме.больше тут ничем не помочь, без кода.. искать для них данные на заданном таймфреме. Гениально, при смене таймфрейма обновляются хай и лоу на текущем периоде, записаные даные для заданого таймфрейма не соответствуют действительности, а удаляются согласно внутреней логике прописаные мною. буду искать таблэтку. спасибо! Ссылка на сообщение Поделиться на другие сайты More sharing options...
voldemar227 Опубликовано 31 марта, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 марта, 2016 Советник нарисовал линий на хай и лоу свечи, но вот при смене таймфрейма линий сбрасываются.... Что пройсходит при смене таймфрейма и как зделать так чтобы линий были устойчивы к таким переключениям??? тут много нюансов, нужно переменные отвечающие за линии обозначить на глобальном уровне, или искать для них данные на заданном таймфреме.больше тут ничем не помочь, без кода.. искать для них данные на заданном таймфреме. Гениально, при смене таймфрейма обновляются хай и лоу на текущем периоде, записаные даные для заданого таймфрейма не соответствуют действительности, а удаляются согласно внутреней логике прописаные мною. буду искать таблэтку. спасибо! Если Вы не знаете как на часовике работать с минутками и на минутках работать с дневным периодом то это Ваши проблемы учитесь, иначе используйте глобальные переменные, но их то же нужно правильно контролировать что бы они не меняли свои значения... 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
qwert55r Опубликовано 31 марта, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 марта, 2016 Всем привет. Прохожу третий урок, при компиляции вылетают ошибки. Сделал всё как в видео и проверил не раз. ПОМОГИТЕ!!! test3.mq4 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
voldemar227 Опубликовано 31 марта, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 марта, 2016 Всем привет. Прохожу третий урок, при компиляции вылетают ошибки. Сделал всё как в видео и проверил не раз. ПОМОГИТЕ!!! После if () не ставим точку с запятой...test3.mq4 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
vitek01 Опубликовано 31 марта, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 марта, 2016 Всем привет. Прохожу третий урок, при компиляции вылетают ошибки. Сделал всё как в видео и проверил не раз. ПОМОГИТЕ!!! Исправил, оператора if закрываете ; (точка с запятой), ошибки вывел в коментарий в коде. Добавлено: 31-03-2016 15:29:35 Вопрос: Пример: У меня 100 доларов, советник заработал 20 доларов,итого у меня 120 доларов. И советник поймал лося и закрыл по стопу 10 $ . как зафиксировать найвысшую точку в 120 $ и в коде это выразить, чтобы советник при достижений профита до этой точки закрыл половину лота. if(equity() >= Profit) { CloseOrder(.........Lots/2...); }test3.mq4 Изменено 31 марта, 2016 пользователем vitek01 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
qwert55r Опубликовано 31 марта, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 марта, 2016 voldemar227, vitek01 Спасибо, выручили 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
vitek01 Опубликовано 31 марта, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 марта, 2016 Советник нарисовал линий на хай и лоу свечи, но вот при смене таймфрейма линий сбрасываются.... Что пройсходит при смене таймфрейма и как зделать так чтобы линий были устойчивы к таким переключениям??? тут много нюансов, нужно переменные отвечающие за линии обозначить на глобальном уровне, или искать для них данные на заданном таймфреме.больше тут ничем не помочь, без кода.. искать для них данные на заданном таймфреме. Гениально, при смене таймфрейма обновляются хай и лоу на текущем периоде, записаные даные для заданого таймфрейма не соответствуют действительности, а удаляются согласно внутреней логике прописаные мною. буду искать таблэтку. спасибо! Если Вы не знаете как на часовике работать с минутками и на минутках работать с дневным периодом то это Ваши проблемы учитесь, иначе используйте глобальные переменные, но их то же нужно правильно контролировать что бы они не меняли свои значения... Я тут ошибся выражая свой мысли, удаляются линий, а не данные хай и лоу. Ссылка на сообщение Поделиться на другие сайты More sharing options...
voldemar227 Опубликовано 31 марта, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 марта, 2016 Всем привет. Прохожу третий урок, при компиляции вылетают ошибки. Сделал всё как в видео и проверил не раз. ПОМОГИТЕ!!! Исправил, оператора if закрываете ; (точка с запятой), ошибки вывел в коментарий в коде. Добавлено: 31-03-2016 15:29:35 Вопрос: Пример: У меня 100 доларов, советник заработал 20 доларов,итого у меня 120 доларов. И советник поймал лося и закрыл по стопу 10 $ . как зафиксировать найвысшую точку в 120 $ и в коде это выразить, чтобы советник при достижений профита до этой точки закрыл половину лота. if(equity() >= Profit) { CloseOrder(.........Lots/2...); } переменную Profit надо обозначить на глобальном уровне и правильно обнулять или сделать её статичной ...Добавлено: 31-03-2016 15:42:27 Советник нарисовал линий на хай и лоу свечи, но вот при смене таймфрейма линий сбрасываются.... Что пройсходит при смене таймфрейма и как зделать так чтобы линий были устойчивы к таким переключениям??? тут много нюансов, нужно переменные отвечающие за линии обозначить на глобальном уровне, или искать для них данные на заданном таймфреме.больше тут ничем не помочь, без кода.. искать для них данные на заданном таймфреме. Гениально, при смене таймфрейма обновляются хай и лоу на текущем периоде, записаные даные для заданого таймфрейма не соответствуют действительности, а удаляются согласно внутреней логике прописаные мною. буду искать таблэтку. спасибо! Если Вы не знаете как на часовике работать с минутками и на минутках работать с дневным периодом то это Ваши проблемы учитесь, иначе используйте глобальные переменные, но их то же нужно правильно контролировать что бы они не меняли свои значения... Я тут ошибся выражая свой мысли, удаляются линий, а не данные хай и лоу. Линии удаляются потому что Вы их удаляете в деините, хотите что бы линии оставались не удаляйте их ... 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
vitek01 Опубликовано 31 марта, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 марта, 2016 voldemar227переменную Profit надо обозначить на глобальном уровне и правильно обнулять или сделать её статичной ... double Profit=AccountBalance(); double StaticBalans=1.0; // вынести в глобальные переменные if(Profit >= StaticBalans) StaticBalans=Profit; if(AccountEquity() >= StaticBalans) OrderClose(.....Lots/2....);Так правильно или нет? Ссылка на сообщение Поделиться на другие сайты More sharing options...
voldemar227 Опубликовано 31 марта, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 марта, 2016 voldemar227переменную Profit надо обозначить на глобальном уровне и правильно обнулять или сделать её статичной ... double Profit=AccountBalance(); double StaticBalans=1.0; // вынести в глобальные переменные if(Profit >= StaticBalans) StaticBalans=Profit; if(AccountEquity() >= StaticBalans) OrderClose(.....Lots/2....);Так правильно или нет? Не знаю, инфы не достаточно вот простой пример double Profit=0; // За пределами всех функцийif(AccountProfit()>Profit) Profit=AccountProfit(); // Максимальный профит на аккаунте 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
vitek01 Опубликовано 31 марта, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 марта, 2016 voldemar227переменную Profit надо обозначить на глобальном уровне и правильно обнулять или сделать её статичной ... double Profit=AccountBalance(); double StaticBalans=1.0; // вынести в глобальные переменные if(Profit >= StaticBalans) StaticBalans=Profit; if(AccountEquity() >= StaticBalans) OrderClose(.....Lots/2....);Так правильно или нет? Не знаю, инфы не достаточно вот простой пример double Profit=0; // За пределами всех функцийif(AccountProfit()>Profit) Profit=AccountProfit(); // Максимальный профит на аккаунте ну у меня тоже самое, спасибо! Ссылка на сообщение Поделиться на другие сайты More sharing options...
vitek01 Опубликовано 2 апреля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 2 апреля, 2016 Хочу свечу перевести в проценты, как правильно это зделать?int Prosent=(Хай[1] - лоу[1])*100% // это правильно? компилятор меня не понимает, выдает ошибку! Prosent.mq4 Изменено 4 апреля, 2016 пользователем vitek01 Ссылка на сообщение Поделиться на другие сайты More sharing options...
JR Опубликовано 2 апреля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 2 апреля, 2016 У вас свеча - это 100% (если я правильно понял). Т.е. Хай - Лоу = 100%. Отсюда и пляшите в дальнейших расчетах. 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Mikola_trader Опубликовано 4 апреля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 4 апреля, 2016 Кто научит кнопку на график прикручивать? Ссылка на сообщение Поделиться на другие сайты More sharing options...
deathmurder Опубликовано 4 апреля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 4 апреля, 2016 приветствую всех. Есть индикатор который строит линию по данным из файла CSV. Если кинуть его на график, работает, а в тестере никак не хочет ни линию рисовать, ни буфер для советника выгружать. Что делать, чтобы в тестере отображалась полоса.Код прикрепляю. Сразу скажу, код не мой. Я его только откомпилировал под новый билд МТ4 Plot_External_Data.mq4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
qwert55r Опубликовано 5 апреля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 5 апреля, 2016 В советнике когда открывается ордер на продажу, так же ставится страховочный стопордер на покупку. Необходимо чтобы при закрытии ордера на продажу(не важно по стоп-лоссу или тейк-профиту) удалялся страховочный ордер. Может кто подскажет как примерно будет выглядеть это условие? Ссылка на сообщение Поделиться на другие сайты More sharing options...
voldemar227 Опубликовано 5 апреля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 5 апреля, 2016 В советнике когда открывается ордер на продажу, так же ставится страховочный стопордер на покупку. Необходимо чтобы при закрытии ордера на продажу(не важно по стоп-лоссу или тейк-профиту) удалялся страховочный ордер. Может кто подскажет как примерно будет выглядеть это условие? Если есть рыночный ордер сел установить отложенный бай стоп, если рыночного села нет но бай стоп есть то удалить его ...Для баев наоборот Ссылка на сообщение Поделиться на другие сайты More sharing options...
qwert55r Опубликовано 5 апреля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 5 апреля, 2016 Советник из третьего урока. Появляется ошибка OrderSend 130. Гляньте пожалуйста test3.mq4 Изменено 5 апреля, 2016 пользователем qwert55r Ссылка на сообщение Поделиться на другие сайты More sharing options...
JR Опубликовано 5 апреля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 5 апреля, 2016 А вы погуглите ошибку OrderSend error 130 - самая распространенная ошибка. Ее описание даже в справочнике есть: Цитата В случае ошибочных, а также ненормализованных стопов генерируется ошибка 130 (ERR_INVALID_STOPS). При выставлении SL-TP в любом порядочном советнике должна быть обязательная проверка на стоп-уровни. Ссылка на сообщение Поделиться на другие сайты More sharing options...
qwert55r Опубликовано 5 апреля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 5 апреля, 2016 Я знаю что это за ошибка, но так как я ещё учусь, поэтому и спрашиваю как модифицировать советник, что бы этой ошибки не возникало. Ссылка на сообщение Поделиться на другие сайты More sharing options...
voldemar227 Опубликовано 5 апреля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 5 апреля, 2016 Я знаю что это за ошибка, но так как я ещё учусь, поэтому и спрашиваю как модифицировать советник, что бы этой ошибки не возникало. Продумывайте логику четче, детальней, делайте доп проверки... Ссылка на сообщение Поделиться на другие сайты More sharing options...
Старик Опубликовано 5 апреля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 5 апреля, 2016 А вы погуглите ошибку OrderSend error 130 - самая распространенная ошибка. Ее описание даже в справочнике есть: Цитата В случае ошибочных, а также ненормализованных стопов генерируется ошибка 130 (ERR_INVALID_STOPS). При выставлении SL-TP в любом порядочном советнике должна быть обязательная проверка на стоп-уровни. Я знаю что это за ошибка, но так как я ещё учусь, поэтому и спрашиваю как модифицировать советник, что бы этой ошибки не возникало. Поскольку бот учебный, никто вам не даст ответа как его модифицировать.Это задача из лично вашего задачника - и нефиг подглядывать ответ или списывать решение, правда? :)Инструкции надо читать и выполнять не просто буквально, а посимвольно.Каждое слово порознь - и вместе.Ответ уже дан - вы его не видите.Все числовые параметры в любом операторе открытия, выставления или модификации ордеров должны быть заданы 100% корректно.По каждому параметру разберитесь какое его корректное значение.И если вам что-то не ясно в работе бота, печатайте в лог значения всех используемых переменных, задаваемых параметров - распечатывайте все переменные в проблемном фрагменте бота..Это называется отладочная печать.По ней быстрее всего вы поймете что вы делаете некорректно.И гугл реально в помощь!Если у вас "дыра" в знаниях после многократного просмотра урока - через гугл можно найти превосходные пояснения по любой вашей проблеме.Программисты обычно одиноки.Это не значит, что нельзя спрашивать - это значит, что чаще всего некому, некогда и, в итоге, нечем помочь.Так что спрашивайте - но гугл программисту тоже друг. Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 5 апреля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 5 апреля, 2016 qwert55r Вашу сову запустить не могу - нет индюков. Где ошибка? в рыночных или отложках?в рыночных дату экспирации указывать не надо. Сами расчёты СЛ и ТП корректны, если запускаете с настройками по дефолту... после расчёта СЛ и ТП выведи их принтом + цену открытия ордера - по принтам разбирайся. Ссылка на сообщение Поделиться на другие сайты More sharing options...
barney26 Опубликовано 6 апреля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 6 апреля, 2016 помогите найти буфер в данном индикаторе для iCustom SweetSpotsGOLD_TRO_MODIFIED_VERSION.rar Ссылка на сообщение Поделиться на другие сайты More sharing options...
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти