MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 473

 
Bek001 :

  다르게 물어볼게요. 지난 10초 동안의 최고 가격을 어떻게 결정할 수 있습니까?

MT5에서 - CopyTicks()

MT4 에서 MqlTick 구조의 배열에 틱을 저장합니다. 그것에서 최대 / 최소를 취하십시오. 물가

 

방법을 알려주세요? 나는 알림 기능을 썼고 알림은 틱마다 온다! 함수 자체는 단순히 int Start로 작성됩니다. M30의 PATTERN 조건.

 ///--------------------------------------------------------------------------------------------
/// ФУНКЦИЯ ОТПРАВКИ УВЕДОМЛЕНИЙ
///--------------------------------------------------------------------------------------------
void NOTIFICATION()
{

int DayT= 0 ,BarTime;
 if (DayT!= Day ()) // Если новый день - нужно опросить
 {
 DayT= Day ();
if (Push_On&&DAY_HIGH()) SendNotification ( "ДЕНЬ ЗАКРЫЛСЯ ВЫШЕ ЛИНИИ -" + Symbol ());
if (Push_On&&DAY_LOW()) SendNotification ( "ДЕНЬ ЗАКРЫЛСЯ НИЖЕ ЛИНИИ -" + Symbol ());
}
if (BarTime== Time [ 0 ]) // Если новый бар - нужно опросить
{
   BarTime= Time [ 0 ];
if (Push_On&&DAY_HIGH()&&PATERN_BUY()) SendNotification ( "ДЕНЬ ЗАКРЫЛСЯ ВЫШЕ ЛИНИИ + ПАТТЕРН -" + Symbol ());
if (Push_On&&DAY_LOW()&&PATERN_SELL()) SendNotification ( "ДЕНЬ ЗАКРЫЛСЯ НИЖЕ ЛИНИИ + ПАТТЕРН -" + Symbol ());
}
}
 
Rewerpool :

방법을 알려주세요? 나는 알림 기능을 썼고 알림은 틱마다 온다! 함수 자체는 단순히 int Start로 작성됩니다.

정적 정수 DayT=0;
 
@Artyom Trishkin 감사합니다! 흥미롭게도 지금은 완전히 조용합니다!
 
Rewerpool :
@Artyom Trishkin 감사합니다! 흥미롭게도 지금은 완전히 조용합니다!
모바일에서 코드를 읽기가 어렵습니다. 분명히 다른 것이 있습니다.
 
Rewerpool :

방법을 알려주세요? 나는 알림 기능을 썼고 알림은 틱마다 온다! 함수 자체는 단순히 int Start로 작성됩니다. M30의 PATTERN 조건.

 int DayT= 0 ;
datetime BarTime= TimeCurrent ();
void NOTIFICATION()
{
   if (DayT!= Day ()) // Если новый день - нужно опросить
   {
      DayT= Day ();
       if (Push_On&&DAY_HIGH()) SendNotification ( "ДЕНЬ ЗАКРЫЛСЯ ВЫШЕ ЛИНИИ -" + Symbol ());
       if (Push_On&&DAY_LOW()) SendNotification ( "ДЕНЬ ЗАКРЫЛСЯ НИЖЕ ЛИНИИ -" + Symbol ());
   }
   if (BarTime== Time [ 0 ]) // Если новый бар - нужно опросить
   {
      BarTime= Time [ 0 ];
       if (Push_On&&DAY_HIGH()&&PATERN_BUY()) SendNotification ( "ДЕНЬ ЗАКРЫЛСЯ ВЫШЕ ЛИНИИ + ПАТТЕРН -" + Symbol ());
       if (Push_On&&DAY_LOW()&&PATERN_SELL()) SendNotification ( "ДЕНЬ ЗАКРЫЛСЯ НИЖЕ ЛИНИИ + ПАТТЕРН -" + Symbol ());
   }
}

변수를 선언한 다음 비교합니다. 물론 항상 같은 결과를 얻습니다.

 
Artyom Trishkin :
모바일에서 코드를 읽기가 어렵습니다. 분명히 다른 것이 있습니다.

이래야 했던 것 같다.

 datetime BarTime;
 

@Konstantin Nikitin 안녕하세요!!! 수정!! 매일 신호가 있습니다! 일중을 확인하는 것이 남아 있습니다!

결정된! 여기:

 ///--------------------------------------------------------------------------------------------
/// ФУНКЦИЯ ОТПРАВКИ УВЕДОМЛЕНИЙ
///--------------------------------------------------------------------------------------------
void NOTIFICATION()
{

static int DayT= 0 ;
datetime BarTime;
 if (DayT!= Day ()) // Если новый день - нужно опросить
 {
 DayT= Day ();
if (Push_On&&DAY_HIGH()) SendNotification ( "ДЕНЬ ЗАКРЫЛСЯ ВЫШЕ ЛИНИИ -" + Symbol ());
if (Push_On&&DAY_LOW()) SendNotification ( "ДЕНЬ ЗАКРЫЛСЯ НИЖЕ ЛИНИИ -" + Symbol ());
}
if (BarTime== Time [ 0 ]) // Если новый бар - нужно опросить
{
   BarTime= Time [ 0 ];
if (Push_On&&DAY_HIGH()&&PATERN_BUY()) SendNotification ( "ДЕНЬ ЗАКРЫЛСЯ ВЫШЕ ЛИНИИ + ПАТТЕРН -" + Symbol ());
if (Push_On&&DAY_LOW()&&PATERN_SELL()) SendNotification ( "ДЕНЬ ЗАКРЫЛСЯ НИЖЕ ЛИНИИ + ПАТТЕРН -" + Symbol ());
}
}
 
Rewerpool :

@Konstantin Nikitin 안녕하세요!!! 수정!! 매일 신호가 있습니다! 일중을 확인하는 것이 남아 있습니다!

결정된! 여기:

 static int DayT= 0 ;
datetime BarTime;

글로벌 수준으로 가져가십시오. 그들은 항상 0과 같을 것입니다. 왜냐하면 함수가 호출될 때마다 새로 선언됩니다.

 
@Konstantin Nikitin 이러한 매개변수를 함수 본문 외부로 이동하도록 제안하고 있습니까? 아니면 내가 마지막 화면에 쓴 대로 그대로 두시겠습니까?