Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1248

 
Sergey:

Добрый день!

Разбираю код индикатора. Застрял на одной строчке.

Что значит последняя строка и как ее можно переписать проще (понятнее) ?

В документации нормально описано.

Документация по MQL5: Основы языка / Операторы / Условный оператор ?:
Документация по MQL5: Основы языка / Операторы / Условный оператор ?:
  • www.mql5.com
В качестве первого операнда – "выражение1" – может быть использовано любое выражение, результатом которого является значение типа bool. Если результат равен , то выполняется третий операнд – "выражениеЗ". Второй и третий операнды, то есть "выражение2" и "выражениеЗ", должны возвращать значения одного типа и не должны иметь тип void. Результатом...
 
Vitaly Muzichenko:

Она написана куда проще, чем любая другая конструкция. Называется: тернарный оператор

Код показал условно, надеюсь, разберётесь дальше 

Благодарю за пояснения.

 

Всем привет!

Продолжаю изучение языка программирования MQL5. Абсолютно загадочные для меня функции, команды, переменные, массивы и всё тому подобное, из китайских иероглифов постепенно стали превращаться в китайские палочки – уже примерно начинаю представлять для чего они, но пока ещё пользоваться ими не умею.

На данном этапе составил подробное техническое задание для написания простенького советника. При помощи Мастера MQL5 создал шаблон советника и начал постепенно заполнять его кодом. Каждую строчку кода комментирую, чтобы всё постепенно откладывалось в памяти.

Сегодня столкнулся с одной проблемой, а именно: в локальной папке клиентского терминала \Terminal\Common\Files создал файл csv. В ячейке А1 этого файла вручную записал слово «купить». Далее, согласно технического задания, советнику нужно как-то указать, чтобы он считал это слово, преобразовал это слово во что-то удобоваримое и понятное в виде программного кода, понял, что от него требуется, а уж только затем открыл позицию «BUY».

Вот никак не могу подобрать и написать такие ключевые слова в поисковике сайта MQL5, чтобы появились ссылки на нужные статьи или примеры.

Прошу, помогите, пожалуйста, только не готовым кодом, потому что так никогда не пойму язык MQL5, а именно ключевыми словами для поиска! Что написать, как сформулировать запрос для поисковика?

С уважением, Владимир.

Знакомство с MQL5: написание простого советника и индикатора
Знакомство с MQL5: написание простого советника и индикатора
  • www.mql5.com
Язык программирования MetaQuotes Language 5 (MQL5), входящий в торговый терминал MetaTrader 5, обладает новыми возможностями и более высоким быстродействием, по сравнению с языком MetaQuotes Language 4 (MQL4). Эта статья поможет познакомиться с новым языком программирования. В ней приведен пример написания простого советника и индикатора, также...
 
MrBrooklin:

Всем привет!

Продолжаю изучение языка программирования MQL5. Абсолютно загадочные для меня функции, команды, переменные, массивы и всё тому подобное, из китайских иероглифов постепенно стали превращаться в китайские палочки – уже примерно начинаю представлять для чего они, но пока ещё пользоваться ими не умею.

На данном этапе составил подробное техническое задание для написания простенького советника. При помощи Мастера MQL5 создал шаблон советника и начал постепенно заполнять его кодом. Каждую строчку кода комментирую, чтобы всё постепенно откладывалось в памяти.

Сегодня столкнулся с одной проблемой, а именно: в локальной папке клиентского терминала \Terminal\Common\Files создал файл csv. В ячейке А1 этого файла вручную записал слово «купить». Далее, согласно технического задания, советнику нужно как-то указать, чтобы он считал это слово, преобразовал это слово во что-то удобоваримое и понятное в виде программного кода, понял, что от него требуется, а уж только затем открыл позицию «BUY».

Вот никак не могу подобрать и написать такие ключевые слова в поисковике сайта MQL5, чтобы появились ссылки на нужные статьи или примеры.

Прошу, помогите, пожалуйста, только не готовым кодом, потому что так никогда не пойму язык MQL5, а именно ключевыми словами для поиска! Что написать, как сформулировать запрос для поисковика?

С уважением, Владимир.

Сразу из файла торговые приказы читать) это не простенький уже изначально. Поиск работа с файлами первая статья. И третья, но это уже сложнее.

Работа с файлами

Поиск - MQL5.community
Поиск - MQL5.community
  • www.mql5.com
Поиск выполняется с учетом морфологии и без учета регистра. Все буквы, независимо от того, как они введены, будут рассматриваться как строчные. По умолчанию наш поиск показывает страницы...
 
Valeriy Yastremskiy:

Сразу из файла торговые приказы читать) это не простенький уже изначально. Поиск работа с файлами первая статья. И третья, но это уже сложнее.

Работа с файлами

Спасибо, Валерий, за совет, только он получился почему-то в усеченном виде: поиск "Работа с файлами" - это первая статья, потом "бах!" и сразу третья. А какая должна быть вторая статья и третья статья собственно о чём?  Можно поподробнее?

