#import "user32.dll"bool GetWindowRect( int h, int & pos[ 4 ]);
#import//------------------------------------------------------------------ GetPixLengthdouble GetPixLength( datetime dt, double dp) // db - distance by X (time) dp - distance by Y (price)
{
int hWnd=WindowHandle( Symbol (), Period ());
int rect[ 4 ]; GetWindowRect(hWnd, rect); // take pixel sizedouble wW=rect[ 2 ]-rect[ 0 ]; double wH=rect[ 3 ]-rect[ 1 ]; // take height and width in pixeldouble H=(WindowPriceMax()-WindowPriceMin()); double W=WindowBarsPerChart(); // translate to chartdouble lengthW=wW/W* MathAbs (dt); // width in pix; wW/W = 1 bar in pixdouble lengthH=wH/H* MathAbs (dp); // height in pix; wH/H = 1 point in pixreturn ( MathSqrt ( MathPow (lengthW, 2 )+ MathPow (lengthH, 2 )));
}
내 Expert Advisor에서 표시기는 새 막대로만 테스터의 값을 업데이트합니다. 즉, Expert Advisor가 시간별 차트에서 시작되면 한 시간에 한 번, 분 단위로 업데이트됩니다 - 1분에 한 번. EA는 onTimer 기능을 통해 작동하며 타이머는 10초로 설정됩니다. 무엇이 문제가 될 수 있습니까? 타이머에서 업데이트해야 합니다. iMA 표시기
픽셀 단위
이것은 이해할 수 있지만 이러한 픽셀을 얻는 방법은 무엇입니까?
이 코드는 MQL 4 용입니다.
MQL5로 옮기시면 어렵지 않으실 거라 생각합니다
이 코드는 MQL 4 용입니다.
MQL5로 옮기시면 어렵지 않으실 거라 생각합니다
무슨 일인지 알려주세요.
기본 표시기 계산 루프에서 buffer[]가 표시기 버퍼인 경우 루프가 있습니다(코드 라인 3-6). 이 주기가 존재하면 지표 값은 계산되지 않고 존재하지 않으면 계산됩니다.
1 for(bar = first; bar < rate_total; bar++)
2 {
3 for(int j=0;j<10;j++)
4 {
5 배열[j]=가격[막대];
6}
7 버퍼[막대] = 2;
여덟 }
그리고 MT5에 대한 질문은 어느 지점에서 할 수 있나요?
MQL5를 통해서만 프로그래밍 방식으로, 정확히 리소스를 포함하는 프로그램에서 이러한 리소스를 디스크에 저장할 수 있습니까?
아주 좋은 질문과 제안.
아주 좋은 질문과 제안.
고맙습니다. "Wishs for MT5" 스레드에서 복제하겠습니다.
추신 그리고 서비스 데스크에서.))