Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 858
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Guten Tag.
Der Indikator im Fenster zeigt bis zu 5 Dezimalstellen an.
Bei der Verwendung in einem Expert Advisor über iCustom(Symbol(), PERIOD_M1, "MACD",12, 26, SignalSMA, 0, 0) werden bis zu 4 Dezimalstellen angezeigt (durch den Befehl Print festgelegt).
Wie kann ich 5 Ziffern in die Tafel bekommen?
Drucken Sie mit der Funktion DoubleToString und Sie erhalten die gewünschten 5 Zeichen. Wenn Sie wollen, können Sie auch 8 bekommen.
Mit anderen Worten, die Indikatorberechnungen im Expert Advisor werden mit 5 Dezimalstellen durchgeführt und Print kürzt das Ergebnis auf 4 Dezimalstellen, wenn es im Journal angezeigt wird?
Das Rechenergebnis kann bis zu 16 Dezimalstellen haben, wenn es nicht normalisiert ist:
Die Ausgabe der Berechnung direkt über Print wird nicht abgeschnitten. Es gibt noch etwas anderes im Code, zum Beispiel die Normalisierung.
Das ist der Punkt, es gibt nichts anderes (Normalisierungen usw.):
double g_macd=iCustom(Symbol(), PERIOD_M1, "g_MACD",12, 26, SignalSMA, 1, 0);
Print ("g_macd=",g_macd);
g_MACD hat im Indikator einen Wert (des 1. Puffers) mit der 5. Dezimalstelle, während Print im Protokoll einen Wert mit der 4. Dezimalstelle anzeigt, was nicht akzeptabel ist.
Wie lässt sich dieses Problem lösen?
Das ist der Punkt, es gibt nichts anderes (Normalisierungen usw.):
double g_macd=iCustom(Symbol(), PERIOD_M1, "g_MACD",12, 26, SignalSMA, 1, 0);
Print ("g_macd=",g_macd);
g_MACD hat im Indikator einen Wert (des 1. Puffers) mit der 5. Dezimalstelle, während Print im Protokoll einen Wert mit der 4. Dezimalstelle anzeigt, was nicht akzeptabel ist.
Wie lässt sich dieses Problem lösen?
Sehen Sie in Ihrem Code nach, das Problem liegt irgendwo dort.
Um es zu testen, habe ich ein einfaches Skript mit WPR-Aufruf ausgeführt und das Ergebnis des Indikatoraufrufs ausgedruckt:
Der Indikator selbst zeigt, wie Sie wissen, Werte mit 4 Dezimalstellen in seinem Fenster an, aber für Expert Advisors zeigt er 13 und sogar 14 an.
Hallo! Bitte schauen Sie sich den Code unten, die Erstellung von "Arrow"-Objekt auf das Signal, Pfeile sind nicht in den Tester gezeichnet, obwohl das Protokoll geht, und auch in der Log beim Start in den Tester schreibt einen Fehler TestGenerator: unmatched Datenfehler (Volumengrenze 412 bei 2014.10.13 17:10 überschritten),
Und während des Testens erzeugt es einen Fehler "Checking USDJPYm,M5 arrow: Error in object creation: code #4200" - aber ich denke, das ist normal, weil das Programm zunächst feststellt, dass das Objekt erstellt wurde, und es nach dem Löschen erneut erstellt. Generell wäre ich Ihnen für Ihre Kommentare zu den Fragen dankbar.
Urteilen Sie nicht streng nach dem Wortlaut.
Leute, helft mir mit den Pfeilen, bitte!!!
Leute, helft mir mit den Pfeilen, bitte!!!
Finden Sie diese Zeile heraus.
Schauen Sie, wo der Pfeil eingezeichnet ist.
Finden Sie diese Zeile heraus
Achten Sie darauf, wo der Pfeil eingezeichnet ist.
Ich habe jetzt die Pfeile erhalten, und sie bewegen sich entsprechend den Punkten von Signal zu Signal,
Ich kann dann die Auslösung des Signals auf dem Chart analysieren?
Vielen Dank, Alexey! Es hat geholfen, jetzt die Pfeile erscheinen und bewegen sich von Signal zu Signal durch Punkte, aber wie sollte ich die Pfeile erscheinen und bleiben an ihrem Platz auf jedem Signal?
Ich kann dann die Auslösung des Signals auf dem Chart analysieren?