[ARCHIVE!] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 4. - 페이지 490

 

나는 질문을 복제할 것입니다. 아마도 후속 질문 때문에 아무도 눈치채지 못했을 것입니다.

나는 ATR 표시기가 어떻게 작동 하는지 이해하고 동시에 그 코드를 연구하기로 결정했습니다. 본질은 이해했는데 이상하게 쓰네요.

시작 기능은 다음과 같습니다.

 int start()
  {
   int i,counted_bars= IndicatorCounted ();
//----
   if ( Bars <=AtrPeriod) return ( 0 );
//---- initial zero
   if (counted_bars< 1 )
       for (i= 1 ;i<=AtrPeriod;i++) AtrBuffer[ Bars -i]= 0.0 ;
//----
   i= Bars -counted_bars- 1 ;
   while (i>= 0 )
     {
       double high=High[i];
       double low =Low[i];
       if (i== Bars - 1 ) TempBuffer[i]=high-low;
       else
        {
         double prevclose=Close[i+ 1 ];
         TempBuffer[i]= MathMax (high,prevclose)- MathMin (low,prevclose);
        }
      i--;
     }
//----
   if (counted_bars> 0 ) counted_bars--;
   int limit= Bars -counted_bars;
   for (i= 0 ; i<limit; i++)
      AtrBuffer[i]= iMAOnArray (TempBuffer, Bars ,AtrPeriod, 0 , MODE_SMA ,i);
//----
   return ( 0 );
  }
//+----------------

다음은 오해가 있는 첫 번째 블록입니다.

 //---- initial zero
   if (counted_bars< 1 )
       for (i= 1 ;i<=AtrPeriod;i++) AtrBuffer[ Bars -i]= 0.0 ;
//----

counted_bars<1 의 값이면 무엇이든 하는 요점은 무엇입니까? 제 생각에 이것은 표시기가 단일 막대를 계산하지 않았으며 기능을 종료해야 하기 때문입니다. 아직 값이 없습니다... 캐치가 뭐죠?

AtrBuffer에 인덱스가 [Bars-i] 입니까? 결국, 내가 이해하는 바와 같이 여기서 요점은 값이 없으면 버퍼를 0.0으로 설정한다는 것입니다. 그러나 값 0.0은 (Bars) 에서 (AtrPeriod) 까지의 막대에 대해서만 설정되고 AtrPeriod 에서 0번째 막대 까지 버퍼에 아무 것도 기록되지 않는다는 것이 즉시 밝혀졌습니다 . 왜요?

나는 이 코드 조각을 이해하지 못한다.

다음 블록에서:

 //----
   i= Bars -counted_bars- 1 ;
   while (i>= 0 )
     {
       double high=High[i];
       double low =Low[i];
       if (i== Bars - 1 ) TempBuffer[i]=high-low;
       else
        {
         double prevclose=Close[i+ 1 ];
         TempBuffer[i]= MathMax (high,prevclose)- MathMin (low,prevclose);
        }
      i--;
     }
//----

줄에서:

 if (i== Bars - 1 ) TempBuffer[i]=high-low;

조건   i==바-1 . 값을 고려한 것으로 나타났습니다.   1위   왼쪽 그래프의 시작 부분에서 막대.. 하지만 이것은 매우 멀다. 이 값이 무슨 소용이 있겠는가?

 
hoz :

나는 질문을 복제할 것입니다. 아마도 후속 질문 때문에 아무도 눈치채지 못했을 것입니다.

나는 ATR 표시기가 어떻게 작동 하는지 이해하고 동시에 그 코드를 연구하기로 결정했습니다. 본질은 이해했는데 이상하게 쓰네요.

시작 기능은 다음과 같습니다.

다음은 오해가 있는 첫 번째 블록입니다.

counted_bars<1 의 값이면 무엇이든 하는 요점은 무엇입니까? 내 생각에 이것은 지표가 단일 막대를 계산하지 않았으며 기능을 종료해야하기 때문에 기능을 종료해야 함을 의미합니다. 아직 값이 없습니다... 캐치가 뭐죠?

AtrBuffer에 인덱스가 [Bars-i] 입니까? 결국, 내가 이해하는 바와 같이 여기서 요점은 값이 없으면 버퍼를 0.0으로 설정한다는 것입니다. 그러나 값 0.0은 (Bars) 에서 (AtrPeriod) 까지의 막대에 대해서만 설정되고 AtrPeriod 에서 0번째 막대 까지 버퍼에 아무 것도 기록되지 않는다는 것이 즉시 밝혀졌습니다 . 왜요?

나는 이 코드 조각을 이해하지 못한다.

다음 블록에서:

줄에서:

조건   i==막대-1 . 값을 고려한 것으로 나타났습니다.   1위   왼쪽 그래프의 시작 부분에서 막대.. 하지만 이것은 매우 멀다. 이 값이 무슨 소용이 있겠는가?


막대는 오른쪽에서 왼쪽으로 계산됩니다(0에서 마지막(막대) 빼기 1). 각각의 새로운 막대 (0)와 함께 모든 막대는 각각 1씩 증가하고 마지막 막대(왼쪽)는 절대 수치 차원으로 표시되지 않지만 이 변수는 Bars 때문입니다. 아무도 당신이 어떤 역사를 가지고 있는지 알지 못하지만 이것은 지표가 전체 역사에서 작동하도록 보장합니다. 논리 연습, 그것 없이는 아무것도 이해할 수 없습니다!
 
laveosa :
1포인트 1센트가 있습니다. 그래서 200핍 스탑까지 내려가려면 20USD가 필요합니까?
0.01포인트가 1센트인 경우 0.1랏의 포지션과 200포인트의 손절매의 경우 손실은 20 USD입니다.
 
borilunad :

막대는 오른쪽에서 왼쪽으로 계산됩니다(0에서 마지막(막대) 빼기 1). 각각의 새로운 막대(0)와 함께 모든 막대는 각각 1씩 증가하고 마지막 막대(왼쪽)는 절대 수치 차원으로 표시되지 않지만 이 변수는 Bars 때문입니다. 아무도 당신이 어떤 역사를 가지고 있는지 알지 못하지만 이것은 지표가 전체 역사에서 작동하도록 보장합니다. 논리를 연습하십시오, 그것 없이는 아무것도 이해할 수 없습니다!

막대는 오른쪽에서 왼쪽으로 계산된다는 것을 알고 있습니다. 차트에 5000개의 막대가 있고 기간 ATR = 14인 경우 [Bars-i] (5000 - 1) 에서 (5000 - 14) 까지의 값을 취합니다. 즉, 4999 년부터 4986 년까지

따라서 AtrBuffer 는 인덱스 i4999 ~ 4986 과 같습니다. 그리고 나머지 막대는 0 에서 4986 까지 어디에 있습니까 ???

 
hoz :

막대는 오른쪽에서 왼쪽으로 계산된다는 것을 알고 있습니다. 차트에 5000개의 막대가 있고 기간 ATR = 14인 경우 [Bars-i] (5000 - 1) 에서 (5000 - 14) 까지의 값을 취합니다. 즉, 4999 년부터 4986 년까지

따라서 AtrBuffer 는 인덱스 i4999 ~ 4986 과 같습니다. 그리고 나머지 막대는 0 에서 4986 까지 어디에 있습니까 ???


당신은 어떻게 생각하십니까? 기간 ATR = 14이면 0 막대는 0 1 이전에 14 막대의 평균 값을 제공하는 식입니다. 역사의 깊은 곳으로.

i 는 마지막 14개 막대를 시간으로 표시하지만 첫 번째 막대는 숫자로 표시하여 평균을 구하거나 공식에 따라 수행할 작업을 수행합니다. 또한 시간상 이전 14개, 즉 왼쪽에 있는 4986번째 막대의 값을 고려합니다.

Dock과 튜토리얼에서 for 문 을 배우십시오!

 
borilunad :


당신은 어떻게 생각하십니까? 기간 ATR = 14이면 0 막대는 0 1 이전에 14 막대의 평균 값을 제공하는 식입니다. 역사의 깊은 곳으로.

i 는 마지막 14개 막대를 시간으로 표시하지만 첫 번째 막대는 평균을 내기 위해 또는 공식에 따라 수행할 작업을 숫자로 표시합니다. 또한 시간상 이전 14개, 즉 왼쪽에 있는 4986번째 막대의 값을 고려합니다.

Dock과 튜토리얼에서 for 문을 배우십시오!

질문은 당신이 말한 것에 대한 것이 아니었습니다. 이해합니다. 이것은 내가 과로와 투파눌입니다. 히스토리 바의 개수가 AtrPeriod 버퍼로 옮겨진다는 점에서 뭉툭한 부분이 있었습니다 .. 그리고 보고 들어가지 않았습니다. 재활용할 때 이런 일이 발생합니다.
 
hoz :

빅터, 당신의 가정은 비논리적입니다.

표시기가 단일 막대를 처리하지 않은 경우 프로그램을 종료하지 않고 모든 막대를 처리해야 합니다.

그리고 이력에 대한 지표의 값은 이력을 분석하는데 필요합니다 :)

 
친애하는 전문가 여러분, 5분 동안 테스트할 때 4개 EA 스프레드의 스프레드가 모두 틱입니까? 여전히 나쁜가요, 아니면 이미 그 이상입니까, 아니면 그 이하입니까?
 
kakin :
친애하는 전문가 여러분, 5분 동안 테스트할 때 4개 EA 스프레드의 스프레드가 모두 틱입니까? 여전히 나쁜가요, 아니면 이미 그 이상입니까, 아니면 그 이하입니까?

작은 정보, 그리고 전문가들은 자고 있습니다 :)
 
paladin80 :
0.01포인트가 1센트인 경우 0.1랏의 포지션과 200포인트의 손절매의 경우 손실은 20 USD입니다.
고마워 친구 나는 그렇게 생각했다 ...... thx :)