Build 600+에 대한 지표를 업그레이드하는 방법은 무엇입니까? - 페이지 4

 
qjol :
농담이야 물론 효과가 있었어


예, 지금 작동합니다.

10개의 매개변수 가 모두 있는 최신 버전을 사용했으며 지금 작동하고 있습니다.

감사해요.

BTW, 7개의 매개변수가 있는 이전 버전이 작동하지 않는 이유를 여전히 이해하지 못합니다!

위의 이미지와 같이 해당 표시기는 8개의 외부 매개변수를 가지고 있습니다. 여기서 'TimeFrame'은 문자열 "xpMA" 앞에 '0'으로 정의되었습니다.

그런 다음 나머지 7개 매개변수를 아래와 같이 선언했습니다.

 double   signal = iCustom ( NULL , 0 , "xpMA" ,MA_Period,MA_Type,MA_Applied ,T3MA_VolumeFactor,JMA_Phase,Step_Period,DebugMode, 3 , 0 ); 

그래서 제가 어디를 잘못했는지 알려주세요.

문안 인사

 
deysmacro :

그는 일반적인 실수로부터 배워야 합니다.

지원과 이해에 감사드립니다. :)
 
Arav007 :


BTW, 7개의 매개변수가 있는 이전 버전이 작동하지 않는 이유를 여전히 이해하지 못합니다!

위의 이미지와 같이 해당 표시기는 8개의 외부 매개변수를 가지고 있습니다. 여기서 'TimeFrame'은 문자열 "xpMA" 앞에 '0'으로 정의되었습니다.

그런 다음 나머지 7개 매개변수를 아래와 같이 선언했습니다.

그래서 제가 어디를 잘못했는지 알려주세요.


iCustom 을 사용하여 다시 말하겠습니다 . 선언 순서에 해당하는 매개변수를 전달해야 합니다.


전달된 매개변수 및 해당 순서는 사용자 지정 표시기의 선언 순서 및 extern 변수 유형과 일치해야 합니다. 입력 매개변수의 값을 지정하지 않으면 기본값이 사용됩니다.

매개변수를 건너뛸 수 없습니다 .

예를 들어 사용자 지정 지표에 5개의 매개변수가 있는 경우 다음과 같이 사용할 있습니다.

 double x = iCustom ( Symbol (), Period (), "Name" , Param 1 , Param 2 , Param 3 , mode, shift);

그러나 다음과 같이 사용할 수 없습니다 .

 double x = iCustom ( Symbol (), Period (), "Name" , Param 2 , Param 3 , Param 4 , mode, shift);
 
qjol :


iCustom 을 사용하여 다시 말하겠습니다 . 선언 순서에 해당하는 매개변수를 전달해야 합니다.

매개변수를 건너뛸 수 없습니다 .

예를 들어 사용자 지정 지표에 5개의 매개변수가 있는 경우 다음과 같이 사용할 있습니다.

그러나 다음과 같이 사용할 수 없습니다 .



이것은 내가 잘못하고 식별 할 수없는 것입니다.

좋아, 여기 내가 어떻게 매개변수를 할당했는지:

Param1=MA_Period

Param2=MA_유형

Param3=MA_적용

Param4=T3MA_VolumeFactor

Param5=JMA_Phase

Param6=Step_Period

Param7=디버그 모드

이제 어느 것이 잘못 되었습니까?

문안 인사

 

첫 번째 "TimeFrame"을 건너뛰었습니다.



 
qjol :


첫 번째 "TimeFrame"을 건너뛰었습니다.




아, 그럼 이렇습니다.

외부 매개변수 중 하나라도 놓치면 작동하지 않습니다.

그러나 시작할 때 정의된 현재 시간 프레임과 함께 작동해야 하므로 의식적으로 건너뛰었습니다.

iCustom(Null, 0, Param1,...)

그래서 다시 'TimeFrame'으로 정의할 필요가 없다고 생각했습니다.

수정해주셔서 감사합니다.

 
Arav007 :


아, 그럼 이렇습니다.

외부 매개변수 중 하나라도 놓치면 작동하지 않습니다.

아니요, 놓칠 있지만 건너뛸 수 없습니다 . 즉, 매개변수가 5개인 경우입니다. 그리고 당신은 마지막 2를 떠나 아무 문제가 없습니다

하지만 1을 건너뛰고 2 3 4 5를 사용할 수는 없습니다.

그러나 시작할 때 정의된 현재 시간 프레임과 함께 작동해야 하므로 의식적으로 건너뛰었습니다.

iCustom(Null, 0, Param1,...)

네, 하지만 터미널은 이 매개변수가 무엇을 포함하고 있는지 알지 못합니다. 무엇이든 포함할 수 있습니다 (시간 프레임일 필요는 없음)

그래서 다시 'TimeFrame'으로 정의할 필요가 없다고 생각했습니다.

생각하지 말고 행동하십시오! ;-)

수정해주셔서 감사합니다.

사유: