[ARCHIV!] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen - 4. - Seite 488

 

Ich werde die Frage noch einmal stellen, vielleicht hat es niemand bemerkt, weil es so viele Folgefragen gibt.

Ich beschloss zu verstehen, wie derATR-Indikator funktioniert, und gleichzeitig seinen Code zu studieren. Ich habe das Wesentliche verstanden, aber es ist seltsam geschrieben.

Hier ist dieStartfunktion:

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);
  }
//+----------------

Hier ist der erste Block mit etwas Verwirrung:

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

Welchen Sinn hat es, etwas zu tun, wenn der Wert von counted_bars <1 ist. Meiner Meinung nach bedeutet das, dass der Indikator noch keinen Balken gezählt hat und ich die Funktion einfach verlassen sollte, da es noch keine Werte gibt... Wo ist der Haken?

Warum hatAtrBuffer den Index[Bars-i]? Ich habe verstanden, dass der Puffer auf 0,0 gesetzt werden soll, wenn es keine Werte gibt. Es stellt sich jedoch heraus, dass der Wert 0.0 nur für Balken von(Bars) bis(AtrPeriod) definiert ist, während vonAtrPeriod bis zum0-ten Balken nichts in den Puffer geschrieben wird. Und warum?

Ich verstehe die Logik dieses Codefragments nicht

Im nächsten Block:

//----
   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--;
     }
//----

In der Reihe:

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

Bedingung wenni==Bars-1. Es scheint, dass der Wert des1.Balkens vom Anfang des Diagramms auf der linken Seite berücksichtigt wird...Aber das ist sehr weit weg, was nützt dieser Wert?

 
hoz:

Ich werde die Frage noch einmal stellen, vielleicht hat es niemand bemerkt, weil es so viele Folgefragen gibt.

Ich beschloss zu verstehen, wie derATR-Indikator funktioniert, und gleichzeitig seinen Code zu studieren. Ich habe das Wesentliche verstanden, aber es ist seltsam geschrieben.

Hier ist dieStartfunktion:

Hier ist der erste Block mit etwas Verwirrung:

Welchen Sinn hat es, etwas zu tun, wenn der Wert von counted_bars <1 ist. Meiner Meinung nach bedeutet das, dass der Indikator noch keinen Balken gezählt hat und ich die Funktion einfach beenden sollte, da es noch keine Werte gibt... Wo ist der Haken?

Warum hatAtrBuffer den Index[Bars-i]? Ich habe verstanden, dass der Puffer auf 0,0 gesetzt werden soll, wenn es keine Werte gibt. Es stellt sich jedoch heraus, dass der Wert 0.0 nur für Balken von(Bars) bis(AtrPeriod) definiert ist, während vonAtrPeriod bis zum0-ten Balken nichts in den Puffer geschrieben wird. Und warum?

Ich verstehe die Logik dieses Codefragments nicht

Im nächsten Block:

In der Reihe:

Bedingung wenni==Bars-1. Es scheint, dass der Wert des1.Balkens vom Anfang des Diagramms auf der linken Seite berücksichtigt wird...Aber das ist sehr weit weg, was nützt dieser Wert?


Die Balken werden von rechts nach links gezählt (von 0 bis zum letzten (Balken) minus 1). Mit jedem neuen Balken (0) werden alle Balken entsprechend um eins erhöht, und der letzte (links) wird nie in der numerischen Messung angegeben, und diese Variable Balken, weil niemand weiß, welche Geschichte Sie haben, aber es garantiert die Arbeit des Indikators auf alle Geschichte, die er hat. Trainieren Sie Ihre Logik, ohne sie können Sie nichts verstehen!
 
laveosa:
Ich habe 1 pip-1 cent. bedeutet das, dass ich 20USD brauchen, um in der Lage sein, eine 200 pips nach unten zu stoppen widerstehen?
Wenn ein 0,01-Punkt-Lot = 1 Cent, dann für eine 0,1-Lot-Position mit einem 200-Pips-Stop-Loss = 20 USD.
 
borilunad:

Die Balken werden von rechts nach links gezählt (von 0 bis zum letzten (Balken) minus 1). Mit jedem neuen Balken (0) werden alle Balken entsprechend um einen erhöht, und der letzte (links) wird nie numerisch angegeben, und diese Variable Balken, weil niemand weiß, welche Geschichte Sie haben, aber es garantiert die Arbeit des Indikators auf die gesamte Geschichte, die er hat. Trainieren Sie Ihre Logik, ohne sie können Sie nichts verstehen!

Ich weiß, dass die Balken von rechts nach links gezählt werden. Wenn sich 5000 Balken auf dem Chart befinden und die ATR-Periode = 14 ist, dann nimmt[Bars-i] den Wert von (5000 - 1) bis (5000 - 14) an, d.h. von 4999 bis 4986.

Der AtrBuffer wird also mit dem Index i gleich 4999 bis 4986 sein. Und wo sind die restlichen Balken von 0 bis 4986?

 
hoz:

Ich weiß, dass die Balken von rechts nach links gezählt werden. Wenn sich 5000 Balken auf dem Chart befinden und die ATR-Periode = 14 ist, dann nimmt[Bars-i] den Wert von (5000 - 1) bis (5000 - 14) an, d.h. von 4999 bis 4986.

Der AtrBuffer wird also mit dem Index i gleich 4999 bis 4986 sein. Und wo sind die anderen Balken von 0 bis 4986?


Wie rechnen Sie? Wenn die ATR-Periode = 14 ist, dann ergibt der Null-Balken den Durchschnitt der 14 Balken vor dem Null-Balken und so weiter in die Tiefe der Geschichte.

Das i geht über die 14-Balken zuletzt in der Zeit, aber zuerst in der Zahl, um sie zu mitteln oder was mit der Formel zu tun. Zählt auch den Wert des 4986. Taktes durch die 14 zeitlich vorhergehenden Takte, d.h. durch die, die links stehen.

Studieren Sie den for-Operator in Doc und im Tutorium!

 
borilunad:


Wie rechnen Sie? Wenn die ATR-Periode = 14 ist, dann ergibt der Null-Balken den Durchschnitt der 14 Balken vor dem Null-Balken und so weiter in die Tiefe der Geschichte.

Ich gehe über die 14-bar letzten Mal, aber über die erste durch die Zahl, um sie oder was zu tun, durch die Formel zu mitteln. Zählt auch den Wert des 4986. Taktes durch den 14-taktigen letzten in der Zeit, d.h. durch die, die links stehen.

Studieren Sie den for-Operator in Doc und das Tutorial!

Das war nicht die Frage, was Sie gesagt haben, habe ich verstanden. Ich war überarbeitet und dumm. Es gab ein Problem mit der Tatsache, dass derAtrPeriod-Puffer die Anzahl der Takte der Historie weitergibt... Und ich habe es mir angesehen und nicht verstanden. Ich werde so, wenn ich zu viel arbeite...
 
hoz:

Victor, Ihre Annahmen sind unlogisch.

Wenn der Indikator keinen einzigen Balken verarbeitet hat, bedeutet dies, dass er alle Balken verarbeiten und das Programm nicht beenden sollte.

Und die Indikatorwerte im Verlauf werden für die Analyse des Verlaufs benötigt:)

 
Geschätzte Profis, ist ein matodied EA-Spread von 4 beim Testen aller Ticks auf 5mins noch schlecht, oder ist es mehr oder weniger?
 
kakin:
Liebe Profis, ist der 4 Spread eines EA in einem 5 min Test alle Ticks noch schlecht, oder ist es mehr oder weniger?

Es gibt nicht viele Informationen, und die Profis schlafen schon:)
 
paladin80:
Wenn ein 0,01 Lot = 1 Cent, dann für eine 0,1 Lot Position mit einem 200 Pips Stop Loss = 20 USD.
danke Kumpel ich dachte so...... danke :)
Grund der Beschwerde: