표준 stepMA 9 표시기를 별도의 창에서 히스토그램으로 수정했지만 구매 신호가 표준 표시기와 동기화되지 않는 이유를 모르겠습니다(판매 신호가 있음). 새 것으로 원래 표시기보다 한 바 뒤로 표시됩니다. 왜요? 표시기의 그래픽 측면을 결정하는 코드의 일부만 수정했습니다.
표준 stepMA 9 표시기를 별도의 창에서 히스토그램으로 수정했지만 구매 신호가 표준 표시기와 동기화되지 않는 이유를 모르겠습니다(판매 신호가 있음). 새 것으로 원래 표시기보다 한 바 뒤로 표시됩니다. 왜요? 표시기의 그래픽 측면을 결정하는 코드의 일부만 수정했습니다.
내가 악기의 되돌림을 기다리고 있다고 가정해 봅시다. 가능한 한 높은 가격(또는 낮은 가격)으로 거래를 시작하고 싶습니다. 따라서 이와 같은 EA를 사용하면 거래 매개변수 를 설정할 수 있으며 이 EA는 후행 정지와 유사한 방식으로 가격을 계속 따를 것입니다. 반전이 있을 때 거래가 성사되고 열립니다.
안녕하세요 전문가 이 볼륨 표시기의 오류를 수정하도록 도와주세요. 최근에 mt4 차트에 첨부할 수 없다는 것을 알았습니다. 파일의 오류를 수정하기 위해 가능한 모든 조치를 취했지만 소용이 없었습니다. 나는 그것이 거대한 mt4 업그레이드 때문이라고 생각합니다. 내 mt4 폴더의 다른 모든 표시기는 이전/최신 버전 모두 제대로 작동합니다. 그것은 1 년 전에 작동하고 마지막으로 사용했습니다. 저는 아직 프로그래머가 아닙니다.
안녕,
표준 stepMA 9 표시기를 별도의 창에서 히스토그램으로 수정했지만 구매 신호가 표준 표시기와 동기화되지 않는 이유를 모르겠습니다(판매 신호가 있음). 새 것으로 원래 표시기보다 한 바 뒤로 표시됩니다. 왜요? 표시기의 그래픽 측면을 결정하는 코드의 일부만 수정했습니다.
stepma_9_histo_mtf.mq4
stepma_9.0.mq4
안녕,
표준 stepMA 9 표시기를 별도의 창에서 히스토그램으로 수정했지만 구매 신호가 표준 표시기와 동기화되지 않는 이유를 모르겠습니다(판매 신호가 있음). 새 것으로 원래 표시기보다 한 바 뒤로 표시됩니다. 왜요? 표시기의 그래픽 측면을 결정하는 코드의 일부만 수정했습니다.
stepma_9_histo_mtf.mq4
stepma_9.0.mq4
에프엑스프로
그것은 선이 그려지는 방식의 결과입니다.
선을 그릴 때 선이 보이도록 하려면 선 1 막대를 다시 그리기 시작해야 합니다(그렇지 않으면 점이 점이 되어 차트에 전혀 표시되지 않습니다). 이 두 가지를 시도하고 지금 비교하십시오
안녕,
나는 후행 정지가 작동하는 것과 유사한 방식으로 거래를 개시할 EA를 찾고 있었습니다.
내가 악기의 되돌림을 기다리고 있다고 가정해 봅시다. 가능한 한 높은 가격(또는 낮은 가격)으로 거래를 시작하고 싶습니다. 따라서 이와 같은 EA를 사용하면 거래 매개변수 를 설정할 수 있으며 이 EA는 후행 정지와 유사한 방식으로 가격을 계속 따를 것입니다. 반전이 있을 때 거래가 성사되고 열립니다.
이런 EA 본 적 있어?
감사해요
안녕 모두
나는 만든 코드를 시도하지만 왜 거래를 열 수 없습니다
for (int iTS = 0; iTS < 2000; iTS++) {
int varZonStart = StrToTime(TimeToStr(varCurrentTime, TIME_DATE) + " " + "00:00");
int varZonEnd = StrToTime(TimeToStr(varCurrentTime, TIME_DATE) + " " + "10:00");
int JamStart=TimeHour(varZonStart);
int JamEnd=TimeHour(varZonEnd);
if (JamStart>JamEnd) {
varCurrentTime = decDateTradeDay(varCurrentTime);
//if (TimeDayOfWeek(varCurTime) < 1) varCurTime = decDateTradeDay(varCurTime);
if (TimeDayOfWeek(varCurrentTime) > 5) varCurrentTime = decDateTradeDay(varCurrentTime);
}
varZonStart = StrToTime(TimeToStr(varCurrentTime, TIME_DATE) + " " + "00:00");
int varShiftStart = iBarShift(NULL, 0, varZonStart - 60 * Period());
int varShiftEnd = iBarShift(NULL, 0, varZonEnd);
varHighest = High;
varLowest = Low;
varCurrentTime = decDateTradeDay(varCurrentTime); //set 1 hari kebelakang
if (TimeDayOfWeek(varCurrentTime) < 1) varCurrentTime = decDateTradeDay(varCurrentTime); //jika minggu mundur lagi
if (TimeDayOfWeek(varCurrentTime) > 5) varCurrentTime = decDateTradeDay(varCurrentTime); //jika sabtu mundur lagi
}
for (int iTSh = 0; iTSh < 2000; iTSh++) {
for (int iTSl = 0; iTSl < 2000; iTSl++) {
if(((varHighest-varLowest)/Pip)<=5) varHL=(varHighest+varLowest)/2;
}
}
double isg10a = iOpen(Symbol(),PERIOD_M15,1);
double isg10b = iClose(Symbol(),PERIOD_M15,1);
int static isg10c = -1;
for (iTS = 0; iTS < 2000; iTS++) {
if(isg10avarHL)isg10c =0;
if(isg10a>varHL&&isg10b<varHL)isg10c =1;
}
if (isg10c==0) To code Buy
else if (isg10c==1) To code Sel
else no trade
Jim은 전체를 다시 작성하는 대신 막대를 계산하는 제한을 추가한 다음 모든 막대를 다시 계산합니다. 그것은 새로 고침 문제를 해결해야 합니다. 사용해보기
친애하는 mladen,
귀하의 노력과 빠른 도움에 감사드립니다.
나는 시도 할 것이다.
뮌헨의 많은 위업들
이 볼륨 표시기 를 mt4에 연결하도록 업그레이드하는 데 도움을 주세요.
안녕하세요 전문가 이 볼륨 표시기의 오류를 수정하도록 도와주세요. 최근에 mt4 차트에 첨부할 수 없다는 것을 알았습니다. 파일의 오류를 수정하기 위해 가능한 모든 조치를 취했지만 소용이 없었습니다. 나는 그것이 거대한 mt4 업그레이드 때문이라고 생각합니다. 내 mt4 폴더의 다른 모든 표시기는 이전/최신 버전 모두 제대로 작동합니다. 그것은 1 년 전에 작동하고 마지막으로 사용했습니다. 저는 아직 프로그래머가 아닙니다.
첨부파일을 찾아주세요
안녕하세요 MLaden과 Mrtools입니다.
나는 당신이 괜찮기를 바랍니다
RSX에 대한 확인이 필요합니다.
더 간단한 공식을 사용하여 RSX를 계산하는 것을 보았습니다.
__________________________
이중 Kg = (3.0)/(2.0+길이);
이중 Hg = 1.0-Kg;
if (기울기[limit]==-1) CleanPoint(limit,rsxDa,rsxDb);
if (ArrayRange(wrkBuffer,0) != 막대) ArrayResize(wrkBuffer, 막대);
for(i=limit, r=Bars-i-1; i>=0; i--, r++)
{
wrkBuffer[r][12] = iMA(NULL,0,1,0,MODE_SMA,가격,i);
if (i==(Bars-1)) { for (int c=0; c<12; c++) wrkBuffer[r][c] = 0; 계속하다; }
//
//
//
//
//
더블 엄마 = wrkBuffer[r][12]-wrkBuffer[r-1][12];
이중 모아 = MathAbs(엄마);
for (int k=0; k<3; k++)
{
정수 kk = k*2;
wrkBuffer[r][kk+0] = Kg*mom + Hg*wrkBuffer[r-1][kk+0];
wrkBuffer[r][kk+1] = Kg*wrkBuffer[r][kk+0] + Hg*wrkBuffer[r-1][kk+1]; 엄마 = 1.5*wrkBuffer[r][kk+0] - 0.5 * wrkBuffer[r][kk+1];
wrkBuffer[r][kk+6] = Kg*moa + Hg*wrkBuffer[r-1][kk+6];
wrkBuffer[r][kk+7] = Kg*wrkBuffer[r][kk+6] + Hg*wrkBuffer[r-1][kk+7]; 모아 = 1.5*wrkBuffer[r][kk+6] - 0.5 * wrkBuffer[r][kk+7];
}
만약 (모아 != 0)
rsx = MathMax(MathMin((엄마/모아+1.0)*50.0,100.00),0.00);
그렇지 않으면 rsx = 50;
__________________________________________________
이 공식을 사용하여 RSX를 계산하는 방법을 확실히 이해하려면
첫 번째 줄:
엄마 = wrkBuffer[r][12]-wrkBuffer[r-1][12];
사실 wrkBuffer[r][12]는 가격의 단순 이동 평균 입니다. 일반적인 RSI와 마찬가지로 상금에 유의하십시오.
권리 ? 그러나이 SMA (아마도 길이 아님)의 기간이 무엇인지 이해하지 못합니다.
그리고 그 후, 내가 라인을 잘 이해한다면 :
for (int k=0; k<3; k++)
{
정수 kk = k*2;
wrkBuffer[r][kk+0] = Kg*mom + Hg*wrkBuffer[r-1][kk+0];
wrkBuffer[r][kk+1] = Kg*wrkBuffer[r][kk+0] + Hg*wrkBuffer[r-1][kk+1];
엄마 = 1.5*wrkBuffer[r][kk+0] - 0.5 * wrkBuffer[r][kk+1];
실제로 위의 첫 번째 엄마와 함께 엄마의 3배를 계산합니다(mom = wrkBuffer[r][12]-wrkBuffer[r-1][12];).
맞아 ?
그리고 이것이 RSX=((mom/moa)+1)*50인 "클래식"입니다.
다음 답변에 감사드립니다. (다른 플랫폼에서) 코더로서 제가 코드 작동 방식을 이해하는 것을 좋아한다는 것을 알고 있습니다.
아름다운 하루 되세요
질리크
안녕하세요 MLaden과 Mrtools입니다.
나는 당신이 괜찮기를 바랍니다
RSX에 대한 확인이 필요합니다.
더 간단한 공식을 사용하여 RSX를 계산하는 것을 보았습니다.
__________________________
이중 Kg = (3.0)/(2.0+길이);
이중 Hg = 1.0-Kg;
if (기울기[limit]==-1) CleanPoint(limit,rsxDa,rsxDb);
if (ArrayRange(wrkBuffer,0) != 막대) ArrayResize(wrkBuffer, 막대);
for(i=limit, r=Bars-i-1; i>=0; i--, r++)
{
wrkBuffer[r][12] = iMA(NULL,0,1,0,MODE_SMA,가격,i);
if (i==(Bars-1)) { for (int c=0; c<12; c++) wrkBuffer[r][c] = 0; 계속하다; }
//
//
//
//
//
더블 엄마 = wrkBuffer[r][12]-wrkBuffer[r-1][12];
이중 모아 = MathAbs(엄마);
for (int k=0; k<3; k++)
{
정수 kk = k*2;
wrkBuffer[r][kk+0] = Kg*mom + Hg*wrkBuffer[r-1][kk+0];
wrkBuffer[r][kk+1] = Kg*wrkBuffer[r][kk+0] + Hg*wrkBuffer[r-1][kk+1]; 엄마 = 1.5*wrkBuffer[r][kk+0] - 0.5 * wrkBuffer[r][kk+1];
wrkBuffer[r][kk+6] = Kg*moa + Hg*wrkBuffer[r-1][kk+6];
wrkBuffer[r][kk+7] = Kg*wrkBuffer[r][kk+6] + Hg*wrkBuffer[r-1][kk+7]; 모아 = 1.5*wrkBuffer[r][kk+6] - 0.5 * wrkBuffer[r][kk+7];
}
만약 (모아 != 0)
rsx = MathMax(MathMin((엄마/모아+1.0)*50.0,100.00),0.00);
그렇지 않으면 rsx = 50;
__________________________________________________
이 공식을 사용하여 RSX를 계산하는 방법을 확실히 이해하려면
첫 번째 줄:
엄마 = wrkBuffer[r][12]-wrkBuffer[r-1][12];
사실 wrkBuffer[r][12]는 가격의 단순 이동 평균입니다. 일반적인 RSI와 마찬가지로 상금에 유의하십시오.
권리 ? 그러나이 SMA (아마도 길이 아님)의 기간이 무엇인지 이해하지 못합니다.
그리고 그 후, 내가 라인을 잘 이해한다면 :
for (int k=0; k<3; k++)
{
정수 kk = k*2;
wrkBuffer[r][kk+0] = Kg*mom + Hg*wrkBuffer[r-1][kk+0];
wrkBuffer[r][kk+1] = Kg*wrkBuffer[r][kk+0] + Hg*wrkBuffer[r-1][kk+1];
엄마 = 1.5*wrkBuffer[r][kk+0] - 0.5 * wrkBuffer[r][kk+1];
실제로 위의 첫 번째 엄마와 함께 엄마의 3배를 계산합니다(mom = wrkBuffer[r][12]-wrkBuffer[r-1][12];).
맞아 ?
그리고 이것이 RSX=((mom/moa)+1)*50인 "클래식"입니다.
다음 답변에 감사드립니다. (다른 플랫폼에서) 코더로서 제가 코드 작동 방식을 이해하는 것을 좋아한다는 것을 알고 있습니다.
아름다운 하루 되세요
질리크"사실 wrkBuffer[r][12]는 가격의 단순 이동 평균입니다. 일반적인 RSI와 같이 상금에 유의하세요?"
아니요. 해당 평균의 계산 기간 은 1이며, 이는 사용된 "평균"의 가격과 동일함을 의미합니다. 원하는 가격을 얻는 가장 빠른 방법인 메타테이더에서(같은 작업을 수행하는 "케이스" 구조를 작성하려고 하면 rsx 코드에서 사용된 방법보다 훨씬 느림을 알 수 있습니다)
"사실 위의 첫 번째 엄마와 함께 엄마의 3배를 계산합니다."
아니오. 각각의 새로운 반복마다 어떤 값을 사용하고 있는지 확인하십시오. 엄마와 모아는 루핑 과정에서 지속적으로 변경되고 재사용됩니다(변경된 형태로)
Mladen님, 감사합니다.
내가 wrkBuffer[r][12]가 가격과 같다는 것을 잘 이해하고 있다면 매우 이상하지만 계산을 가속화하기 위해 기간이 1인 이동 평균을 사용합니다. 너무 궁금하다...
두 번째로, 나는 그것이 내가 말하려고 하는 것이라고 생각합니다/가정합니다
그것은 가격의 모멘텀 으로 엄마를 계산
그리고 그것은 Kg와 Hg로 다른 엄마를 계산합니다. 새엄마 만들기에 익숙한 새엄마에게 3회 제공
그런 "더 쉬운"(이해를 돕기 위해)
엄마
엄마1=kg*엄마
엄마2=kg*엄마1
엄마3=kg*엄마2
그리고 끝에는 mom3과 moa3를 사용합니다.
내가 맞아?
Mladen님, 감사합니다.
내가 wrkBuffer[r][12]가 가격과 같다는 것을 잘 이해하고 있다면 매우 이상하지만 계산을 가속화하기 위해 기간이 1인 이동 평균을 사용합니다. 너무 궁금하다...
두 번째로, 나는 그것이 내가 말하려고 하는 것이라고 생각합니다/가정합니다
그것은 가격의 모멘텀으로 엄마를 계산
그리고 그것은 Kg와 Hg로 다른 엄마를 계산합니다. 새엄마 만들기에 익숙한 새엄마에게 3회 제공
그런 "더 쉬운"(이해를 돕기 위해)
엄마
엄마1=kg*엄마
엄마2=kg*엄마1
엄마3=kg*엄마2
그리고 끝에는 mom3과 moa3를 사용합니다.
내가 맞아?질리크,
네, 그렇게 됩니다