djnet Опубликовано 13 августа, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 13 августа, 2018 MathMod((double)Time[0],iTmfrm*60)==0 Первая секунда нового бара :), видимо...Довольно криво - будет срабатывать крайне редко. Отследить закрытие бара нужно по другому. То есть мы приводим значение в секундах к виду числа с запятой, делим на (таймфрейм*60 секунд) и смотрим, если остаток отсутствует, то это означает что пришел новый бар? Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 13 августа, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 13 августа, 2018 То есть мы приводим значение в секундах к виду числа с запятой, делим на (таймфрейм*60 секунд) и смотрим, если остаток отсутствует, то это означает что пришел новый бар? Да. Другого ответа у меня нет. у MathMod входные параметры double, поэтому автор, видимо, сделал явную конвертацию.Кривовато, если мягко выражаться..., котировка может прийти на 2 секунде и всё - условие не сработает. Баг. Ссылка на сообщение Поделиться на другие сайты More sharing options...
djnet Опубликовано 13 августа, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 13 августа, 2018 Да. Другого ответа у меня нет. у MathMod входные параметры double, поэтому автор, видимо, сделал явную конвертацию.Кривовато, если мягко выражаться..., котировка может прийти на 2 секунде и всё - условие не сработает. Баг. Хм, понял буду придумывать по своему. Я вообщем то дописал версию до отсутствия явных ошибок компиляции. Стопудово ошибок неявных куча, еще немного помучаю и хотелось бы кому нибудь отправить для ознакомления. Или прям тут ее прикрепить? Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 13 августа, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 13 августа, 2018 Стопудово ошибок неявных куча, еще немного помучаю и хотелось бы кому нибудь отправить для ознакомления. Или прям тут ее прикрепить? Вы запустите в тестере, если заработает - выкладывайте здесь или в теме советника, если не заработает, то надо искать причины, кроме Вас, думаю, ни кто не возьмётся. Ссылка на сообщение Поделиться на другие сайты More sharing options...
djnet Опубликовано 13 августа, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 13 августа, 2018 Вы запустите в тестере, если заработает - выкладывайте здесь или в теме советника, если не заработает, то надо искать причины, кроме Вас, думаю, ни кто не возьмётся. Пока в тестере на заработает, конечно ей тут делать нечего, но и в ветку совы ей рано будет, но вот с поиском причин я попрошу помочь, скорее всего в виде помощи по отдельным функциям.Добавлено: 14-08-2018 14:09:02В общем вот. В тестере погонял, в визуализации глюки отловил, вроде все пашет. Добавил от себя ММ, в виде х объема на у депозита, с управлением шагом добавки к объему. Жду критику. Кому не лень, погоняйте, помучайте сову. Я на недельку в карелию с завтра, тут буду редко. Так что если не отвечаю, это не значит что я все бросил :)Забыл добавить, обработок ошибок по кодам нет. Коды иные, еще не разбирался в них. spring_8.25.mq5 Изменено 14 августа, 2018 пользователем djnet 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
djnet Опубликовано 24 августа, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 24 августа, 2018 Я вернулся и добрался до проверок ордеров. Возникли вопросы. 1. Если я правильно понял из справки, то: Ordersend вернет ТРУ в случае принятия запроса, но не факт что ордер будет выполнен, значит после каждого запроса в случае ТРУ нужно все равно проверять MqlTradeResult на наличие тикета в поле deal ?2. Следуя из первого вопроса мне не понятно каким образом проверить выполнен ли отложенный ордер, точнее стал ли отложенный ордер рыночным..... 3. Не совсем понятно когда ордер переезжает в Хистори, то есть предположим я открываю ордер по рынку, TRADE_ACTION_DEAL. Ордер переходит в хистори как только открывается позиция? или когда эту позицию закроем?4. retcode_external ????? Что делать с этим зверем??? И надо ли вообще? 5. retcode обрабатываем так же как в mql4 или есть изменения/дополнения? Ссылка на сообщение Поделиться на другие сайты More sharing options...
svalex Опубликовано 25 августа, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 25 августа, 2018 Новый урок: http://tradelikeapro.ru/pishem-ea-martin-na-mql5/ Странно, но советник из этого урока не ставит тейк-профит при прогоне в тестере. В терминале ошибка 10036 при попытке установки ТП.Советник при этом компилируется без ошибок. Ссылка на сообщение Поделиться на другие сайты More sharing options...
Arius777 Опубликовано 3 октября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 3 октября, 2018 Таак, сентябрь прошел, а нового урока нет! :dСпасибо огромное за уроки еще раз. Особенно за первые по mql4 ^:)^В любом случае, хочу для начинающих программеров (хотя я и сам такой - на mql4 опыта пока пару лет) тут написать - я вот уже три дня изучаю MQL5 :d :d. По сути - ничего сложного, нужно лишь понимать, что многие функции работают по другому. Я-то уж испугался, что там использование классов будет обязательным. У меня к ним отношение, так же, как и у 0ll не очень хорошее, а вот без структур и массивов жизнь свою представить не могу. 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
pavlus777 Опубликовано 9 октября, 2018 Автор Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 9 октября, 2018 Новый урок:http://tradelikeapro.ru/mql5-pishem-indikator/ 6 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Vektor Опубликовано 9 октября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 9 октября, 2018 Новый урок: Новый урок, это замечательно, благодарю. Только одно неудобство размер текста очень мелковат и очень плохо видно. Пожелание более продуктивно использовать размер картинки. Область с программным кодом, это полезная зона, но ее всего процентов 25-30 от ширины экрана. Большая просьба приложите исходный файл, очень плохо видно текст с экрана. Ссылка на сообщение Поделиться на другие сайты More sharing options...
MikR0ReR Опубликовано 9 октября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 9 октября, 2018 Большая просьба приложите исходный файл, очень плохо видно текст с экрана. Исходник к уроку "MQL5: Как написать индикатор для MetaTrader 5" http://tradelikeapro.ru/mql5-pishem-indikator/MaOsc.mq5 Изменено 9 октября, 2018 пользователем MikR0ReR 5 Ссылка на сообщение Поделиться на другие сайты More sharing options...
MikR0ReR Опубликовано 18 октября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 18 октября, 2018 Странно, но советник из этого урока не ставит тейк-профит при прогоне в тестере. В терминале ошибка 10036 при попытке установки ТП.Советник при этом компилируется без ошибок. Сразу кидаться тапочками и говорить, что не работает, не надо. Будьте внимательны. Урок MQL5: Пишем советник на Мартингейле, написан для "неттинговых" счетов (по одному финансовому инструменту можно иметь только одну позицию). Для "хеджинговых" счетов (по одному финансовому инструменту можно иметь множество позиций, в том числе — разнонаправленных) нужно немного доработать и изменить.Новый урок:http://tradelikeapro.ru/mql5-pishem-indikator/ Приветствую Вас! Прошу пояснить момент из урока. А именно 51:13 минуту или строки по коду 256-260if (OrderPrice == 0) return;if (OrderPrice == oldOrderPrice) return; По моему пониманию, когда мы отправляем запрос MqlTradeRequest, программа замирает и ждет ответа MqlTradeResult от сервера, который анализируем. А дальше от результата модифицируем позицию.С Ваших слов я понял так : На предыдущем тике отправленный запрос MqlTradeRequest на сервер, прислал липовый ответ MqlTradeResult. А в настоящем тике перед модификацией мы проверяем еще раз обновилась ли цена или открылся ли ордер?Прошу попробуйте другими словами объяснить. Изменено 18 октября, 2018 пользователем MikR0ReR 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 19 октября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 19 октября, 2018 Приветствую всех!Есть ряд вопросов по mql5, прошу помочь..1. Есть одномерный массив с направлением индексации AS_SERIES true. Размер массива задан. В массиве хранится история последних ХХ расчетов. Необходимо перезаполнять массив по мере поступления новых данных по методу FIFO. ArrayCopy() самого в себя не получилось сделать, пришлось использовать еще один массив, копировать в него, а потом обратно.. Не очень красиво. Может есть еще способ?2. На основе данных массива мне необходимо нарисовать график в подокне. Сейчас на каждом баре рисую TrandLine, но не знаю, как задать верхнюю и нижнюю границу (отрицательные значения рисуются ниже экрана). Делать пользовательский индикатор не очень хочется...3. В советнике применяется индикатор АТР. При тестировании в визуале он рисуется в подокне. Как отключить визуализацию? Ссылка на сообщение Поделиться на другие сайты More sharing options...
NPM23 Опубликовано 19 октября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 19 октября, 2018 3. В советнике применяется индикатор АТР. При тестировании в визуале он рисуется в подокне. Как отключить визуализацию? TesterHideIndicators(true);//перед инициализацией индикатора 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 19 октября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 19 октября, 2018 usver73 привет. ArrayCopy отлично работает с обычными массивами, но имхо, если надо что-то рисовать в окне, то лучше делать индюк, изобретение костылей и рисование из советника с описанием возможных изменений размеров окна, перерисовкой уже нарисованного - тихий ужас. 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 19 октября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 19 октября, 2018 ArrayCopy отлично работает с обычными массивами, В общем то работает. Через temp массив. Я думал, что можно без него обойтись. Вроде как лишняя операция копирования.. Размер предполагается 500-1000 элементов, вдруг это на производительность повлияет... то лучше делать индюкБлин, а это печаль...Народ наоборот, ищет пути внедрения кода индюка в советник. Писать отдельно только ради визуализации... так себе идея... Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 19 октября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 19 октября, 2018 В общем то работает. Через temp массив.Нет я писал о копировании в себя со сдвигом. Дело в том, что копируется всё равно по-битно, но важно чтоб начиналось с конца - когда n-1 элемент копируется в n позицию, поэтому работает только на обычных массивах, а не перевёрнутых (серийных).Народ наоборот, ищет пути внедрения кода индюка в советник.Дык это для увеличения скорости и экономии памяти - без визуализации! А у Вас нужно рисовать, да ещё и в подвале! 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 19 октября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 19 октября, 2018 поэтому работает только на обычных массивах, а не перевёрнутых (серийных). прикольно...нигде не видел такого комментария...А у Вас нужно рисовать, да ещё и в подвале! Офигенно трудоемкая задача! В индикаторах реализовано как должное, а в сове через задницу (точнее, никак)!Ладно, докурю тему. Если что найду, запостю.Добавлено: 19-10-2018 16:36:43Дык это для увеличения скорости и экономии памяти - без визуализации! ИМХО, народ точно не думает об экономии памяти (минус буфер с красками?). В основном хотят скрыть логику сова... 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
NightTraider Опубликовано 24 октября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 24 октября, 2018 ПриветствуюИндикатор в журнале пишет "2018.10.24 23:32:25.265 RSI (GOLD-12.18,M5) indicator is too slow, 3000 ms. rewrite the indicator, please"Причем стандартный, добавил только вывод значений на экран. Терминал используется на фьючерсах биржи.Может знаете чего ему нехватает в коде 8-> :-? Ссылка на сообщение Поделиться на другие сайты More sharing options...
Arius777 Опубликовано 25 октября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 25 октября, 2018 ПриветствуюИндикатор в журнале пишет "2018.10.24 23:32:25.265 RSI (GOLD-12.18,M5) indicator is too slow, 3000 ms. rewrite the indicator, please"Причем стандартный, добавил только вывод значений на экран. Терминал используется на фьючерсах биржи.Может знаете чего ему нехватает в коде 8-> :-? Так всегда происходит? или иногда нормально? Если менять входные параметры, сообщение остается? Ссылка на сообщение Поделиться на другие сайты More sharing options...
pavlus777 Опубликовано 1 ноября, 2018 Автор Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 1 ноября, 2018 Ребята подскажите пож. стоит уже на МТ5 переходить. Или это только шум пока? Шум в основном Ссылка на сообщение Поделиться на другие сайты More sharing options...
0xFX Опубликовано 3 ноября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 3 ноября, 2018 Приветствую всех.. Есть вопрос по последнему уроку. for(int i=limit;1>=0;i--) { MAOSBuffer=FastBuffre-SlowBuffer;//Здесь выход за пределы массива ColorsBuffer=(MAOSBuffer>0?(MAOSBuffer>MAOSBuffer[i+1]?0:1):MAOSBuffer }Почему ругается размерность массива??И почему то не даёт код вставить в сообщение..123.jpg Изменено 3 ноября, 2018 пользователем 0xFX Ссылка на сообщение Поделиться на другие сайты More sharing options...
NPM23 Опубликовано 3 ноября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 3 ноября, 2018 Там опечатка в цикле : 1>=0Должно быть : i>=0 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
oLeo Опубликовано 12 ноября, 2018 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 12 ноября, 2018 Всем привет, есть индикатор для ручной разметки волн Эллиотта в МТ4, может кто-нибудь помочь его конвертировать в mql5? ewm.mq4usability.png Изменено 12 ноября, 2018 пользователем oLeo 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
pavlus777 Опубликовано 15 ноября, 2018 Автор Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 15 ноября, 2018 Новый урок:http://tradelikeapro.ru/peredelyivaem-ea-dlya-mt4-pod-mt5/ 3 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти