[Archiv!] Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht daran vorbei. Könnte nirgendwo ohne dich hingehen - 2. - Seite 135

 

Ich verstehe die Frage nicht) Ich betrachte die durchschnittliche Veränderung

 
eddy:

Ich verstehe die Frage nicht) Ich zähle durchschnittliche Änderungen

In diesem Fall müssen alle Takte gezählt werden, unabhängig von den Änderungen, die an einzelnen Takten auftreten.

Lass es bis morgen liegen. Morgens ist es besser...

 

Wenn sich der Balken nicht ändert, gibt es nichts zu zählen, ich zähle den Durchschnitt der vorhandenen Änderungen)

 
eddy:

Ich frage mich nur, warum ein Balken, der noch nie gehandelt wurde, überhaupt in eine Zahlenreihe aufgenommen werden muss.

sowie die Monate, in denen ich nicht gehandelt habe, bei der Berechnung der Gewinne

Der Unterschied besteht darin, dass, wenn wir alle Balken unabhängig von den in ihnen aufgetretenen Änderungen betrachten, die Berechnung vom Standpunkt der Kodierung aus gesehen auf eine einfache Addition in einer Schleife und eine Division durch die Anzahl der Iterationen der Schleife hinausläuft (sehr einfach, einfach und schnell), während wir, wenn wir uns die Mühe machen, die Balken zu betrachten, die sich nicht geändert haben, der Schleife die Prüfung der Abwesenheit von Änderungen und eine weitere Variable hinzufügen sollten, die die Anzahl der Balken speichert, in denen diese Änderungen stattgefunden haben. Kurz gesagt - für Pioniere, die Schwierigkeiten mögen (für diejenigen, die in der Hängematte stehen, um die demographische Situation zu verbessern...)
 
KabrGvin:


und wie sind Sie aus dieser Situation herausgekommen?
 
eddy:

Null ist die Abwesenheit von Veränderung, nicht die Veränderung gleich Null.

Ich betrachte den Durchschnitt der bestehenden Änderungen, d. h. der Änderungen, die

Es gibt niemanden zu verbieten und nichts zu tun, ich schließe mich einfach der Meinung der Mathematiker an. Null ist die gleiche Veränderung und die gleiche Messung, wie auch andere. Sie herauszugreifen ist Freiwilligkeit.
 
granit77:
Da es niemanden zu verbieten und nichts zu tun gibt, schließe ich mich einfach dem Standpunkt der Mathematiker an. Null ist die gleiche Veränderung und die gleiche Messung, wie auch andere. Sie herauszugreifen ist Freiwilligkeit.
Das hängt wirklich von der Aufgabe ab, da gibt es nichts zu diskutieren. Wenn das Ziel darin besteht, "den Durchschnitt der letzten fünf positiven Veränderungen" zu berechnen, dann sollten natürlich keine Nullen genommen werden. Wenn "der Durchschnitt der letzten fünf nicht-negativen Änderungen", müssen Sie Null nehmen. Das war's.
 
Ich habe, warum der Tester nicht optimieren den Bot
 
todem:
Ich habe, warum der Tester den Bot nicht optimiert
Die Antwort steht im Protokoll des Strategietesters
 
if (STATE==0)
   {
      bool cantrade=true;
      if(TimeHour(TimeCurrent())==LastTradeTime) cantrade=false;//запрещаем торговать пока не наступит новый час после последней 
                                                                //открытой сделки (чтобы избежать множественных открываний сделок на одном и том же часовом баре)     
      if (Hour()>=StartH && Hour()<=FinishH)
      if(OrdersTotalMagic(magic)>=active_trades) cantrade=false;// проверяем на допустимое количество открытых ордеров
      if (OrdCon(OP_BUY,magic)>=1 || OrdCon(OP_SELL,magic)>=1) SimpleTrailing();
      if(cantrade) // если не было ни одного запрета на открытие сделок, то переходим к ожиданию сигналов системы на открытие ордеров
         STATE=1;
   }

Wie denken Sie, dass es Fehler in diesem Code gibt? wie der Meta-Editor zeigt - 0 (nein), aber wenn Sie Klammern nach der Zeile if (Hour()>=StartH && Hour()<=FinishH) { } - wie diese :

if (STATE==0)
   {
      bool cantrade=true;
      if(TimeHour(TimeCurrent())==LastTradeTime) cantrade=false;//запрещаем торговать пока не наступит новый час после последней 
                                                                //открытой сделки (чтобы избежать множественных открываний сделок на одном и том же часовом баре)     
      if (Hour()>=StartH && Hour()<=FinishH)  {
      if(OrdersTotalMagic(magic)>=active_trades) cantrade=false;// проверяем на допустимое количество открытых ордеров
      if (OrdCon(OP_BUY,magic)>=1 || OrdCon(OP_SELL,magic)>=1) SimpleTrailing();
      if(cantrade) // если не было ни одного запрета на открытие сделок, то переходим к ожиданию сигналов системы на открытие ордеров
         STATE=1;}
   }
Es öffnet keine Trades und funktioniert nicht! Weiß jemand, woran das liegen könnte?