Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 224

 
Alekseu Fedotov:

Ветка четверошная.
В ветке приветствуются кроссплатформенные коды для облегчения перехода новичкам на пятёрку.
 
Помогите написать функцию которая возвращает бар последнего пересечения MA  при условии что между последним и предпоследним пересечением есть допустим 10 баров и от точки последнего пересечения до минимума есть заданное количество пунктов . уже третьи сутки бьюсь ничего не получается файл с кодом прилагаю
Файлы:
test.mq4  41 kb
 
Artyom Trishkin:
В ветке приветствуются кроссплатформенные коды для облегчения перехода новичкам на пятёрку.

Откровенно, отмучился но так и не понял как данные вычисления воспроизвести в пятерке :

//--- counted in the 1-st buffer
   for(i=0;i<limit;i++)
     {
      int bars=iBarShift(Symbol(),PERIOD_M1,iTime(Symbol(),PERIOD_CURRENT,i),false);
      ExtBuffer[i]=(
                    iMA(NULL,PERIOD_CURRENT,1,0,MODE_SMA,PRICE_HIGH,i)
                    +iMA(NULL,PERIOD_M1,1,1,MODE_SMA,PRICE_OPEN,bars)
                    );
      Print(bars);
     }
 
cripple:

Откровенно, отмучился но так и не понял как данные вычисления воспроизвести в пятерке :

Я сразу предложил универсальный код

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Любые вопросы новичков по MQL4, помощь и обсуждение по алгоритмам и кодам

Alexey Viktorov, 2017.06.02 14:27

Попробуй 

int  Bars(
   string           symbol_name,     // имя символа
   ENUM_TIMEFRAMES  timeframe,       // период
   datetime         start_time,      // с какой даты
   datetime         stop_time        // по какую дату
   );

время i-того бара и полученный номер бара вместо i поставить.


это работает и в mql4 и в mql5.

Bars - Доступ к таймсериям и индикаторам - Справочник MQL4
Bars - Доступ к таймсериям и индикаторам - Справочник MQL4
  • docs.mql4.com
Bars - Доступ к таймсериям и индикаторам - Справочник MQL4
 
Alexey Viktorov:

Я сразу предложил универсальный код


это работает и в mql4 и в mql5.

Но как в пятерке получить 

start_time,      // с какой даты

 тут

iTime()

не работает.

 
cripple:

Но как в пятерке получить 

 тут

не работает.

CopyTime работает.

Но это в этом случае не нужно, ведь время текущего периода есть в time[i], это-же индикатор...

iTime(Symbol(),PERIOD_CURRENT,i) == time[i]
CopyTime - Доступ к таймсериям и индикаторам - Справочник MQL4
CopyTime - Доступ к таймсериям и индикаторам - Справочник MQL4
  • docs.mql4.com
CopyTime - Доступ к таймсериям и индикаторам - Справочник MQL4
 

Всем привет. Помогите разобраться с функцией OrderProfit(). Как сделать в Comment отображение текущего профита всех открытых ордеров. У меня выдает одно и тоже число.

double CalcProfit()

{

   double Profit = 0;

   for (int i=OrdersTotal() - 1; i>=0; i--)

   {

      if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))

      {

         if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)

         {

            if (OrderType() == OP_BUY)

            {

               Profit += (OrderProfit() + OrderSwap() + OrderCommission());

            }

         }

      }

   }

   return(Profit);

}

 
Как сделать, чтобы с каждым тиком (изменением цены) менялось соответственно значение профита.
 
AlGuru:

Всем привет. Помогите разобраться с функцией OrderProfit(). Как сделать в Comment отображение текущего профита всех открытых ордеров. У меня выдает одно и тоже число.

double CalcProfit()

{

   double Profit = 0;

   for (int i=OrdersTotal() - 1; i>=0; i--)

   {

      if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))

      {

         if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)

         {

            if (OrderType() == OP_BUY)

            {

               Profit += (OrderProfit() + OrderSwap() + OrderCommission());

            }

         }

      }

   }

   return(Profit);

}


Всё. Разобрался.
 
cripple:

Но как в пятерке получить 

 тут

не работает.

для начала так

https://www.mql5.com/ru/articles/81

я лично сначала пишу на 4-рке, потом переделываю на 5-рку, по другому - хлопотно для меня, т.к. 5-рошный код хуже читать, слишком длинные по количеству букв функции..., т.е получается текст для гумманитариев, а не для технарей )))

и вот

https://www.mql5.com/ru/search#!keyword=с%20mql4%20на%20mql5

Переход с MQL4 на MQL5
Переход с MQL4 на MQL5
  • 2010.05.11
  • Sergey Pavlov
  • www.mql5.com
Данная статья, построенная в форме справочника по функциям MQL4, призвана помочь переходу с MQL4 на MQL5. Для каждой функции языка MQL4 приведено описание и представлен способ ее реализации на MQL5, что позволит вам значительно ускорить перевод своих программ с MQL4 на MQL5. Для удобства функции разбиты на группы, как в документации по MQL4.