코딩하는 방법? - 페이지 98

 

표시기를 다른 표시기에서 작동하게 하는 방법은 무엇입니까?

기본 이동 평균(MT4에 지표로 포함)을 다른 지표에 놓으면 지표의 MA를 계산할 수 있지만 다른 지표에 놓을 수 있도록 사용자 지정 지표 를 변경하는 방법 ?

 

바 오픈에

안녕,

새 막대가 생성될 때만(막대가 열릴 때) 코드를 실행하고 싶습니다.

누구든지 이와 같은 코드 조각이 있습니까?

건배

 

내 표시기가 잘 작동하지 않는 이유는 무엇입니까????

#재산권 "沈欣"

#속성 링크 "shenxinon@126.com"

#속성 표시기_분리_창

#속성 표시기_버퍼 1

#property indicator_color1 스틸블루

//#속성 표시기_최소 -0.01

//#속성 표시기_최대 0.01

//---- 입력 매개변수

외부 정수 SMA1=12;

외부 정수 SMA2=72;

//---- 버퍼

이중 ExtMapBuffer1[];

//---- 自定义区

//+----------------------------------------------- -------------------+

//| 커스텀 인디케이터 초기화 기능 |

//+----------------------------------------------- -------------------+

정수 초기화()

{

//---- 표시기

SetIndexStyle(0,DRAW_LINE);

SetIndexBuffer(0,ExtMapBuffer1);

문자열 sName="RAVI 표시기";

IndicatorShortName("RAVI 표시기("+SMA1+","+SMA2+")");

//----

리턴(0);

}

//+----------------------------------------------- -------------------+

//| 커스텀 인디케이터 초기화 해제 기능 |

//+----------------------------------------------- -------------------+

정수 초기화()

{

//----

//----

리턴(0);

}

//+----------------------------------------------- -------------------+

//| 사용자 지정 표시기 반복 기능 |

//+----------------------------------------------- -------------------+

정수 시작()

{

int counted_bars=IndicatorCounted();

//----

if(counted_bars<0) return(-1);// 오류가 있으면 종료하고 -1을 반환합니다.

if(counted_bars>0) counted_bars--;

int pos = Bars-counted_bars;

이중 sma1,sma2,r;

동안(위치>=0)

{

sma1=iMA(NULL,0,SMA1,0,MODE_SMA,PRICE_CLOSE,pos);

sma2=iMA(NULL,0,SMA2,0,MODE_SMA,PRICE_CLOSE,pos);

r=((sma1-sma2)/sma2)*10000;

//알림("r=",r);

ExtMapBuffer1[pos]=r;

포스--;

}

반환(0);

 

...

나는 그것을있어

 
diffused:
안녕,

새 막대가 생성될 때만(막대가 열릴 때) 코드를 실행하고 싶습니다.

누구든지 이와 같은 코드 조각이 있습니까?

건배

if (볼륨[0] == 1)

{하다...}

빅비

 

트렌드 봉투 EA

올라

저는 mql을 가르치고 있습니다.

MQL4 - MQL4 Tutorial의 Usage of Technical Indicators - Simple Programs를 읽었지만 다음과 같은 것을 찾지 못했습니다.

단일 막대를 색칠할 수 있습니까? EA를 테스트하는 동안 입력 막대를 색칠할 수 있습니다...

메타 트레이더에서 모든 C 컴파일러에 있는 내 가변 배열의 필드를 보는 것과 같은 시계 시스템이 표시되지 않습니다.

나는 이 어리석은 시스템을 하고 싶다:

가격이 무너지고 추세 전개가 닫히면(노란색 동그라미가 있는 그림 참조) 경고를 열고 브레이크바에 색상을 지정합니다.

그러나 내 문제는 이것이 내가 단기간 동안이 아닌 추세 상승 지표 만 읽는다는 것입니다. 이유는 무엇입니까?

double maxprec= iHigh(NULL, PERIOD_M5,1);

double minprec=iLow(NULL, PERIOD_M5,1);

double chiusura2 = iClose(NULL,PERIOD_M15 ,2);

double chiusura = iClose(NULL,PERIOD_M15 ,1);

double chiu2 = iClose(NULL,PERIOD_M5 ,2);

double chiu = iClose(NULL,PERIOD_M5 ,1);

double apertura = iOpen(NULL,PERIOD_M15 ,0)

string rottura [3] = {" Nulla"," ROTTO"};

envelope15_1=iCustom(NULL, PERIOD_M15, "TrendEnvelopes_v1", 5,0,1);// trend envelope

if( chiusura2 > envelope15_2 && chiusura < envelope15_2 && apertura <= envelope15_2)

{

rot=1;

Alert ( " ha rotto SH M15");

}

else

rot=0;

Comment( ""\nBreak Enveolpe M 5= ", rottura[rot2],

"\nBrerak Enveolpe M 15= ", rottura[rot]

); // Alert
파일:
eur_1.jpg  101 kb
 

이것이 올바른 공식입니까

이것은 eur/chf 교차에 대한 핍 값을 계산하는 올바른 공식입니다:

(1/(eur/chf))*10*(eur/us)

핍은 .0001입니다.

위 공식이 맞습니까?

 
lizmerrill:
이것은 eur/chf 교차에 대한 핍 값을 계산하는 올바른 공식입니다:

(1/(eur/chf))*10*(eur/us)

핍은 .0001입니다.

위 공식이 맞습니까?

다음 코드를 사용하세요.

pipvalue=MarketInfo("EURCHF",MODE_TICKVALUE);

도움이 되었기를 바랍니다

 

특정 시간 후 포지션 개설을 중지하려면 코드가 필요합니다.

이 섹션에 있는 모든 게시물을 이미 보았고 포럼 상단에 있는 Google 검색 도구를 사용하여 모든 포럼에 대해 조사했지만 내가 찾은 것은 정확히 내가 찾고 있는 것이 아닙니다.

내게 필요한 것은 특정 시간(예: 15 GMT 이후)이 지나면 새 위치를 열기 위해 중지하는 EA에서 구현해야 하는 코드입니다. 이 매개변수 는 사용자 패널에서 수정할 수 있는 설정이어야 합니다.

EA가 포지션을 열 수 있는 기간을 설정할 수 있다면 좋을 텐데,

X시간 부터 Y시간 까지 영업

당신의 도움을 주셔서 감사합니다.

문안 인사

 
mauro269:
이 섹션에 있는 모든 게시물을 이미 보았고 포럼 상단에 있는 Google 검색 도구를 사용하여 모든 포럼에 대해 조사했지만 내가 찾은 것은 정확히 내가 찾고 있는 것이 아닙니다.

내게 필요한 것은 특정 시간(예: 15 GMT 이후)이 지나면 새 위치를 열기 위해 중지하는 EA에서 구현해야 하는 코드입니다. 이 매개변수는 사용자 패널에서 수정할 수 있는 설정이어야 합니다.

EA가 포지션을 열 수 있는 기간을 설정할 수 있다면 좋을 텐데,

X시간 부터 Y시간 까지 영업

당신의 도움을 주셔서 감사합니다.

문안 인사

내가 하는 방법은 다음과 같습니다.

extern 부울 Use.Time.Filter = false;

외부 문자열 Server.Time.To.Start = "08:00";

외부 문자열 Server.Time.To.Stop = "16:00";
start_time = StrToTime(TimeToStr(TimeCurrent(), TIME_DATE) + " " + Server.Time.To.Start);

end_time = StrToTime(TimeToStr(TimeCurrent(), TIME_DATE) + " " + Server.Time.To.Stop);

if(Use.Time.Filter && (TimeCurrent() = end_time)) return(0);

도움이 되기를 바랍니다.

FerruFx