[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 679

 


Liebe Programmierer,
Bitte beantworten Sie die folgende Frage:

Gibt mit 8 Dezimalstellen aus. Warum wird es nicht normalisiert?

double open_sss=NormalizeDouble(iOpen(Symbol(),PERIOD_M5,elapsed_bar),Digits);
Print("open_sss= "+open_sss);

http://savepic.ru/1435355.gif

 
Hedin:


Liebe Programmierer,
bitte beantworten Sie folgende Frage:

Ausgaben mit 8 Dezimalstellen. Warum ist sie nicht normalisiert?

http://savepic.ru/1435355.gif


Wenn in der Hilfe zur Funktion NormalizeDouble() steht, dass sie auf eine bestimmte Genauigkeit rundet und den Typ double zurückgibt, dann ist das richtig, und wenn Sie einen Textstring mit einer bestimmten Genauigkeit nach dem Dezimalpunkt benötigen, dann sollten Sie DoubleToStr() verwenden
 
IgorM:


Ich muss die Bedeutung von int startH = Hour(); missverstanden haben - es wird die aktuelle Serverzeit - Stunde, würde ich für Null Stunden suchen, oder jede andere Stunde:


Danke, jetzt funktioniert es.

Aber warum es mit der Funktion Hour() nicht funktioniert hat, verstehe ich immer noch nicht.

Sie gab uns die aktuelle Stunde der nördlichen Zeit an. Nehmen wir zum Beispiel die Zahl 5.

Wenn wir also open[i+5] aufrufen, erhalten wir den Eröffnungskurs der Kerze, die zu Beginn des Tages, d.h. um 0:00 Uhr, geöffnet wurde.

Bitte erklären Sie mir, was genau ich nicht verstehe?

 
webgreck:


Danke, jetzt funktioniert es.

Ich verstehe immer noch nicht, warum es mit der Funktion Hour() nicht funktioniert hat.

Sie gab uns die aktuelle Stunde der nördlichen Zeit an. Nehmen wir zum Beispiel die Zahl 5.

Wenn wir also open[i+5] aufrufen, erhalten wir den Eröffnungskurs der Kerze, die zu Beginn des Tages, d.h. um 0:00 Uhr, geöffnet wurde.

Bitte erklären Sie mir, was genau ich nicht verstehe?


Die Serverzeit ist Serverzeit ( TimeCurrent() ), Sie haben sie auf Ihrem PC ( TimeLocal(); ), die Funktion Hour() :

"Gibt die aktuelle Stunde (0,1,2,...23) der letzten bekannten Serverzeit beim Programmstart zurück (dieser Wert ändert sich nicht während der Programmausführung ) Hinweis: Die letzte bekannte Serverzeit wird während des Tests simuliert. "

Ich weiß selbst nicht, was ich damit anfangen soll, wenn es sich nicht ändert - vielleicht wird es nur für den Tester benötigt.

 
webgreck:

Können Sie mir bitte sagen, was ich falsch gemacht habe?

Ich muss den Eröffnungskurs der ersten Kerze im Stundenchart finden, d.h. die Kerze um 0:00 Uhr, und von dieser Kerze bis zur aktuellen Kerze den maximalen Kurswert ermitteln.

Warum erhalte ich immer den Höchststand der ersten Kerze des aktuellen Tages?

So mache ich es:

Gehen Sie durch Time[] und suchen Sie den gewünschten Balken, dann gehen Sie von diesem Balken aus , um einen Extremwert zu finden.
 

Liebe Kolleginnen und Kollegen, weiß jemand, wie man den Prüfer dazu bringt, die Provision für einen Handel nicht abzuziehen? Vielleicht gibt es in MT4 eine Datei, in der die Höhe der Provision für einen Kontrakt für ein bestimmtes Instrument angegeben ist?

Lassen Sie mich erklären, wofür ich es brauche. Neben den Währungen interessiere ich mich auch für Futures auf den Uber und den RTS Index. Quick ist nicht für die Roboterentwicklung geeignet. Zum Beispiel hat mein Brokerage-Unternehmen eine Provision für einen Vertrag - CFD auf Futures auf den rts-Index (wie es klingt, aber ...:)) - es ist ein Schläger ... kostet 10 grüne Papiere. Deshalb ergibt sich selbst bei einem Handel mit einem Gewinn von 250 Pence ein Verlust von 1 $ im Tester. Es ist unglaublich, ich habe Tools und Zitate, aber es ist unmöglich, sie zu testen und zu optimieren.