Статью "Работа с файлами" уже изучаю.

С уважением, Владимир.

 
MrBrooklin:

Спасибо, Валерий, за совет, только он получился почему-то в усеченном виде: поиск "Работа с файлами" - это первая статья, потом "бах!" и сразу третья. А какая должна быть вторая статья и третья статья собственно о чём?  Можно поподробнее?

Статью "Работа с файлами" уже изучаю.

С уважением, Владимир.

Поиск ведется не только по статьям, а так же по форуму, кодобазе, блогам. Ранжирование не знаю как. В результатах поиска и статьи, и ветки форума с поисковым запросом выдаются. Сейчас видимо работы на сайте и он часто неадекватно себя ведет. У меня 

https://www.mql5.com/ru/articles/2720  первая статья 2016 года Дмитрия Федосеева. Ее надо читать.

https://www.mql5.com/ru/articles/1382  третья статья 2006 года на МТ4, про работу с файлами и графическими объектами, и логику прочитать не лишне.

Вторая про управление оптимизацией, это откровенно еще рано.

Основы программирования на MQL5: Файлы
Основы программирования на MQL5: Файлы
  • www.mql5.com
Функции для работы с файлами есть почти во всех языках программирования, и MQL5 в этом смысле — не исключение. Хотя при программировании советников и индикаторов на MQL5 работать с использованием файлов приходится не всегда, (а скорее даже — очень редко), но тем не менее, каждый экспертописатель рано или поздно с этим сталкивается. Диапазон...
 
Valeriy Yastremskiy:

Поиск ведется не только по статьям, а так же по форуму, кодобазе, блогам. Ранжирование не знаю как. В результатах поиска и статьи, и ветки форума с поисковым запросом выдаются. Сейчас видимо работы на сайте и он часто неадекватно себя ведет. У меня 

https://www.mql5.com/ru/articles/2720  первая статья 2016 года Дмитрия Федосеева. Ее надо читать.

https://www.mql5.com/ru/articles/1382  третья статья 2006 года на МТ4, про работу с файлами и графическими объектами, и логику прочитать не лишне.

Вторая про управление оптимизацией, это откровенно еще рано.

Спасибо, Валерий! Первую статью 2016 года Дмитрия Федосеева уже изучаю. Третья статья для МТ4, а у меня МТ5, но всё равно прочитаю. Со второй статьёй всё понятно.

С уважением, Владимир.

 

Всем доброго дня!

Продолжаю изучение языка MQL5. Попытался собрать советника, который бы читал из ячейки А1 в файле EUR_USD.csv слово "покупать" и открывал позицию BUY. Компилятор ошибок не выявил, что уже хорошо для меня. Советник при запуске в работу к файлу обращается - это точно. Но открытие позиции не происходит. Понимаю, что проблема именно в этой части кода. Одну строчу заблокировал, т.к. не понятно, нужна она или нет. Но и с ней и без неё, советник всё-равно не открывает позицию BUY.

Прошу подсказать, что делаю не так, но только не кодом, а дать направление, что нужно добавить или исправить. Может в комментариях что-то не точно перевёл и это сбивает меня с толку?

С уважением, Владимир.

void OnTimer() // функция, вызываемая при наступлении события Timer (генерируется системным таймером, в скриптах не применяется!)
  {

   filehandle=FileOpen("EUR_USD.csv",FILE_READ|FILE_SHARE_READ|FILE_CSV|FILE_COMMON); // открываем файл для чтения
   if(filehandle!=INVALID_HANDLE) // если указатель файла не равен константе "некорректный указатель"
     {
      FileSeek(filehandle,0,SEEK_SET); // перемещаем файловый указатель в начало файла
     }
   FileClose(filehandle); // закрываем файл
     {
      string open = FileReadString(filehandle);  // читаем из файла строку с текущего положения файлового указателя
      if(open == "покупать") // если значение строки равно "покупать"

         //         if(PositionSelect(_Symbol)) // выбираем позицию на текущем графике (символе)
        {
         Type_Pos=EnumToString((ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE)); // определяем тип позиции, BUY или SELL
         PositionGetDouble(POSITION_VOLUME,Volume); // определяем объём
        }
        {
         if(Type=="POSITION_TYPE_BUY") // если тип позиции "BUY"
           {
            OpenBuy(Volume*Lots); // открываем позицию "BUY", с объемом расчитанным по формуле
            return;
           }
         else // в противном случае
           {
            OpenSell(Volume*Lots); // открываем позицию "SELL", с объемом расчитанным по формуле
            return; // оператор, который прекращает выполнение текущей функции и возвращает управление вызвавшей программе
           }
        }
     }
 
Как программно в эксперте определить какая версия windows установлена?
 
mrgabdullin:
Как программно в эксперте определить какая версия windows установлена?

Зачем и почему Windows, а не другая система?