포럼을 어지럽히 지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 6. - 페이지 530

 
Integer :

차트에 그래픽 개체를 만듭니다. 특정 이름을 가진 객체가 있으면 OnStart() 함수의 시작 부분에서 종료합니다. 잠금을 해제하려면 개체를 수동으로 삭제합니다.

고맙습니다!

어떻게 나가? 반환(0); 나에게 오류를 보여줍니다.

 
abeiks :

고맙습니다!

어떻게 나가? 리턴(0); 나에게 오류를 보여줍니다.

기능 유형에 따라. 이제 start()가 아니지만 OnTick()은 void입니다. 이는 항상 반환됨을 의미합니다.

 return ;
 
r772ra :
댓글 인쇄용. 직장에서 필요하지 않은 경우. 이 같은.

고맙습니다! 외부 설정에서 고문의 시간 제한을 작동시키는 방법을 알려주십시오.

이것을 추가했습니다


int start()
{
   if (!isTradeTimeInt( 21 , 30 , 01 , 00 )) return ;
а в конце кода вот это
//+------------------------------------------------------------------+
//|  Описание : Возвращает флаг разрешения торговли по времени.                |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    hb - часы времени начала торговли                                       |
//|    mb - минуты времени начала торговли                                     |
//|    he - часы времени окончания торговли                                    |
//|    me - минуты времени окончания торговли                                  |
//+----------------------------------------------------------------------------+
bool isTradeTimeInt( int hb= 0 , int mb= 0 , int he= 0 , int me= 0 ) {
   datetime db, de;           // Время начала и окончания работы
   int       hc;               // Часы текущего времени торгового сервера

  db= StrToTime ( TimeToStr ( TimeCurrent (), TIME_DATE )+ " " +hb+ ":" +mb);
  de= StrToTime ( TimeToStr ( TimeCurrent (), TIME_DATE )+ " " +he+ ":" +me);
  hc= TimeHour ( TimeCurrent ());
   if (db>=de) {
     if (hc>=he) de+= 24 * 60 * 60 ; else db-= 24 * 60 * 60 ;
  }

   if ( TimeCurrent ()>=db && TimeCurrent ()<=de) return ( True );
   else return ( False );
}
 
Integer :

기능 유형에 따라. 이제 start()가 아니지만 OnTick()은 void입니다. 이는 항상 반환됨을 의미합니다.


고맙습니다!
 
tatianati :

고맙습니다! 외부 설정에서 고문의 시간 제한을 작동시키는 방법을 알려주십시오.

이것을 추가했습니다

 extern int    StartHour     = 21 ;       // Время закрытия, часы
extern int    StartMinute   = 30 ;       // Время закрытия, минуты
extern int    CloseHour     = 01 ;       // Время закрытия, часы
extern int    CloseMinute   = 0 ;       // Время закрытия, минуты
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit ()
  {
//---

//---
   return ( INIT_SUCCEEDED );
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit ( const int reason)
  {

  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick ()
  {
   if (isTradeTimeInt(StartHour,StartMinute,CloseHour,CloseMinute))
     {
     //Здесь то,,,,
     //что работает, в этом диапозоне времени
     }
  }
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//|  Описание : Возвращает флаг разрешения торговли по времени.                |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    hb - часы времени начала торговли                                       |
//|    mb - минуты времени начала торговли                                     |
//|    he - часы времени окончания торговли                                    |
//|    me - минуты времени окончания торговли                                  |
//+----------------------------------------------------------------------------+
bool isTradeTimeInt( int hb= 0 , int mb= 0 , int he= 0 , int me= 0 ) {
   datetime db, de;           // Время начала и окончания работы
   int       hc;               // Часы текущего времени торгового сервера

  db= StrToTime ( TimeToStr ( TimeCurrent (), TIME_DATE )+ " " +( string )hb+ ":" +( string )mb);
  de= StrToTime ( TimeToStr ( TimeCurrent (), TIME_DATE )+ " " +( string )he+ ":" +( string )me);
  hc= TimeHour ( TimeCurrent ());
   if (db>=de) {
     if (hc>=he) de+= 24 * 60 * 60 ; else db-= 24 * 60 * 60 ;
  }

   if ( TimeCurrent ()>=db && TimeCurrent ()<=de) return ( True );
   else return ( False );
}
 

EA가 지표를 표시할 수 있습니까? MQL5의 ChartIndicatorAdd 함수 에 대한 대안입니다.


사용자 지정 지표를 기반으로 계산을 수행하는 Expert Advisor의 예는 어디에서 찾을 수 있습니까?

 
알려주세요 어드바이저에서 이동평균선 의 기울기 각도나 이동평균선으로 가격억제를 일정한 각도로 규정할 수 있나요?
 
Profitov :
알려주세요 어드바이저에서 이동평균선의 기울기 각도나 이동평균선으로 가격억제를 일정한 각도로 규정할 수 있나요?
이제 그들은 각도 가 그래프의 크기에 따라 달라지며 이것은 할 수 없다고 설명하기 시작할 것입니다...
그러나 각도가 아니라 이 각도의 탄젠트만 취하면 계획을 충분히 수행할 수 있습니다.
 
아시는 분 알려주세요.

내 Expert Advisor는 int init()에서 먼저 1000개 막대의 로드 기록을 테스트한 다음 start()를 테스트합니다. 테스터에서는 이 과정이 3~4초 정도 걸리고, 실제로는 8분 정도 걸립니다.
무엇으로 연결할 수 있습니까? 실제 테스트에서 테스터만큼 많은 시간이 소요되는지 확인하는 방법은 무엇입니까?
 
agvozdezkiy :

EA가 지표를 표시할 수 있습니까? MQL5의 ChartIndicatorAdd 함수에 대한 대안입니다.


사용자 지정 지표를 기반으로 계산을 수행하는 Expert Advisor의 예는 어디에서 찾을 수 있습니까?

https://book.mql4.com/ru/samples/icustom