Hilfe!

 
Blaid73:

Liebe Kolleginnen und Kollegen, weiß jemand, wie man den Prüfer dazu bringt, die Provision für einen Handel nicht abzuziehen? Vielleicht gibt es in MT4 eine Datei, in der die Höhe der Provision für einen Kontrakt für ein bestimmtes Instrument angegeben ist?

Lassen Sie mich erklären, wofür ich es brauche. Neben den Währungen interessiere ich mich auch für Futures auf den Uber und den RTS Index. Quick ist nicht für die Roboterentwicklung geeignet. Zum Beispiel hat mein Brokerage-Unternehmen eine Provision für einen Vertrag - CFD auf Futures auf den rts-Index (wie es klingt, aber ...:)) - es ist ein Schläger ... kostet 10 grüne Papiere. Deshalb ergibt sich selbst bei einem Handel mit einem Gewinn von 250 Pence ein Verlust von 1 $ im Tester. Es ist unglaublich, ich habe Tools und Zitate, aber es ist unmöglich, sie zu testen und zu optimieren.

Hilfe!


wahrscheinlich dies: https://www.mql5.com/ru/forum/119830

 

Bitte teilen Sie mir mit, wie und was Sie tun können, um den Code zu ersetzen, damit er das Gleiche tut, aber schneller funktioniert:

if (BB_1>BB_2 && BB_2<=BB_3 && BB_1<0)                               // Найден разворот BB вверх
      {
      switch (tf)
         {
            case 1:     TrBBTurnUP_M1 =true;  TrBBTurnDN_M1=false;      // Флаг разворота вверх на М1
            case 5:     TrBBTurnUP_M5 =true;  TrBBTurnDN_M5=false;      // Флаг разворота вверх на М5
            case 15:    TrBBTurnUP_M15=true;  TrBBTurnDN_M15=false;     // Флаг разворота вверх на М15 
            case 30:    TrBBTurnUP_M30=true;  TrBBTurnDN_M30=false;     // Флаг разворота вверх на М30 
            case 60:    TrBBTurnUP_H1 =true;  TrBBTurnDN_H1=false;      // Флаг разворота вверх на H1
            case 240:   TrBBTurnUP_H4 =true;  TrBBTurnDN_H4=false;      // Флаг разворота вверх на H4
            case 1440:  TrBBTurnUP_D1 =true;  TrBBTurnDN_D1=false;      // Флаг разворота вверх на D1
            case 10080: TrBBTurnUP_W1 =true;  TrBBTurnDN_W1=false;      // Флаг разворота вверх на W1
            case 43200: TrBBTurnUP_MN =true;  TrBBTurnDN_MN=false;      // Флаг разворота вверх на MN
         }
      }

Es ist nur ein Teil einer großen Funktion, bei der es viele solcher Überprüfungen gibt und die Leistung stark beeinträchtigt wird. Ich habe hier bereits Fragen zur Code-Optimierung gestellt, aber ich habe keine Antworten erhalten und auch in der Suche nichts gefunden... Ist es wirklich ein Geheimnis, dass niemand darüber Bescheid weiß oder bereit ist, es mitzuteilen...? Wenigstens ein Link zu einem Artikel... die Sie in aller Ruhe lesen können... Es ist sowieso unmöglich, es vollständig zu testen...

 
Wie kann ich mit Ihnen Kontakt aufnehmen? Ich habe eine Menge Fragen und würde gerne einen Ratschlag erhalten.
 
artmedia70:

Bitte beraten Sie, wie und was Sie tun können, um den Code zu ändern, um die gleiche Sache zu tun, aber schneller arbeiten: ...

Ich würde den Schalter durch ein vorgefertigtes Array ersetzen, warum jedes Mal vordefinierte Werte zuweisen?