Бета версия онлайновой книги по программированию на MQL4 - автор Сергей Ковалев (SK.) - страница 5

 
Да, на начальном этапе пока у меня самая частая ошибка -- это не простановка точки с запятой там где она должна быть. Просто забывается поставить. Потом сижу и думаю, что программе не нравится в этой строчке?))). Сейчас возникла проблема с вызовом внешней функции. Пример тут 'Управление ордерами – это просто' Сначала идёт эксперт, потом функция (которая собственно меня и интересует), а потом эксперт с подключением этой функции. Пытался на своём примере подключить, неудалось. Потом на примерах что в статье -- опять не удалось. Фунцию и эксперта сохранил в одной папке. При комплиляции эксперта ошибка 'OneOrderControl.mq4' - cannot open the program file D:\Program Files\MetaTrader 4 Ukrsotsbank\experts\Test.mq4 (3, 1). Что за беда, пока мне трудно понять.
 
Climber:
Пытался на своём примере подключить, неудалось. Потом на примерах что в статье -- опять не удалось. Фунцию и эксперта сохранил в одной папке.
Включаемый файл (OneOrderControl.mq4) должен находиться в директории experts\include
 
После всего))))
Спасибо. Теперь выдумываю каким образом узнать максимальную цену на 40 последних барах.
 
Climber:
Теперь выдумываю каким образом узнать максимальную цену на 40 последних барах.

Посмотрите Задачу 26 в Учебник - Переменные - Массивы.
 
э-э, а в wiki нельзя сделать? Тогда и править удобно и дополнять и в пдф/doc/xml/ .... выгонять можно в любое время.
 
SK. писал (а):
Climber:
Теперь выдумываю каким образом узнать максимальную цену на 40 последних барах.

Посмотрите Задачу 26 в Учебник - Переменные - Массивы.
Точно, самое оно. То что надо. Спасибо. Невнимательность даёт о себе знать.
 
Правильно ли я понимаю выполнение условия оператора if?
if (My - UD*Point >= Ask && _OrdersTotal != 1)          
     {                                          
      Opn_B=true;
Если переменная Му минус переменную UD умноженную на цену пункта, больше или равно Ask и в это же время переменная _OrdersTotal не равна 1, то переменной Opn_B присваивается значение true. То есть только при выполнении этих двух условий переменной Opn_B присвоится значение true.  А если вместо && поставть запятую, то true присвоится при выполнении хотя бы одного из условий.
 
Climber:
Правильно ли я понимаю выполнение условия оператора if?
if (My - UD*Point >= Ask && _OrdersTotal != 1)          
     {                                          
      Opn_B=true;
Если переменная Му минус переменную UD умноженную на цену пункта, больше или равно Ask и в это же время переменная _OrdersTotal не равна 1, то переменной Opn_B присваивается значение true. То есть только при выполнении этих двух условий переменной Opn_B присвоится значение true. А если вместо && поставть запятую, то true присвоится при выполнении хотя бы одного из условий.


В целом правильно.

Но выражение, указанное в заголовке оператора if(), является логическим. Оно не предполагает возможности "поставить запятую". Чтобы осуществить второй описываемый Вами вариант необходимо вместо && (логические И) поставить || (логическое ИЛИ). В этом случае всё выражение в заголовке (в скобках) будет равно true (истина) в случае, если истинным является хотя бы одно из выражений, разделённых знаком операции ||.

Допускается использование круглых скобок. Скобки имеют более высокий рпиоритет при вычислениях (подобно обычным арифметическим вычислениям).

 
Renat:
На днях мы запустили бета-версию онлайновой книги Сергея Ковалева (SK.) по программированию на MQL4.
https://book.mql4.com/ru

Пока работает только русская версия, но мы постараемся перевести ее на английский и китайский языки
Если есть замечания по книге, то сообщите, пожалуйста.

У меня на двух разных компьютерах в разных браузерах не показываеются рисунки на странице https://book.mql4.com/ru/metaeditor/compose
 
Martes:

У меня на двух разных компьютерах в разных браузерах не показываеются рисунки на странице https://book.mql4.com/ru/metaeditor/compose
Странно, как это может быть. Непонятная проблема.