icustom 지그재그

 
icustom 명령으로 지그재그 표시기의 방향을 결정하려고 합니다.

이것은 내가 지금까지 가지고있는 것입니다 :

지그재그 높음=iCustom(NULL,0,"지그재그",MODE_HIGH,0);
ZigZagLow=iCustom(NULL,0,"지그재그",MODE_LOW,0);

선은 차트에 그려지지만 프로그램을 실행할 때 ZigZagHigh와 ZigZagLow는 모두 0과 같습니다.




icustom 기능으로 지그재그 표시기의 추세를 어떻게 결정합니까?


감사해요
[삭제]  
당신이 무엇을 하려고 하든 이것은 아마도 그것을 얻는 방법이 아닐 것입니다.
'커스텀 지표, 전문가, 전략 테스팅' 을 참고하세요 -- iCustom 사용법을 설명했는데...

표시기를 변경하고 해당 데이터를 가져오려면 두 개의 추가 버퍼를 만들어야 한다고 생각합니다.
낮은 값은 예를 들어 LOWbuff[]입니다.
높은 값은 HIGHbuff[]입니다.

이제 새로운 고가(내부 표시기)가 있는 경우 이 값이 바로 지금 저장된 값과 다른지 확인합니다. 그렇다면 새 값이 있는 것입니다...
예를 들어 최대 1.2815 ZigZag
바1
바2
바3
...
barx 새 값은 1.2755로 제공됩니다.

당신은 HIGHBUFF[1.2815,1.2815,....,1.2815,1.2755,1.2755...와 같은 것입니다. ]

그런 다음 Icustom(NULL,0,"ZigZag",3,0)을 사용합니다. --> 그리고 짜잔! 당신은 당신의 번호를 가지고

내 말을 이해할 수 있기를...

졸레로
 
zolero :
당신이 무엇을 하려고 하든 이것은 아마도 그것을 얻는 방법이 아닐 것입니다.
'커스텀 지표, 전문가, 전략 테스팅' 을 참고하세요 -- iCustom 사용법을 설명했는데...

표시기를 변경하고 해당 데이터를 가져오려면 두 개의 추가 버퍼를 만들어야 한다고 생각합니다.
낮은 값은 예를 들어 LOWbuff[]입니다.
높은 값은 HIGHbuff[]입니다.

이제 새로운 고가(내부 표시기)가 있는 경우 이 값이 바로 지금 저장된 값과 다른지 확인합니다. 그렇다면 새 값이 있는 것입니다...
예를 들어 최대 1.2815 ZigZag
바1
바2
바3
...
barx 새 값은 1.2755로 제공됩니다.

당신은 HIGHBUFF[1.2815,1.2815,....,1.2815,1.2755,1.2755...와 같은 것입니다. ]

그런 다음 Icustom(NULL,0,"ZigZag",3,0)을 사용합니다. --> 그리고 짜잔! 당신은 당신의 번호를 가지고

내 말을 이해할 수 있기를...

졸레로


아니, 사실 이해가 되지 않는다.


내가 원하는 것은 지그재그 표시기가 가리키는 방향(위 또는 아래)을 EA에 알리는 것입니다. 어떻게 하면 좋을까요?
[삭제]  
내가 원하는 것은 지그재그 표시기가 가리키는 방향(위 또는 아래)을 EA에 알리는 것입니다. 어떻게 하면 좋을까요?
아마도 당신은 마지막 두 값이 알고 싶어할 것입니다(지그재그에 항상 값이 있는 것은 아니므로). 따라서 표시기의 마지막 두 값을 읽어야 합니다.

  int n , i ;
  double zag , zig ;
i = 0 ;
while ( n < 2 )
{
   if ( zig > 0 ) zag = zig ;
   zig = iCustom ( NULL , 0 , " ZigZag " , 0 , i ) ;
   if ( zig > 0 ) n += 1 ;
   i ++;
}
이제 두 개의 숫자 zig -- 마지막 값과 zag -- 그 이전 값이 있습니다.
if(zag>zig) 표시가 아래로 표시됩니다.
if(zig>zag) 표시가 나타납니다.

졸레로
 
zolero :
내가 원하는 것은 지그재그 표시기가 가리키는 방향(위 또는 아래)을 EA에 알리는 것입니다. 어떻게 하면 좋을까요?
아마도 당신은 마지막 두 값이 알고 싶어할 것입니다(지그재그에 항상 값이 있는 것은 아니므로). 따라서 표시기의 마지막 두 값을 읽어야 합니다.

  int n , i ;
  double zag , zig ;
