MQL5의 미래 - MQL5+ 또는 MQL6 - 페이지 8

 
Karputov Vladimir :

여러 TF에서 동시 테스트가 뭔지는 모르겠지만, 최소한 테스트 후에는 다른 TF로 전환할 수 없다는 사실이 윙윙거리지 않습니다. 글쎄, 시각적 테스트 중에 전환하는 것은 정말 멋질 것입니다.
 

미래는... 글쎄요. "고마워, 한숨" (c)



 
최적화할 때 합격 결과를 "결과" 열에 표시되는 숫자가 아니라 백분율로 보고 싶습니다. 예, 백테스트에서 결과 "순이익" 옆에 %로 이익을 표시하는 것이 좋습니다.
 
Rinat Tukaev :
최적화할 때 합격 결과를 "결과" 열에 표시되는 숫자가 아니라 백분율로 보고 싶습니다. 예, 백테스트에서 결과 "순이익" 옆에 %로 이익을 표시하는 것이 좋습니다.
수식을 OnTester() 이벤트 핸들러에 삽입하고 필요한 결과를 확인하십시오.
 
Yury Reshetov :
수식을 OnTester() 이벤트 핸들러에 삽입하고 필요한 결과를 확인하십시오.
고맙습니다! 몰랐다)
 
전역 프로그램 변수 가 MQL4 및 MQL5 플러그인의 변수 및 매개변수와 겹치지 않도록 제안합니다. 그런 다음 Expert Advisor에서 point 변수를 선언하고 "'point' 선언은 153 ChartObject.mqh 154 39 라인에서 'expert.mq4' 파일의 전역 선언을 숨깁니다"와 같은 메시지를 읽었습니다. 결국 이것은 일종의 공포입니다. 모듈, 프로그램에서 다른 모듈의 매개변수에 있는 변수를 선언할 수 없습니다. ChartObject.mqh가 명시적으로 지정하지 않은 경우 ChartObject.mqh 모듈이 내 Expert Advisor인 Expert.mq4를 확인해야 하는 이유는 무엇입니까?
 
Mihail Matkovskij :
전역 프로그램 변수 가 MQL4 및 MQL5 플러그인의 변수 및 매개변수와 겹치지 않도록 제안합니다. 그런 다음 Expert Advisor에서 point 변수를 선언하고 "'point' 선언은 153 ChartObject.mqh 154 39 라인에서 'expert.mq4' 파일의 전역 선언을 숨깁니다"와 같은 메시지를 읽었습니다. 결국 이것은 일종의 공포입니다. 모듈, 프로그램에서 다른 모듈의 매개변수에 있는 변수를 선언할 수 없습니다. ChartObject.mqh에 명시적으로 지정되지 않은 경우 ChartObject.mqh 모듈이 Expert Advisor인 Expert.mq4를 확인해야 하는 이유는 무엇입니까?
분명히 당신을 도울 것입니다
 #property strict
 
Igor Volodin :
분명히 당신을 도울 것입니다
예, Expert Advisor에 이 줄이 있지만 ChartObject.mqh 모듈에는 없습니다. 이것 때문에 모든 표준 모듈을 다시 작성하지 않을 것입니다 ...
 
Mihail Matkovskij :
예, Expert Advisor에 이 줄이 있지만 ChartObject.mqh 모듈에는 없습니다. 이것 때문에 모든 표준 모듈을 다시 작성하지 않을 것입니다 ...


이해했다. 그런 다음 전역 변수 를 만들지 마십시오. 그들 없이는 할 수 있습니다. 그렇지 않으면 모든 일치(예: 매우 일반적인 이름)에 대해 다음을 수행합니다.

 int i;

전역적으로 선언된 내용은 지역적으로 선언된 내용을 덮어씁니다. 경고를 받고 있는 내용입니다.

플러그인에는 자체 범위가 없고 모듈이 아니지만 include 를 작성한 위치에 삽입될 코드 조각을 고려하십시오.

 
Igor Volodin :


이해했다. 그런 다음 전역 변수 를 만들지 마십시오. 그들 없이는 할 수 있습니다.

즉, 생성하지 않는 방법은 무엇입니까? 모든 프로그래밍 언어에서 전역 변수는 자유롭게 사용되며 이는 정상이지만 여기에서는 컴파일러가 맹세합니다. 그리고 오류가 치명적이지는 않지만 여전히 불편합니다.

 double point = MarketInfo(EA_Symbol(), MODE_POINT);

포인트 변수는 1포인트의 가격을 보고하며 표준 포인트를 대체합니다. MarketInfo(EA_Symbol(), MODE_POINT) 함수는 모든 상품의 1포인트 가격을 제공합니다. 또한 point 변수는 전역 변수라면 어드바이저 본문의 모든 기능에서 사용할 수 있습니다. 그러한 경우는 특정 불편함을 유발하고 꽤 자주 발생한다는 점에 동의합니다(물론 MQL 프로그래밍 경험이 있는 경우 제외). 그리고 그것들을 우회할 수는 있지만, 질문은 왜, 다른 현대 PL에는 그러한 문제가 없다면?

사유: