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

 
darirunu1:

У Вас проблемы со зрением?

Что за лошадиный текст? 

 
Сергей Таболин:

У Вас проблемы со зрением?

Что за лошадиный текст? 

Случайность.

 
Alexey Viktorov:

А если человек пишет сам для себя?

всё равно ведь не измерит расстояние от невидимой точки, пересечение-то будет в другом месте.

 
Taras Slobodyanik:

всё равно ведь не измерит расстояние от невидимой точки, пересечение-то будет в другом месте.

Я говорил о том, что если человек пишет для себя, то он понимает что делает и понимает что произойдёт и не скажет

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

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

Taras Slobodyanik, 2021.02.28 09:37

следовательно и сделки такие никак не проверишь на правильность, будут висеть в воздухе, а пользователь будет говорить - вот МТ4 глючной весь)


А вот как раз для замера от невидимой точки и нужно это значение сунуть в переменную.
 
Alexey Viktorov:

Я говорил о том, что если человек пишет для себя, то он понимает что делает и понимает что произойдёт и не скажет


А вот как раз для замера от невидимой точки и нужно это значение сунуть в переменную.

так и рождаются Граали)

тогда уж не в переменную, а в буфер, потому как таких точек будет очень много.

 
Посмотрите ,что в итоге получилось. Нижний индикатор, родной код не трогал, просто параметрами поигрался. В коде индикатора на графике цены в коде поменял нулевой бар на первый. 
 
Alexey Viktorov:

В момент пересечения значение МА было не таким какое стало после закрытия бара. Следовательно это значение можно найти только в момент пересечения.

//+------------------------------------------------------------------+
//|                                                         Test.mq4 |
//|                        Copyright 2019, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2019, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
//---

double     FixPrice;        // переменная
bool       Fix = false;      // маркер
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   if(Fix == false)
     {
      if(Close[0] > MA_lo)
         FixPrice = Close[0];
     }                                                                              // делаем замер пока цена не пересечет МА
   if(Close[0] < MA_lo)
      Fix = true;
   if(Fix == true)
      FixPrice_L = FixPrice ;
//+------------------------------------------------------------------+
  }
//+------------------------------------------------------------------+

Это как хотите вы, чтобы значение запоминалось.

Но имейте ввиду что

Close[0]=Open[0] 
и Close[0]=High [0] и Close[0]=Low[0]


на открытии свечи

Поэтому, если вам нужно моментально, в режиме реального времени лучше использовать

double Bidd=NormalizeDouble(Bid,Digits); если цена сверху или
double Askk=NormalizeDouble(Askk,Digits); если цена снизу МА

double MA_lo=NormalizeDouble(MA_lo,Digits);

Лучше все цены, которые будут сравниваться, в условии, нормализовать, чтобы не удивляться :)

Открой новые возможности в MetaTrader 5 с сообществом и сервисами MQL5
Открой новые возможности в MetaTrader 5 с сообществом и сервисами MQL5
  • 2021.02.28
  • www.mql5.com
MQL5: язык торговых стратегий для MetaTrader 5, позволяет писать собственные торговые роботы, технические индикаторы, скрипты и библиотеки функций
 
Александр:

Это как хотите вы, чтобы значение запоминалось.

Но имейте ввиду что

на открытии свечи

Поэтому, если вам нужно моментально, в режиме реального времени лучше использовать

Лучше все цены, которые будут сравниваться, в условии, нормализовать, чтобы не удивляться :)

Боже милостивый! Разве я что-то хотел? Разве я что-то просил? Вы меня за кого держите?
 

Всем доброго времени суток!
При написании кода для тестирования советника , мне нужно в режиме реального времени искать минимум внутри каждой минутной свечи. Для этого я выбрал предопределенную переменную Low[0] с индексом 0. Индекс ноль - для того что бы искала минимум на каждой текущей свече.

Вот мой код
void OnTick()

{

Print("------------",  Low[0]  );

}

На первой свече (желтой) переменная показывала минимум как мне и было нужно

А на всех последующих свечах до    2010.01.04 00:30:00 переменная показывает -1.6119 , тое есть повторяет минимум первой свечи, а не ищет минимумы внутри каждой минутной свечи.
На свече  2010.01.04 00:30:00 снова показывает каждый минимум

На следующих после этой  показывает -1.6128 , тое есть повторяет минимум первой свечи, а не ищет минимумы внутри каждой минутной свечи.

Вместо переменной  Low[0] , я использовал так же функцию iLow(NULL , 0,0) .Но эффект был абсолютно таким же.
ВОПРОС
Как при помощи указанной функции или переменной искать минимум внутри каждой минутной свечи, или при помощи какой другой функции это можно делать на языке MQL4?

Всем спасибо за помощь.

Документация по MQL5: Предопределенные переменные
Документация по MQL5: Предопределенные переменные
  • www.mql5.com
Предопределенные переменные - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
iLow(NULL,1,0)
Причина обращения: