Autor: dm34@mail.ru
Der UltraCCI-Indikator basiert auf dem Commodity Channel Index (CCI) und analysiert die Trendrichtung seiner verschiedenen Signallinien. Die Berechnung der Signallinien erfolgt über die folgenden Eingabeparameter:
- StartLength - der minimalen Startwert der ersten Signallinie;
- Step - der Schritt für die Periodenänderung;
- StepsTotal - die Anzahl der Periodenänderungen.
Jeder Periodenwert aus der Vielzahl der Signallinien wird mithilfe einer arithmetischen Progression berechnet:
SignalPeriod(Number) = StartLength + Number * Step
Dabei variiert die Zahl von 0 bis StepsTotal. Die erhaltenen Werte werden in ein Array gespeichert und bei jedem Tick des Indikators verwendet, um die Werte des geglätteten RSI-Indikators zu erhalten. Die Trendrichtungen für jede Glättung werden berechnet, und die Anzahl der positiven und negativen Trends für das gesamte Array der geglätteten CCI-Werte wird ermittelt. Schließlich wird die Gesamtzahl der positiven und negativen Trends erneut geglättet und dient als die Indikatorlinien, die eine Farbwolke bilden, die mit der DRAW_FILLING-Stilklasse dargestellt wird.
Die Trendrichtung wird durch die Farbe der Wolke bestimmt, während die Stärke des Trends durch die Breite der Wolke angezeigt wird. Du kannst die überkauften (UpLevel) und überverkauften (DnLevel) Niveaus verwenden, die in Prozent vom maximalen Amplitudenwert des Indikators eingestellt werden.
Zusätzlich bietet der Indikator die Möglichkeit, die Geschwindigkeit der Trendkraftänderung anzuzeigen, die als farbige Punkte dargestellt wird. Wenn die Kraft des Trends zunimmt, entspricht die Farbe dieser Punkte der Farbe der Wolke; andernfalls werden die Punkte in der entgegengesetzten Farbe angezeigt.
Es stehen zehn verschiedene Glättungsalgorithmen zur Auswahl:
- SMA - einfache gleitende Durchschnitt;
- EMA - exponentielle gleitende Durchschnitt;
- SMMA - geglätteter gleitender Durchschnitt;
- LWMA - linear gewichteter gleitender Durchschnitt;
- JJMA - JMA adaptive Durchschnitt;
- JurX - ultralineare Glättung;
- ParMA - parabolische Glättung;
- T3 - Tillsons mehrfach exponentielle Glättung;
- VIDYA - Glättung mit Tushar Chandés Algorithmus;
- AMA - Glättung mit Perry Kaufmans Algorithmus.
Es ist wichtig zu beachten, dass die Phasenparameter für verschiedene Glättungsalgorithmen völlig unterschiedliche Bedeutungen haben. Für JMA ist es eine externe Phasenvariable, die von -100 bis +100 variiert. Für T3 ist es das Glättungsverhältnis, multipliziert mit 100 für eine bessere Visualisierung, bei VIDYA ist es die CMO-Oszillatorperiode und für AMA ist es die langsame EMA-Periode. Bei anderen Algorithmen beeinflussen diese Parameter die Glättung nicht. Für AMA ist die schnelle EMA-Periode ein fester Wert und beträgt standardmäßig 2. Das Verhältnis der Hochzuleitung beträgt ebenfalls 2 für AMA.
Der Indikator nutzt die Klassen der SmoothAlgorithms.mqh Bibliothek (müssen in den terminal_data_folder\MQL5\Include kopiert werden). Die Verwendung der Klassen wurde ausführlich im Artikel "Averaging Price Series for Intermediate Calculations Without Using Additional Buffers" beschrieben.
Eingabeparameter des Indikators:
//+----------------------------------------------+ //| Eingabeparameter des Indikators | //+----------------------------------------------+ input int CCI_Period=13; // CCI-Indikatorperiode input ENUM_APPLIED_PRICE Applied_price=PRICE_CLOSE; // Angelegter Preis //---- input Smooth_Method W_Method=MODE_JJMA; // Glättungsmethode input int StartLength=3; // Anfangsglättungsperiode input int WPhase=100; // Glättungsparameter //---- input uint Step=5; // Schritt für Periodenänderung input uint StepsTotal=10; // Anzahl der Periodenänderungen //---- input Smooth_Method SmoothMethod=MODE_JJMA; // Glättungsmethode input int SmoothLength=3; // Glättungstiefe input int SmoothPhase=100; // Glättungsparameter //---- input uint UpLevel=80; // Überkauft-Niveau, %% input uint DnLevel=20; // Überverkauft-Niveau, %% input color UpLevelsColor=DarkViolet; // Farbe für Überkauft-Niveau input color DnLevelsColor=DarkViolet; // Farbe für Überverkauft-Niveau input STYLE Levelstyle=DASHDOTDOT_; // Stile der Niveaus input WIDTH LevelsWidth=Width_1; // Breite der Niveaus //+----------------------------------------------+

Verwandte Beiträge
- Tägliche prozentuale Veränderung in MT5 – Indikator für MetaTrader 5
- Uniformitätsfaktor-Indikator für MetaTrader 5: Analysiere deine Preisbewegungen
- Boom Index Spike Pattern – Ein Leitfaden für MetaTrader 5 Trader
- Täglicher Drawdown: Ein wichtiger Indikator für MetaTrader 5
- Trend Intensitäts Index: Ein unverzichtbarer Indikator für MetaTrader 5