mql4 언어의 기능, 미묘함 및 작업 방법 - 페이지 3

 

입력 매개변수 탭에서 스크립트, 인디케이터, 어드바이저를 실행하면 변수 이름이 표시됩니다.

 extern int Период= 10 ;


#property strict 지시문이 있으면 변수 이름 대신 주석이 표시됩니다.

 #property strict
extern int Период= 10 ;   // Период отображения информации 

IMHO, 더 유익합니다

 
LRA :

입력 매개변수 탭에서 스크립트, 인디케이터, 어드바이저를 실행하면 변수 이름이 표시됩니다.


#property strict 지시문이 있으면 변수 이름 대신 주석이 표시됩니다.

IMHO, 더 유익합니다

글쎄, 특히 이것을 모르는 사람들을 위해. 스크린샷을 보면 모든 것이 명확합니다.


 

MT4에 결함이 있습니다. 예치금이 99999를 초과하면 세부 보고서의 차트에서 하나의 숫자가 사라집니다.

999999보다 크면 두 자리 숫자가 사라집니다. 항상 상위 5자리 숫자만 표시됩니다.


 
LRA :

MT4에 결함이 있습니다. 예치금이 99999를 초과하면 세부 보고서의 차트에서 하나의 숫자가 사라집니다.

999999보다 크면 두 자리 숫자가 사라집니다. 항상 상위 5자리 숫자만 표시됩니다.


시스템 설정에서 글꼴 크기를 125%로 설정했다고 말하는 것을 잊지 마십시오.
 
void OnStart ()
{
   Alert ( "Ордеров = " , OrdersHistoryTotal ());
}   

이야기의 길이를 설정할 수 있다는 사실, 알고 계셨나요? 그리고 이것은 검색 시간에 영향을 미칩니다!

오늘 설치하면 더 적을 것입니다! 자정에 역사가 비어 있습니까? 최적 - 지난 3일 .

개발자에게: 히스토리 깊이를 프로그래밍 방식으로 설정하는 방법은 무엇입니까?

 
MQL5와 달리 MQL4에서 정적 배열 은 크기를 변경할 수 있습니다.
 
fxsaber :
MQL5와 달리 MQL4에서 정적 배열 은 크기를 변경할 수 있습니다.

도움말 오류?

 //+-------------------------------------------------------+
//| ArrayResize                                 PROBA.mq4 |
//+-------------------------------------------------------+
#property strict
void OnStart()
{
  int x[7];         int СтарыйРазмер=ArrayRange(x,0);
  ArrayResize(x,5); int МеньшийРазмер=ArrayRange(x,0);
  ArrayResize(x,9); int БольшийРазмер=ArrayRange(x,0);
  Alert("MQL4: СтарыйРазмер = ",СтарыйРазмер, "   МеньшийРазмер = ",МеньшийРазмер, "   БольшийРазмер = ",БольшийРазмер);
} 


 //+-------------------------------------------------------+
//| ArrayResize                                 PROBA.mq5 |
//+-------------------------------------------------------+
#property strict
void OnStart()
{
  int x[7];         int СтарыйРазмер=ArrayRange(x,0);
  ArrayResize(x,5); int МеньшийРазмер=ArrayRange(x,0);
  ArrayResize(x,9); int БольшийРазмер=ArrayRange(x,0);
  Alert("MQL5: СтарыйРазмер = ",СтарыйРазмер, "   МеньшийРазмер = ",МеньшийРазмер, "   БольшийРазмер = ",БольшийРазмер);
} 
 
LRA :

도움말 오류?

MQL4에 정적 배열 이 없다고 가정하면 오류가 없습니다.
 
정적이라는 주제에 관해서는 두 언어 모두에 미묘한 점이 있습니다.

1065에서 작동했습니다.

 #property strict
#property indicator_chart_window

int TestBrokenStatic()
{
   static int stInt = 101 ;
   
   stInt++;
   return stInt;
}

int OnInit ()
{
   static int result = TestBrokenStatic();
   
   Print ( "TestStatic Expected result 102   - Actual result=" , result);
   result = TestBrokenStatic();
   Print ( "TestStatic Expected result 103   - Actual result=" , result);
   
   return INIT_SUCCEEDED ;
}

int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[])
{
   return rates_total;
}


2017.04.28 15:42:30.941 TestStatic EURCHF,H1: TestStatic 예상 결과 103 - 실제 결과=102

2017.04.28 15:42:30.941 TestStatic EURCHF,H1: TestStatic 예상 결과 102 - 실제 결과=1


 
fxsaber :
정적이라는 주제에 관해서는 두 언어 모두에 미묘한 점이 있습니다.

와우 섬세한 순간 ... SD에 썼습니까?