i = 0 ;
while ( n < 2 )
{
   if ( zig > 0 ) zag = zig ;
   zig = iCustom ( NULL , 0 , " ZigZag " , 0 , i ) ;
   if ( zig > 0 ) n += 1 ;
   i ++;
}
이제 두 개의 숫자 zig -- 마지막 값과 zag -- 그 이전 값이 있습니다.
if(zag>zig) 표시가 아래로 표시됩니다.
if(zig>zag) 표시가 나타납니다.

졸레로

감사합니다. 알겠습니다. 매력처럼 작동합니다.
 
c0d3 :
졸레로 :
내가 원하는 것은 지그재그 표시기가 가리키는 방향(위 또는 아래)을 EA에 알리는 것입니다. 어떻게 하면 좋을까요?
아마도 당신은 마지막 두 값이 알고 싶어할 것입니다(지그재그에 항상 값이 있는 것은 아니므로). 따라서 표시기의 마지막 두 값을 읽어야 합니다.

  int n , i ;
  double zag , zig ;
i = 0 ;
while ( n < 2 )
{
   if ( zig > 0 ) zag = zig ;
   zig = iCustom ( NULL , 0 , " ZigZag " , 0 , i ) ;
   if ( zig > 0 ) n += 1 ;
   i ++;
}
이제 두 개의 숫자 zig -- 마지막 값과 zag -- 그 이전 값이 있습니다.
if(zag>zig) 표시가 아래로 표시됩니다.
if(zig>zag) 표시가 나타납니다.

졸레로

감사합니다. 알겠습니다. 매력처럼 작동합니다.





그것을 테스트 한 후,



if(zag<zig) 표시가 아래로 표시됩니다
if(zig<zag) 표시가 나타납니다


i 생각해보니 (zag>zig), (zig>zag)

[삭제]  
c0d3 :
i 생각해보니 (zag>zig), (zig>zag)

나는 이미 차트의 마지막 줄을 찾고 있었다. 이것은 마지막 줄이 아래로 [또는 위]를 보고 있다는 것을 의미합니다. 그것은 바로 지금 상승[또는 하락] 움직임이 예상된다는 것을 의미해야 합니다. 그러나 상향 또는 하향 신호로 받아들이는 데에는 약간의 문제가 있습니다. 지그재그는 스스로 다시 그릴 수 [그리고 종종] 할 수 있습니다. 즉, 두 지점 사이의 선이 남쪽(1.2900에서 1.2850으로)을 표시하는 경우 가격이 상승한다는 의미는 아닙니다. 그것은 아마도 올라갈 것이지만 약간의 움직임 후에 새로운 라인이 다운될 가능성이 큽니다(1.2900에서 1.2820으로). 내 요점은 차트에 선이 있다고 해서 이 방향으로의 이동이 끝났다는 의미는 아니라는 것입니다.
[Deleted]  
  
정수 n, 나는; 더블 재그, 지그;
나는 = 0;
동안(n<2)
{
if(지그>0) zag=지그;
zig=iCustom(NULL, 0, "지그재그", 0, i);
if(지그>0) n+=1;
나는 ++;
}
[Deleted]  

&nbint n, i; 더블 재그, 지그; 나는 = 0; while(n<2) { if(zig>0) zag=zig; zig=iCustom(NULL, 0, "지그재그", 0, i); if(지그>0) n+=1; 나는 ++; }sp;int n, i; 더블 재그, 지그; 나는 = 0; while(n<2) { if(zig>0) zag=zig; zig=iCustom(NULL, 0, "지그재그", 0, i); if(지그>0) n+=1; 나는 ++; }

[삭제]  
잘못된 신호가 무엇을 의미하는지 보여주기 위해 약간의 지그재그 코드를 수정했습니다. 그들이 말했듯이: 한 장의 사진이 1000단어 이상을 말할 수 있습니다....


빨간 선은 원래 지그재그로 아래에서 위로 그리고 가장 좋은 순간에 다시 돌아갑니다. 적어도 이 정도는 같습니다. 그러나 ea를 코딩하는 경우 노란색 선에 가까운 ea get의 신호입니다. 내가 정말 빠른 해킹을 했기 때문에 더 나빠질 수 있다...
코드는 다음 줄이 그려질 때까지 위 또는 아래 선을 다시 그리므로 빨간색 선이 나타날 때까지 노란색 선을 단계별로 변경(최대 및 최소값 삭제)합니다...