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
Geändert in dies
Es scheint zu funktionieren.Ihre Arrays sind nicht serialisiert.
Deshalb ist es das hier.
Buffer[i+1]=Buffer[i]+delta;
ein Blick in die Zukunft
Es berechnet nicht 0 bar neu - aus dem gleichen Grund - wie Ihr Start - es beginnt nicht mit 0.
Ihre Arrays sind nicht serialisiert.
Das ist der Grund, warum es so ist.
einen Blick in die Zukunft werfen.
Aus demselben Grund, aus dem Sie nicht mit 0 beginnen, wird auch nicht 0 bar neu berechnet.
Mein 0 bar wird nicht nach der Formel berechnet.
Und dann wird der Indikator auf der Grundlage der Preisbewegung mit dem Trend Schritt halten.
Zum Beispiel, wenn der Preis hat sich weg von dem Indikator und wird sich nicht bewegen, dann während der"Periode" der Kerze Indikator wird der Preis aufholen, das ist eine Art Alternative zu MA für mich
lazarev-d-m:
Es ist für mich eine Art Alternative zu MA
Mein erster Indikator. Ich möchte das Symbol von 0 bis 100 skalieren. Mache ich es richtig? Und wie man den aktuellen Balken nicht neu berechnen lässt (im Tester ruckelt es, aber nicht im Diagramm)
Speichern Sie die Eröffnungszeit des aktuellen Balkens und vergleichen Sie sie mit dem gleichen Wert des eingehenden Ticks. Berechnen Sie den Wert des aktuellen Balkens nur dann neu, wenn die Werte nicht übereinstimmen.
Ich würde dies in den Initialisierungsblock aufnehmen:
und die Variablen würden auf der globalen Ebene des Programms deklariert werden:
Speichern Sie die Eröffnungszeit des aktuellen Balkens und vergleichen Sie sie mit dem gleichen Wert des eingehenden Ticks. Berechnen Sie den Wert des aktuellen Balkens nur dann neu, wenn die Werte nicht übereinstimmen.
Ich würde dies in den Initialisierungsblock aufnehmen:
Ich habe nichts anderes bemerkt. Die Artikel legen eine ähnliche Struktur nahe. Es gibt eine Prüfung auf Division durch Null.
Ja, um eine Neuberechnung zu vermeiden, können Sie auch prev_calculated und rates_total vergleichen, soweit ich mich erinnere.
Ich habe nichts anderes bemerkt. Die Artikel legen eine ähnliche Struktur nahe. Es gibt eine Prüfung auf Division durch Null.
Ja, um eine Neuberechnung zu vermeiden, können Sie auch prev_calculated und rates_total vergleichen, soweit ich mich erinnere.
Das Terminal braucht eine gewisse Zeit, um "hochzufahren", seine Datenbanken mit dem Server zu synchronisieren usw., wenn es startet. Wenn der Indikator gleichzeitig gestartet wird, gibt es möglicherweise keine Daten für die Berechnung des Indikators. Versuchen Sie die einfachste Lösung: Fügen Sie eine Verzögerung von zwei oder drei Sekunden in OnInit() ein.
Eine gute Lösung ist es, bei der Suche nach der Problemstelle alle wichtigen Informationen auszudrucken. Wie
Yedelkin:
Ich habe noch keine Hilfe für den Live-Handel gefunden - versuchen Sie einfach, eine Position in einem Demokonto zu eröffnen und zu schließen.
Hier ist sie: https://www.mql5.com/ru/forum/6343/page96#comment_419028