아이커스텀

 

이 표시기로 EA를 만들고 싶지만 icustom 함수 를 어떻게 작성할 수 없습니까?

감사해요!

#속성 표시기_분리_창

#속성 표시기_버퍼 3

#property indicator_color1 블랙

#property indicator_color2 라임

#property indicator_color3 빨간색

외부 정수 기간 = 10;

이중 ExtBuffer0[];

이중 ExtBuffer1[];

이중 ExtBuffer2[];

정수 초기화()

{

SetIndexStyle(0,DRAW_NONE);

SetIndexStyle(1,DRAW_HISTOGRAM);

SetIndexStyle(2,DRAW_HISTOGRAM);

IndicatorDigits(숫자+1);

SetIndexBuffer(0,ExtBuffer0);

SetIndexBuffer(1,ExtBuffer1);

SetIndexBuffer(2,ExtBuffer2);

IndicatorShortName("태양풍");

SetIndexLabel(1,NULL);

SetIndexLabel(2,NULL);

리턴(0);

}

정수 시작()

{

// 정수 마침표 = 10;

정수 제한;

int counted_bars=IndicatorCounted();

이중 이전, 현재, 이전;

이중 값=0, 값1=0, 값2=0, 물고기=0, 물고기1=0, 물고기2=0;

이중 가격;

이중 MinL=0;

이중 MaxH=0;

if(counted_bars>0) counted_bars--;

limit=막대-counted_bars;

for(int i=0; i<limit; i++)

{ 최대H = 높음;

MinL = 낮음[최저(NULL,0,MODE_LOW,기간,i)];

가격 = (고가+저가)/2;

값 = 0.33*2*((가격-최소값)/(최대값-최소값)-0.5) + 0.67*값1;

값=MathMin(MathMax(값,-0.999),0.999);

ExtBuffer0=0.5*MathLog((1+값)/(1-값))+0.5*Fish1;

값1=값;

Fish1=ExtBuffer0;

}

부울 업 = 사실;

for(i=limit-2; i>=0; i--)

{

현재=ExtBuffer0;

이전=ExtBuffer0;

if (((현재0))||(현재<0)) up=거짓;

if (((현재>0)&&(이전0)) up= true;

만약(!업)

{

ExtBuffer2=현재;

확장 버퍼1=0.0;

}

또 다른

{

ExtBuffer1=현재;

확장 버퍼2=0.0;

}

}

리턴(0);

}

 

iCustom(NULL,0,"태양풍",10,1,0);

iCustom(NULL,0,"태양풍",10,2,0);

그것이 당신이 찾고 있던 것입니까?

 

???

내가 프로그래밍하는 EA의 경우 방금 마감한 사람과 마지막으로 마감한 사람을 위한 막대에 대한 이 표시기의 값이 필요합니다.

만드는 방법, iCustom(NULL,0, "태양풍", 10, 1, 0);

ICUSTOM(NULL,0, "태양풍", 10, 2, 0);

작동 하지 않습니까?

감사합니다. 안부입니다.

 

iCustom(Symbol(), 0, "Solar Wind", ... , int 모드( 표시기 라인 인덱스), int shift)

표시기 이름 뒤 - "Solar Wind" - Extern 변수 채우기

 

하지만

예, 하지만 내 첫 번째 메시지의 표시기 프로그래밍에 따르면 필요한 데이터가 있는 변수가 어디에 있습니까?

다시 한 번 감사합니다.

 
maje:
예, 하지만 내 첫 번째 메시지의 표시기 프로그래밍에 따르면 필요한 데이터가 있는 변수가 어디에 있습니까? 다시 한 번 감사합니다.

표시기 코드에 따르면 "SOLAR WIND" 다음에 하나의 매개변수 여야 하며 모드 매개변수에서 필요에 따라 1 또는 2를 사용할 수 있습니다.

1 = 지표의 첫 번째 히스토그램 및 2= 두 번째 히스토그램

 

예시

맨 위에 언급된 표시기의 마지막 값을 갖도록 icustom을 작성하는 방법을 나에게 실용적인 예를 제시할 수 있습니까?

감사해요

 
maje:
맨 위에 언급된 표시기의 마지막 값을 갖도록 icustom을 작성하는 방법을 나에게 실용적인 예를 제시할 수 있습니까? 감사해요

현재 막대에 대해 위에서 언급한 표시기의 마지막 값을 얻으려면:

이중 val1= iCustom(NULL,0,"태양풍",10,2,0);

그리고 이전 막대의 경우 다음을 사용합니다.

이중 val1= iCustom(NULL,0,"태양풍",10,2,1);

 

이 지표에 대해 아직 완전한 EA를 개발한 사람이 있습니까? 그렇다면 코딩을 공유하시겠습니까? 만드는 것이 복잡하지 않은 것 같습니다. - 부정에서 긍정으로, 또는 그 반대로 간단한 교차입니다.

데이브 <<
 

이중 val1= iCustom(NULL,0,"태양풍",10,2,1);

주스 표시기에 대한 질문입니다. icustom 표시기 를 이와 같이 작성할 수 있지만 표시기의 다른 변수가 부족합니다.

더블 val1=iCustom(NULL,0,"주스"8,0,0);

문제는 Juice의 기간 변수가 8이고 수준이 .08이라는 것입니다. .08의 레벨을 캡처하려면 어떻게 해야 하나요???

데이브 <<<
 

새 버전의 태양풍도 스스로 다시 그립니다! 5분 후에 화면의 스냅샷을 찍고 1~2시간 후에 다시 스냅샷을 찍습니다! 다시 그리기 문제에 대한 다른 해결책이 있습니까? 가능하다면 이 문제를 해결하고 싶습니다.

데이브 <<