Помощь в кодировании - страница 764

 
Здравствуйте друзья, я работаю в новой стратегии с этим инди, я хочу объединить его с другими индикаторами, я использую ICustom, индикаторы имеют 2 буфера без проблем с этим, но индикатор имеет экстремальные уровни 12 и 15, как я могу закодировать эти уровни в моем пользовательском индикаторе, спасибо.
Файлы:
SDA v 3.2.mq4  8 kb
 
Sanz50:
Здравствуйте друзья, я работаю в новой стратегии с этим инди, я хочу объединить его с другими индикаторами, я использую ICustom, индикаторы имеют 2 буфера без проблем с этим, но индикатор имеет экстремальные уровни 12 и 15, как я могу закодировать эти уровни в моем пользовательском индикаторе, спасибо.
Сравните значения, возвращаемые iCustom(), с 12 и 15
 
mladen:
Сравните значения, возвращаемые функцией iCustom(), с 12 и 15

Большое спасибо за ваш ответ, сэр, я учусь кодировать, меня интересует только когда цена выше уровня 15, что должно измениться в этом?

double SDA(int i)

{

double up = iCustom(Symbol(),0, "SDA v 3.2",1,i+1)!=EMPTY_VALUE;

double dn = iCustom(Symbol(),0, "SDA v 3.2",0,i+1)!=EMPTY_VALUE;

if(up)

{

return(1);

}

if(dn)

{

return(-1);

}

return(0);

}


Файлы:
SDA v 3.2.mq4  8 kb
 
sda v 3.2__2.mq4
кодировка?
это индикатор "перевернут / сброшен".
 

Я использую этот код для считывания поддержки и сопротивления из прилагаемого индикатора,

Является ли мой код правильным?

//global variables
   double            m_SupResvalS[1];
   double            m_SupResvalR[1];
   double            m_SupRescl[1];
   int               shift=0;
   bool  buyreg,sellreg=false;

bool getSinal()
  {
          if(CopyBuffer(m_SupResHand,0,Shift,1,m_SupResvalS)==-1 ||
             CopyBuffer(m_SupResHand,1,Shift,1,m_SupResvalR)==-1 ||
             CopyClose(_Symbol,CURRENT_PERIOD,Shift,1,m_SupRescl)==-1
            ) return(false);


          buyreg=m_SupRescl[0]>m_SupResvalR[0] && m_SupRescl1[0]<=m_SupResvalR1[0];
               // Crossing the line of resistance up.                    
          sellreg=m_SupRescl[0]<m_SupResvalS[0] && m_SupRescl1[0]>=m_SupResvalS1[0];
               // Crossing the line of support down.                      

   return(true);
}
Файлы:
 
Функция CHARTNEXT()

Привет всем,

Я пытаюсь работать с этим в моей ea:

//--- variables for chart ID
   long currChart,prevChart=ChartFirst();
   int i=0,limit=100;
   Print("ChartFirst =",ChartSymbol(prevChart)," ID =",prevChart);
   while(i<limit)// We have certainly not more than 100 open charts
     {
      currChart=ChartNext(prevChart); // Get the new chart ID by using the previous chart ID
      if(currChart<0) break;          // Have reached the end of the chart list
      Print(i,ChartSymbol(currChart)," ID =",currChart);
      prevChart=currChart;// let's save the current chart ID for the ChartNext()
      i++;// Do not forget to increase the counter
     }
это из документации mql4. Но после некоторого времени или переключения таймфрейма, на котором установлена ea, я не получаю значения для ChartSymbol(currChart) во второй печати, первая всегда работает. Поэтому я думаю, что что-то не так с функцией ChartNext. Почему-то она работает в индикаторе, но я хотел бы использовать ее в ea.

Кто-нибудь может помочь, пожалуйста?

приветствую

Джо
 
mladen:
Сравните значения, возвращаемые iCustom(), с 12 и 15

Меня интересует, когда SDA превышает уровень 15, как закодировать это в iCustom().

Большое спасибо.

 
Sanz50:

Меня интересует, когда SDA превышает уровень 15, как закодировать это в iCustom().

Большое спасибо.

Этот код декомпилирован ...
 
это равный индикатор имеет 2 буфера, поэтому может работать для iCustom
Файлы:
my filter.ex4  9 kb
 
Sanz50:
это равный индикатор имеет 2 буфера, поэтому может работать для iCustom
:)

Проверьте буфер 1 и буфер 2 - что еще можно проверить? :)
Причина обращения: