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
Hallo liebe ForistInnen,
hier habe ich ein kleines Projekt, an dem ich immer mal wieder gearbeitet habe, es handelt sich um Envelopes, aber mit AMA als Berechnungsgrundlage.
Viele wissen ja um die Vorteile des AMA und dass er eine Noise-Reduction Formel enthält, die auf einen Perry Kaufman zurückgeht.
Da ich selbst nicht aus dem Programmierbereich komme und einen schweren Start hatte, ist dieses Thema in einem Niveau gehalten, das gerade für Neulinge nützlich ist.
Eigentlich hätte es ganz einfach sein müssen: Das Handle des AMAs in das Handle des Envelopes einsetzen, ein Shift für Beide verwenden, damit die Plots immer gleich verschoben werden, aber das hier passierte:
Mit Shift=0 sah noch Alles ganz gut aus.
Dann aber das. Man sehe sich die Kurve an.
Bei Shift=-10 wird sie zwar verschoben, hört jedoch zu früh auf.
Hier der FALSCHE Code:
Nach einigen Versuchen fand ich heraus, dass Input Shift in diesem Fall nicht im Handle verarbeitet werden kann, sondern in beide Handles nur ein Platzhalter Shift=0 gehört. Der Input Shift aller drei Plotbuffer muss in PlotIndexSetInteger() verbaut werden.
Hier der RICHTIGE Code:
Und hier das Ergebnis:
Hier mit Shift=10
Hier mit Shift=-10
Jetzt stimmt das Ergebnis.
Aber warum muss man das so umständlich machen? Warum werden manche Input Parameter wie vorgesehen im Handle verarbeitet und Andere müssen auf so einem Weg eingegeben werden?