Старик Опубликовано 23 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 23 января, 2016 Если еще планируется выпуск новых уроков, было бы очень интересно узнать как написать, советник, который будет входить в положительный замок, например, после того как первый ордер достиг определенного уровня прибыли. После того, как первый ордер достиг определенного уровня прибыли - открываете встречный ордер такого же лота.Думаете, для этого нужен специальный урок?Во-первых, надо думать. Прежде чем пытаться что-то кодировать, сначала надо понять что вам надо.Когда поймете "что" вам надо, "как" сделать "что" вам надо обычно становится понятно самому.Во-вторых, в инете море программ в открытом коде.Изучайте их до буквы, пытайтесь сделать лучше - и вы начнете расти ударными темпами.А вот "кина" лучше не надо.Программирование интеллектуальная деятельность: надо читать - думать - и писать."Кина" не оставляет время на думать.Удивляюсь, млять, почему ещё мультики по программированию снимать не начали... 4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rever27 Опубликовано 24 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 24 января, 2016 Подскажите, как привязать Lable строго к середине экрана? Если с привязкой текста по датам еще можно что то придумать, то как быть с Лейблом, у которого есть только настройки Угла, X и Y? ) Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 24 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 24 января, 2016 Подскажите, как привязать Lable строго к середине экрана? Если с привязкой текста по датам еще можно что то придумать, то как быть с Лейблом, у которого есть только настройки Угла, X и Y? )Я не большой знаток графических функций, но спрошу: а разве размер окна в пикс узнать нельзя? - чтоб половину вычислить? Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rever27 Опубликовано 24 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 24 января, 2016 Я не большой знаток графических функций, но спрошу: а разве размер окна в пикс узнать нельзя? - чтоб половину вычислить? Вот я и не нашел этой функции. Как узнать самую крайнюю цену по углам экрана - есть. Пикселей нету ( Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 24 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 24 января, 2016 Я не большой знаток графических функций, но спрошу: а разве размер окна в пикс узнать нельзя? - чтоб половину вычислить? Вот я и не нашел этой функции. Как узнать самую крайнюю цену по углам экрана - есть. Пикселей нету (Посмотри эти функции:ChartGetInteger() CHART_WIDTH_IN_PIXELS 3 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rever27 Опубликовано 25 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 25 января, 2016 Посмотри эти функции:ChartGetInteger() CHART_WIDTH_IN_PIXELS И куда я смотрел. Теперь все идеально ровно, спасибо! Только нужно не забыть изменить привязку этого объекта с левого угла на вверх ObjectSetInteger(0,name,OBJPROP_ANCHOR,ANCHOR_UPPER); 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
MadBob Опубликовано 25 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 25 января, 2016 Думаете, для этого нужен специальный урок? Да, думаю нужен. В уроках рассматривались темы и по-проще. Здесь есть несколько подводных камней.Например, я не до конца понимаю, как рассчитать точку выставления тейка для этого замка, если лоты будут разного объема. Ссылка на сообщение Поделиться на другие сайты More sharing options...
dermitay Опубликовано 25 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 25 января, 2016 Думаете, для этого нужен специальный урок? Да, думаю нужен. В уроках рассматривались темы и по-проще. Здесь есть несколько подводных камней.Например, я не до конца понимаю, как рассчитать точку выставления тейка для этого замка, если лоты будут разного объема. твой вопрос из разряда поиска линии БУ кучи ордеров с различными лотами и "смотрящих" в разные стороны. скажем так - я убил неделю чтобы самому понять и вычислить формулу сего действа. и, думаю, "для новичка" подача такого материала будет сложна для понимания.ну а "не новичок" и сам разберется, если ему это действительно нужно.и опять же, я не понимаю, неужели вы не испытываете кайф от самого процесса решения задачи и того когда решил эту задачу САМ, своим потом и мозгами? тебе же наоборот хорошо делают - рассказывают не ВСЕ чтобы ты в будущем сам через всё прошёл :d :))ЗЫ: если суммарно лотность на бай не равно суммарной лотности на селл - то это уже не "замок". 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
pavlus777 Опубликовано 25 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 25 января, 2016 Обновленный урок номер 3:http://tradelikeapro.ru/izuchaem-mql-urok-3/ 6 Ссылка на сообщение Поделиться на другие сайты More sharing options...
chebdenis Опубликовано 26 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 26 января, 2016 Как всегда подача материала на высоте! Просьба, могли бы исходник из урока выложить сюда? Заранее спасибо! Ссылка на сообщение Поделиться на другие сайты More sharing options...
dermitay Опубликовано 26 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 26 января, 2016 наткнулся на ограничения iCustom. в официальной документации ничего про это не написано.вобщем нюанс заключается в количестве передаваемых input'ов.если не передавать ни один параметр - будут использоваться настройки по умолчанию, но если мне нужно изменить хотя бы один параметр, то мне надо передать все в требуемом порядке и с требуемым типом и изменить значение нужного(реальный пример - крайний выложенный индикатор от Silentspec, в нем играюсь периодом RSI, передаваемых в индюк параметров у него - 95).вопрос знатокам - кто-нибудь знает до каких цифр метаквотовцы ограничивают количество передаваемых в iCustom параметров? при компиляции ошибка выдается просто wrong parametres count.ЗЫ: с iCustom работать умею и мной написан уже не один и не два сова по работе с различными внешними индюками. просто впервые наткнулся на такой вот прикол. 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
mobidik Опубликовано 26 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 26 января, 2016 наткнулся на ограничения iCustom. в официальной документации ничего про это не написано.вобщем нюанс заключается в количестве передаваемых input'ов.если не передавать ни один параметр - будут использоваться настройки по умолчанию, но если мне нужно изменить хотя бы один параметр, то мне надо передать все в требуемом порядке и с требуемым типом и изменить значение нужного(реальный пример - крайний выложенный индикатор от Silentspec, в нем играюсь периодом RSI, передаваемых в индюк параметров у него - 95).вопрос знатокам - кто-нибудь знает до каких цифр метаквотовцы ограничивают количество передаваемых в iCustom параметров? при компиляции ошибка выдается просто wrong parametres count.ЗЫ: с iCustom работать умею и мной написан уже не один и не два сова по работе с различными внешними индюками. просто впервые наткнулся на такой вот прикол. До 50 параметров точно проходит. 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
dermitay Опубликовано 26 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 26 января, 2016 До 50 параметров точно проходит. угу. выправил индюк(я ж оригинальный код Silentspec не трогаю - правлю индюк с другим именем и к нему обращаюсь), сократил количество инпутов(ну например нахрена мне в iCustom передавтаь цвета линий или стринговые "Настройки индикатора"), и вуаля - код iCustom с сокращенным списком переменных откомпилился \M/ >0 Изменено 26 января, 2016 пользователем dermitay 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Forrest22 Опубликовано 28 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 28 января, 2016 Доброго времени суток всем!Искал простой сов сопровождения с частичным закрытием и моментальным тралом (чтобы не ждал профита, а уменьшал лосс вслед за ценой идущей к ТП). Протрейдер избыточен, ест ресурсы ВПСа и не рулит всеми парами (как я понял). Накопал пару простых сов, в первом не хватает частичного закрытия, во втором параметра вида: Profit Trailing = false.Не поможете дописать или поделиться если такой есть?!Заранее спасибо! ;) ;) ;) TrailingStop.ex4Sleep_Tight.ex4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
dermitay Опубликовано 28 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 28 января, 2016 держи, в нем все что тебе надо - есть.описание функционала гугли. milaneseAPTM_235a.mq4 5 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Forrest22 Опубликовано 29 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 29 января, 2016 Спасибо!!! \M/ Кстати узнал его по автору (Стив Хопвуд), брал с FF под другим именем.Напрягло большое количество настроек jumping loss, instant loss и ещё куча всего. Ну ничего, будем развиваться... Ссылка на сообщение Поделиться на другие сайты More sharing options...
dermitay Опубликовано 29 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 29 января, 2016 ну его использовал DENYA в своих старых сборках по соло Scalp.inc, я единственное что могу добавить:1. сова мультивалютная2. трал/частичное закрытие настраиваются как пипсам так и по АТР(не путать с АДР)3. версия которую я выложил не особо глючная, как говорят все последующие сборки от автора после этой содержат глюки и баги.так что по сути тебе надо разобраться с настройками АТР. я в нем не особо шарю. но можешь юзать чисто пипсы. Ссылка на сообщение Поделиться на другие сайты More sharing options...
dermitay Опубликовано 29 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 29 января, 2016 всё-таки решил заморочиться над переносом полной логики индикатора Silentspec в сову. Это вам не iMA в коде вызывать и не шубу в трусы заправлять.После долгих попыток воткнуть таки получилось, тысяча чертей!!! v:) :)) Теперь я постиг еще уровень просветления o:-)Подумал, что материал, который я нарыл, будет полезен другим Вот ссылки в порядке прочтения M/1. https://www.mql5.com/ru/articles/14562. https://www.mql5.com/ru/articles/14573. https://www.mql5.com/ru/articles/1463 Добавлено: 30-01-2016 20:09:45товарищи, коллеги по разуму.вопрос у меня всё о том же - об эмуляции работы индикатора в сове.вобщем. как я ни крутил-вертел код, один фиг только полная эмуляция буферов индикатора в 90% случаев копирует работу самого индикатора.для примера, вот сигналы оригинального индикатораoriginal Спойлер тоже самое уже в сове, но через iCustom() Спойлер а вот это через код с полной эмуляцией буферов Спойлер как видите, третий вариант наиболее точно всё рисует, в отличие от варианта с iCustom. почему наиболее точно - потомучто есть еще и сигнал 6го типа, который индюк просто не рисует почему-то, ну это не особо важно, мне этот сигнал не нужен.вопрос прост - какого фига так оно как-то все криво работает?вкратце как я реализовал косячный вариант 2: все правила кода(ну там банально типа если машка одна больше другой в индикаторе считается через буферы), то я просто тупо обращаюсь к этим буферам и их сраниваю, правила вобще по сути неизменны. но практика показывает обратное, iCustom по сути ничего не знает о предыдущих барах, я верно рассуждаю?вкратце как я реализовал вариант 3: полная "эмуляция буферов", то есть вместо индикаторных буферов созданы массивы- таймсерии, в которых запоминаются все расчеты/значения полностью копируя алгоритм индикатора.самая главная проблема, на мой взгляд, это то что я хочу все это крутить-вертеть на 28 парах в одном коде. расчет прост. пар 28, буферов 14, итого мне нужно "держать в уме" 392 массива. реализовал это тоже очень просто, создана структура, в которую запихнуто все 14 динамических буферов + стринговая переменная для опознавания символа(пары). далее при инициализации кода идет подсчет пар, по которым трейдер собирается торговать и создается по сути динамический массив вышеописанных структур размером = количество пар. то есть элементом такого массива есть вышеописанная структура, внутри которой 14 других массивов + перменная. :-bкод будет гоняться один единственный раз - при появлении новой свечи(так же по сути должен работать и индикатор, по крайней мере так задумано).у меня вопрос простой - я прав в своих рассуждениях или нет насчет iCustom()?? насколько эффективна моя реализация или может есть более простой вариант? есть какие-то подводные камни? Изменено 30 января, 2016 пользователем dermitay 4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Oceani4 Опубликовано 30 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 30 января, 2016 Может кому пригодится:Т.к. OnChartEvent() не работает в тестере стратегий, простую обработку нажатия кнопок можно сделать следующим образом:1. в OnTick() добавляем строчку вида: if (IsTesting()) CheckButtons();2. Ну и примерный текст CheckButtons():void CheckButtons(){ long stateBuy = ObjectGetInteger(0,BtnBuy.name,OBJPROP_STATE); long stateSell = ObjectGetInteger(0,BtnSell.name,OBJPROP_STATE); if (stateBuy == 1) // 0 - кнопка отжата, 1 - нажата { Print("Нажата кнопка BUY!!"); // Тут можно вставить OrderSend(Symbol(),OP_BUY... ObjectSetInteger(0,BtnBuy.name,OBJPROP_STATE,0); // Отжимаем кнопку } if (stateSell == 1) { Print("Нажата кнопка SELL!!"); ObjectSetInteger(0,BtnSell.name,OBJPROP_STATE,0); }} 4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
vladimkrav Опубликовано 31 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 января, 2016 Приветствую всех!Смотрел урок по написанию советника. Очень понравилось. Повторил за автором. Мое творение тоже заработало, но на мой взгляд не корректно. Ордера закрываются и сразу открываются в противоположную сторону. При пробое линии сопротивления/поддержки это катастрофично. Как написать код который будет говорить; если (if) цена открытия свечи выше (>) цены закрытия и (&&) Спасибо. Ссылка на сообщение Поделиться на другие сайты More sharing options...
dermitay Опубликовано 31 января, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 31 января, 2016 Приветствую всех!Смотрел урок по написанию советника. Очень понравилось. Повторил за автором. Мое творение тоже заработало, но на мой взгляд не корректно. Ордера закрываются и сразу открываются в противоположную сторону. При пробое линии сопротивления/поддержки это катастрофично. Как написать код который будет говорить; если (if) цена открытия свечи выше (>) цены закрытия и (&&) Спасибо. очень простоClose[#номер бара#] - цена закрытия #номер бара#Open[#номер бара#] - цена открытия #номер бара#клоуз нулевого бара(текущего) конечно же будет равна NULLа вобще вотhttps://docs.mql4.com/ru/predefined/closehttps://docs.mql4.com/ru/predefined/open 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Pioner_rus Опубликовано 2 февраля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 2 февраля, 2016 Вроде бы проблем быть не должно. Всё, казалось бы, просто. double ID; ID = ChartOpen(Symbol(), Period()); ChartApplyTemplate(ID, "template1.tpl");Но не работает. Чарт открывает, шаблон не применяет. Шаблон есть в "templates", вручную применяется. В чём проблема? Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 2 февраля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 2 февраля, 2016 Не пойму зачем Вы открываете текущий чарт? - ID = ChartOpen(Symbol(), Period());Пробуйте сразу ChartApplyTemplate( 0 , "template1.tpl");Может быть ещё заморочка с расположением файла - читай справку по функции ChartApplyTemplate() Ссылка на сообщение Поделиться на другие сайты More sharing options...
Pioner_rus Опубликовано 2 февраля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 2 февраля, 2016 Ок, не совсем так: double ID; ID = ChartOpen(Sym, Per); ChartApplyTemplate(ID, "template1.tpl");Символ и период задаю - такой график и открывает. С местом шаблона уже голову сломал, куда я его только не совал x( Ссылка на сообщение Поделиться на другие сайты More sharing options...
dermitay Опубликовано 2 февраля, 2016 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 2 февраля, 2016 ты все перепробовал что вот здесь описано?https://docs.mql4.com/ru/chart_operations/chartapplytemplateкакой код ошибки, и т.д. и т.п. без этой инфы это гадание на кофейной гуще.это раз, а во-вторых ID должен быть ЛОНГОВЫМ(long) значением а не double Изменено 2 февраля, 2016 пользователем dermitay 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти