Wie kann ich die Schlusskurswerte des oberen und unteren Balkens eines Zickzacks im EA-Code erhalten?
Der Zig-Zag-Indikator ist äußerst nützlich, um Preistrends, Unterstützungs- und Widerstandsbereiche sowie klassische Chartmuster wie Kopf und Schultern, Doppelböden und Doppelspitzen zu bestimmen. Der Zig-Zag-Indikator verwendet in seiner Berechnung sowohl Swing-Hochs als auch Swing-Tiefs:
- Swing Highs: Wenn ein Kurs (in der Regel der Schlusskurs) sowohl höher ist als der Kurs davor als auch danach.
- Schwung-Tiefs: Wenn ein Kurs sowohl niedriger ist als der vorherige als auch als der nachfolgende Kurs.
Der Zig-Zag-Indikator kann sowohl Prozentsätze als auch Punkte in seiner Konstruktion verwenden. Um den Zig-Zag-Indikator zu konstruieren, muss ein bestimmter Prozentsatz oder eine bestimmte Anzahl von Punkten zwischen einem Swing-Hoch und einem Swing-Tief liegen, bevor eine Linie gezeichnet wird. Das nachstehende Diagramm des E-mini Nasdaq 100 Futures-Kontrakts veranschaulicht visuell den Unterschied zwischen einem Preis-Retracement-Zig-Zag von 3 % und einem Preis-Retracement-Zig-Zag von 5 %:

Beachten Sie im obigen Chart, dass ein Zig-Zag mit einem Retracement-Prozentsatz von 3 % deutlichere Linien bildet als ein Zig-Zag mit einem Retracement-Prozentsatz von 5 %. Der Zweck der Verwendung eines Zig-Zag-Indikators mit einem höheren Retracement-Prozentsatz besteht darin, das Preisrauschen zu eliminieren, das für die Analyse des Händlers nicht von Bedeutung ist.
Der Zig-Zag-Indikator ist äußerst effektiv bei der Aufdeckung von Aktienzyklen, während er kurzfristiges Preisrauschen ausblendet.
Der Zig-Zag-Indikator ist äußerst effektiv beim Herausfiltern von kurzfristigem Rauschen und bei der Identifizierung signifikanter Trends und bedeutender Veränderungen der Marktpreise.
Das folgende Diagramm des E-mini S&P 500 Futures-Kontrakts veranschaulicht, wie effektiv der Zig-Zag-Indikator beim Auffinden von Unterstützungs- und Widerstandsbereichen sowie Kursausbrüchen war:

Das obige Diagramm des E-Mini verwendet einen Zig-Zag-Retracement-Wert von 5 %; daher werden nur Preisänderungen von 5 % oder mehr angezeigt, was einem langfristigen Händler oder Anleger hilft, wichtige Bereiche der Unterstützung, des Widerstands und von Preisausbrüchen zu bestimmen.
Auf der linken Seite des Diagramms bildete der S&P 500 ein dreieckiges Konsolidierungsmuster. Als die Kurse den Widerstand durchbrachen, wurde ein langfristiger Kauf generiert. In der Mitte des Diagramms zeigte der Zig-Zag-Indikator an, dass sich der S&P 500 in einem Aufwärtskanal befand. Käufe in Bereichen, in denen die Kurse die untere Unterstützungstrendlinie berührten, und Verkäufe, wenn die Kurse die obere Widerstandslinie berührten, hätten sich als äußerst profitabel erwiesen.
Die Verwendung des Zig-Zag-Indikators für kurzfristige Trades kann sich ebenfalls als profitabel erweisen. Die nachstehende Grafik von Intel (INTC) zeigt ein klassisches Kopf-Schulter-Muster, das mit dem Zig-Zag-Indikator leicht zu erkennen ist (1 $ Retracement):

Das leicht zu erkennende Kopf-Schulter-Muster gab ein Verkaufssignal, als der Kurs auf der rechten Schulter die schräg nach oben verlaufende Trendlinie durchbrach.
Der Zig-Zag-Indikator ist ein hervorragendes technisches Analyseinstrument zur Identifizierung klassischer Chartmuster. Der Zig-Zag-Indikator ist auch ein wirksames Mittel zur Reduzierung von Rauschen und hilft dem technischen Händler, die wahre Marktrichtung zu erkennen.
in diesem Code, speziell für den untenstehenden Block, wird die Variable "res" benötigt? in anderen Blöcken verstehe ich ihre Verwendung, aber nicht in diesem Block.
//--- endgültige Ablehnung for(shift=limit;shift<rates_total && !IsStopped();shift++) { res=0.0; switch(whatlookfor) { case 0: // Suche nach Spitze oder Rasen if(lastlow==0 && lasthigh==0) { if(HighMapBuffer[shift]!=0) { lasthigh=high[shift]; lasthighpos=shift; whatlookfor=Sill; ZigzagBuffer[shift]=lasthigh; res=1; } if(LowMapBuffer[shift]!=0) { lastlow=low[shift]; lastlowpos=shift; whatlookfor=Pike; ZigzagBuffer[shift]=lastlow; res=1; } } break; case Pike: // Suche nach Spitze if(LowMapBuffer[shift]!=0.0 && LowMapBuffer[shift]<lastlow && HighMapBuffer[shift]==0.0) { ZigzagBuffer[lastlowpos]=0.0; lastlowpos=shift; lastlow=LowMapBuffer[shift]; ZigzagBuffer[shift]=lastlow; res=1; } if(HighMapBuffer[shift]!=0.0 && LowMapBuffer[shift]==0.0) { lasthigh=HighMapBuffer[shift]; lasthighpos=shift; ZigzagBuffer[shift]=lasthigh; whatlookfor=Sill; res=1; } break; case Sill: // Suche nach Rasen if(HighMapBuffer[shift]!=0.0 && HighMapBuffer[shift]>lasthigh && LowMapBuffer[shift]==0.0) { ZigzagBuffer[lasthighpos]=0.0; lasthighpos=shift; lasthigh=HighMapBuffer[shift]; ZigzagBuffer[shift]=lasthigh; } if(LowMapBuffer[shift]!=0.0 && HighMapBuffer[shift]==0.0) { lastlow=LowMapBuffer[shift]; lastlowpos=shift; ZigzagBuffer[shift]=lastlow; whatlookfor=Pike; } break; default: return(rates_total); } }
wirklich benötigt?
In diesem Code, speziell für den unten stehenden Block, wird die Variable "res" benötigt. In anderen Blöcken wird sie verwendet, aber nicht in diesem Block.
wirklich benötigt?
Prüfen Sie, was er vor dem von Ihnen gezeigten Code damit gemacht hat. Oder noch besser: entfernen Sie ihn und sehen Sie, was mit dem Zickzack-Indikator passiert
Vielen Dank für Ihre Antwort : )
habe Print(), um den Wert zu überprüfen und auch, wo es verwendet wird, aber war nicht in der Lage, herauszufinden, warum es in diesem Block benötigt.
Ich habe ihn auch entfernt, aber der Indikator funktioniert auch ohne ihn gut.
Ich war neugierig, weil es ist Standard-Indikator kam mit MT5.
war gerade für die zweite Meinung suchen, wenn ich die Existenz der Verwendung in diesem Block von Code missverstanden haben.
Wie kann ich die Schlusskurswerte des oberen und unteren Balkens eines Zickzacks im EA-Code erhalten?
Verwenden Sie iCustom(), um die Balken im Diagramm von rechts nach links durchzugehen und nach einem nicht leeren Wert des Indikatorpuffers zu suchen. Hier ist der Balken, nach dem Sie suchen. Sie können jeden beliebigen Candlestick-Preis abrufen.
Aleksandr Shirin eine Linie zwischen dem Maximum und dem Minimum bei dem Wert dieses Parameters 12 zieht, aber gleichzeitig zwischen dem Maximum und dem Minimum - die Anzahl der Kerzen weniger als 12 ist?
Es hängt auch von der Anzahl der Punkte ab, die der Preis passiert hat (Parameter ExtDeviation).
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
ZigZag:
Der Zigzag Indikator besteht aus einer Reihe von Segmenten die die signifikanten Hochs und Tiefs des Kurscharts verbinden.
Autor: MetaQuotes Software Corp.