
Lernen Sie, wie man ein Handelssystem mit dem CCI entwickelt
Einführung
Dies ist ein neuer Artikel aus unserer Serie, in der wir lernen, wie man Handelssysteme auf der Grundlage einfacher Strategien unter Verwendung der am häufigsten verwendeten technischen Indikatoren entwickelt. Diesmal geht es um den Indikator Commodity Channel Index (CCI). Wie immer werde ich versuchen, die Grundlagen des Themas zu erklären, um Ihnen zu helfen, die Idee und die Verwendung zu verstehen. Letztendlich können Sie auf diese Weise Erkenntnisse und neue Ideen gewinnen, die Sie bei Ihrem Handel nutzen können.
In diesem Artikel werden wir ein Handelssystem für den CCI entwerfen. Folgende Themen werden behandelt:
Wir werden mit detaillierten Informationen darüber beginnen, was der Commodity Channel Index (CCI) ist, was er misst und wie wir ihn berechnen können. Wenn wir die Grundlagen und die Wurzeln dessen, was wir tun, verstehen, werden wir in der Lage sein, die Tools effizienter zu nutzen und mehr Ideen und Erkenntnisse darüber zu finden. Genau das werden wir im Abschnitt "CCI-Definition" besprechen. Anschließend werden wir eine einfache Strategie erarbeiten, die mit dem CCI bei verschiedenen Markttrends oder -bedingungen eingesetzt werden kann - dies werden wir im Teil "CCI-Strategie" lernen. Danach werden wir lernen, wie wir ein Handelssystem auf der Grundlage dieser Strategie entwerfen können, indem wir planen, was wir entwerfen müssen und was der Computer tun soll - Teil "CCI-Handelssystem-Blaupause". Dann werden wir lernen, wie wir das, was wir mit dem Entwurf des Handelssystems geplant haben, umsetzen können - Teil "CCI-Handelssystem".
Wir werden in diesem Artikel die Handelsplattform MetaTrader 5 und den MetaQuotes Language Editor verwenden. Sie können MetaTrader 5 über diesen Link herunterladen: https://www.metatrader5.com/de/download
Sobald Sie MetaTrader 5 heruntergeladen und installiert haben, sehen Sie das Terminal wie auf dem folgenden Bild:
Dann können Sie den MetaQuotes Language Editor öffnen, indem Sie F4 drücken, während das Handelsterminal geöffnet ist, oder indem Sie im Terminal das Menü Tools auswählen und dann auf MetaQuotes Language Editor klicken:
Oder drücken Sie auf die Schaltfläche IDE in der MetaTrader 5-Symbolleiste:
An dieser Stelle muss ich den Vorteil der Programmierung beim Handel erwähnen, da sie uns helfen kann, diszipliniert zu sein. Die Disziplin ist ein wichtiger Faktor für unseren Handelserfolg, denn Emotionen können dem Handel schaden: die richtige Entscheidung sollte nach einem erfolgreichen Handelsplan getroffen werden, aber es passiert den meisten Händlern, dass sie aufgrund von Angst, Gier oder anderen Emotionen nicht die richtige Aktion oder Entscheidung treffen können.
Die Programmierfunktionen ermöglichen es uns, unseren Handelsplan entsprechend unseren Bedingungen zu programmieren und ihn auszuführen. Das Programm wird das tun, was wir nach unseren Regeln brauchen, ohne Emotionen einzubeziehen, die unseren Handel beeinflussen können, was bedeutet, dass die Programmierung uns hilft, diszipliniert zu sein. Hier kommt MQL5 ins Spiel, da es uns hilft, unsere Handelsbedingungen und -pläne so zu programmieren, dass sie automatisch im Handelsterminal ausgeführt werden können. Diese Programme können von sehr einfach bis komplex sein, je nach unserem Handelsplan.
Haftungsausschluss: Der gesamte Inhalt dieses Artikels dient nur der Bildung und nicht anderen Zwecken. Sie sind also für alle Maßnahmen allein verantwortlich, die Sie auf der Grundlage des Inhalts dieses Artikels ergreifen, da der Inhalt dieses Artikels keine Garantie für irgendwelche Ergebnisse bietet.
Jetzt sind wir bereit, unseren Artikel zu beginnen, um einen neuen Block in unserer Lernreise zu bauen. Also, packen wir es an...
CCI-Definition
In diesem Teil werden wir den Commodity Channel Index (CCI) Indikator genauer kennenlernen: was er misst, wie er berechnet wird und wie man ihn verwendet.
Der von Donald Lambert entwickelte Commodity Channel Index (CCI) Indikator ist ein Momentum-Indikator, der den aktuellen Preis im Verhältnis zu einem Durchschnittspreis eines bestimmten Zeitraums misst. Als Lambert diesen Indikator schuf, war das ursprüngliche Ziel, zyklische Bewegungen bei Rohstoffen zu messen, aber er kann auch andere Finanzinstrumente messen. Der CCI kann verwendet werden, um die Stärke von Trends und Trendumkehrungen zu erkennen, was aufgrund seiner Eigenschaft als Momentum-Indikator ein normales Ergebnis ist.
Wenn der CCI hoch ist, bedeutet dies, dass die Preise weit über seinem Durchschnitt liegen, und umgekehrt, wenn der CCI niedrig ist, bedeutet dies, dass die Preise weit unter seinem Durchschnitt liegen.
Der CCI wird in den folgenden Schritten berechnet:
- Ermitteln des typischen Preises (TP):
TP = (Hoch + Tief + Schluss)/3
- Ermitteln Sie den einfachen gleitenden Durchschnitt des TP:
SMA von TP = Summe von TP/n
- Mittlere Abweichung ermitteln:
Mittlere Abweichung = Summe von Abs(TP-SMA)/n
- CCI ermitteln:
CCI = (TP-SMA von TP)/(0,015*Mittlere Abweichung)
Nehmen wir nun ein Beispiel für die Anwendung dieser Berechnung:
Angenommen, wir haben die folgenden Daten für ein Instrument für einen Zeitraum von 14 Tagen:
Tage | Hoch | Niedrig | Schlusskurs |
---|---|---|---|
1 | 100 | 90 | 110 |
2 | 130 | 100 | 120 |
3 | 140 | 110 | 130 |
4 | 130 | 100 | 120 |
5 | 120 | 95 | 110 |
6 | 140 | 120 | 130 |
7 | 160 | 130 | 150 |
8 | 170 | 150 | 160 |
9 | 155 | 130 | 140 |
10 | 140 | 120 | 130 |
11 | 160 | 140 | 150 |
12 | 180 | 160 | 170 |
13 | 190 | 170 | 190 |
14 | 200 | 180 | 210 |
Im Folgenden wird beschrieben, wie wir den CCI anhand dieser Daten berechnen können:
- Zunächst berechnen wir den typischen Preis (TP):
TP = (Hoch + Tief + Schluss)/3
Nach der Berechnung des typischen Preises ergibt sich also folgendes Bild:
- Dann müssen wir den einfachen gleitenden Durchschnitt (SMA) des berechneten TP berechnen:
SMA von TP = Summe von TP/n
Das Ergebnis sieht wie folgt aus:
- Anschließend berechnen wir die Differenz zwischen TP und SMA in absoluten Werten, um die mittlere Abweichung zu ermitteln:
Abs (TP-SMA)
Hier ist es:
- Nun müssen wir die Mittlere Abweichung berechnen:
Mittlere Abweichung = Summe von Abs(TP-SMA)/n
- Nun ist es an der Zeit, den CCI zu berechnen:
CCI = (TP-SMA von TP)/(0,015*Mittlere Abweichung)
CCI = (196.67-141.19)/(0.015*22.86)
CCI = 55.48/0.3429
CCI = 161.80
Heutzutage ist es nicht mehr nötig, Indikatoren manuell zu berechnen, da MetaTrader 5 gebrauchsfertige integrierte Indikatoren bietet. Sie können ihn sofort verwenden, indem Sie den CCI-Indikator in der Plattform auswählen, wie in der folgenden Abbildung gezeigt wird:
Nachdem Sie den CCI ausgewählt haben, wird das folgende Fenster angezeigt:
Das obige Fenster des Indikators zeigt seine Parameter an:
- 1: Festlegung der Periodenlänge des Indikators.
- 2: Einstellung des Preistyps, der für die Berechnung des Indikators verwendet wird; hier wählen wir den typischen Preis (Typical Price HLC/3).
- 3: Einstellung des Indikatorstils: CCI-Farbe, CCI-Linientyp und CCI-Liniendicke.
Nachdem Sie alle Parameter festgelegt haben, klicken Sie auf Ok, und der Indikator wird im Chart angezeigt:
Der CCI ist ein Oszillator, der um und zwischen 100 und -100 schwingt.
CCI-Strategie
In diesem Teil werden wir über zwei einfache Strategien sprechen, die mit dem CCI verwendet werden können. Eine der Strategien kann je nach Markttrend oder -richtung (Aufwärtstrend, Abwärtstrend und Seitwärtstrend) eingesetzt werden. Die andere ist ein einfaches Kreuzen des CCI-Werts der Linien bei Null, 100 oder -100. Bevor wir über diese Strategien sprechen, muss ich erwähnen, dass es viele Strategien gibt, die mit dem CCI verwendet werden können. Sie sollten jede Strategie selbst auf einem Demokonto testen, um zu sehen, ob sie für Ihren Handel nützlich ist oder nicht, bevor Sie sie auf einem echten Konto mit echtem Geld anwenden.
Die Strategien sind wie folgt.
Erste Strategie: Verwendung des CCI je nach Markttrend
- Während eines Aufwärtstrends:
Ein Aufwärtstrend ist eine Marktrichtung, in der die Preise höhere Tiefst- und Höchststände bilden, was bedeutet, dass die Käufer die Preise kontrollieren, während sie sich nach oben bewegen. In diesem Marktzustand können wir den CCI als Signalgeber verwenden, um ein Kaufsignal zu generieren, wenn die CCI-Linie die 100-Marke überschreitet. Also, CCI > 100. Dann können wir ein anderes effektives Instrument wie z. B. die Preisaktion nutzen, um Gewinne mitzunehmen.
CCI > 100 = Kauf
Ein Gewinnmitnahmesignal kann auch von einem anderen Instrument, das nützlicher sein kann, wie z. B. der Preisaktion, erzeugt werden, wenn es unter das vorherige Tief fällt.
- Während eines Abwärtstrends:
Der Abwärtstrend ist das Gegenteil des Aufwärtstrends: Die Kurse erreichen niedrigere Höchst- und Tiefststände, was bedeutet, dass die Verkäufer die Kontrolle haben und die Kurse nach unten gehen. In einem solchen Markt kann der CCI auch zur Generierung von Signalen verwendet werden: Ein Leerverkaufssignal erscheint, wenn die CCI-Linie unter das Niveau von -100 fällt. Die Kursbewegung kann zur Gewinnmitnahme genutzt werden.
CCI < -100 = Verkaufen
Das Gewinnmitnahmesignal kann von einem anderen Instrument übernommen werden, das nützlicher sein kann, wie z.B. die Preisbewegung bei einem Ausbruch über das vorherige Hoch.
- Bei Seitwärtsbewegungen:
Während einer Seitwärtsbewegung besteht ein Gleichgewicht zwischen Käufern und Verkäufern, sodass keine der beiden Parteien die Oberhand auf dem Markt gewinnt. Es handelt sich um jede Situation außer Auf- und Abwärtstrend.
Während einer Seitwärtsbewegung können wir den CCI verwenden, um Signale zu generieren. Wenn die CCI-Linie unter die -100-Marke fällt, ist dies ein Kaufsignal, und wenn die CCI-Linie über 100 steigt, ist dies ein Signal zur Gewinnmitnahme. Oder wenn die CCI-Linie über 100 steigt, ist dies ein Verkaufssignal und wenn die CCI-Linie unter -100 fällt, ist dies ein Signal zur Gewinnmitnahme.
CCI < -100 = Kaufen
CCI > 100 = Gewinnmitnahme
CCI > 100 = Verkaufen
CCI < -100 = Gewinnmitnahme
In diesem Artikel können wir den CCI auf eine andere Art und Weise nutzen, indem wir in den Markt einsteigen, wenn die Kreuzungslinie bei Null liegt, und Gewinne mitnehmen, wenn 100 bzw. -100 über bzw. unterschritten werden, je nach Art unserer Position (Kauf oder Verkauf).
- Für ein Kaufsignal:
Beobachten Sie den CCI-Wert, der sich auf die Null zubewegt. Wenn der CCI-Wert über die Nulllinie steigt, ist dies ein Kaufsignal und wir können Gewinne mitnehmen, wenn der CCI-Wert über 100 steigt.
CCI > 0 = Kaufen
CCI > 100 = Gewinnmitnahme
- Für Verkaufssignal:
Beobachten Sie den CCI-Wert, der sich auf die Null zubewegt. Wenn der CCI-Wert unter die Nulllinie fällt, ist dies ein Verkaufssignal, und wir können den Gewinn mitnehmen, wenn der CCI-Wert unter -100 fällt.
CCI < 0 = Verkaufen
CCI < -100 = Gewinnmitnahme
CCI Handelssystem Blaupause
Nun kommen wir zum interessantesten Teil in diesem Artikel, denn wir müssen die genannten Strategien programmieren, um Signale zu automatisieren, wenn wir den CCI manuell beobachten.
Wir müssen also diese Strategien programmieren und dem Computer mitteilen, was er tun soll, je nachdem, was wir genau brauchen. Wir werden Schritt für Schritt damit beginnen, einen Plan dafür zu entwerfen.
- Während eines Aufwärtstrends:
Wir brauchen ein Programm, das den CCI-Wert bei jedem Tick überprüft und je nach CCI-Wert etwas unternimmt.
Wenn der CCI-Wert über 100 liegt, wird gekauft, wenn nicht, wird nichts getan.
- Während eines Abwärtstrends:
Wir prüfen den CCI-Wert bei jedem Tick und führen eine Aktion entsprechend diesem Wert durch.
Wenn der CCI-Wert unter -100 liegt, geben wir ein Verkaufssignal, wenn nicht, unternehmen wir nichts.
- Bei Seitwärtsbewegungen:
Während einer Seitwärtsbewegung muss das Programm den CCI-Wert überprüfen und dann entsprechend handeln.
Wenn CCI Wert unter -100, erzeugen wir ein Kaufsignal und ein Take-Profit. Wenn der CCI nicht kleiner als -100 ist, prüfen wir, ob der CCI über -100 und unter 100 liegt und tun dann nichts (halten) und wenn nicht, prüfen, ob CCI über 100 liegt, geben ein Verkaufssignal und prüfen danach, ob der CCI unter -100 ist, um ein Signal zur Gewinnmitnahme geben und wenn nicht, prüfen wir, ob der CCI unter 100 und über -100 ist, um nichts zu tun (halten).
- Für ein Kaufsignal:
Wir überprüfen bei jeden Tick den CCI-Wert auf die Nulllinie. Wenn der CCI-Wert größer als Null wird, erzeugen wir ein Kaufsignal auf dem Chart, und wenn der CCI-Wert über 100 wird, zeigen wir ein Signal zur Gewinnmitnahme auf dem Chart.
- Für Verkaufssignal:
CCI-Handelssystem
Nun müssen wir die erwähnte Strategie als Code für den Computer schreiben, damit dieser das tut, was wir brauchen.
Zuerst müssen wir ein einfaches Programm programmieren, das die CCI-Werte im Chart anzeigt. Die Programmierung besteht aus den folgenden Schritten:
- Erstellen eines Arrays von Preisen.
- Sortieren des Preis-Arrays aus den aktuellen Daten.
- Definieren der CCI-Eigenschaften.
- Sortieren der Ergebnisse.
- Abrufen des Wertes der aktuellen Daten.
- CCI-Werte in Charts darstellen und diese Werte im Chart anzeigen.
Im Folgenden wird beschrieben, wie man die vorherigen Schritte kodiert, um ein Programm zu erstellen, mit dem der Computer CCI-Werte automatisch im Chart anzeigen kann:
//+------------------------------------------------------------------+ //| Simple CCI System.mq5 | //| Copyright 2022, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2022, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" //+------------------------------------------------------------------+ void OnTick() { //Creating an array of prices double ArrayOfPrices[]; //Sorting price array from current data ArraySetAsSeries(ArrayOfPrices,true); //CCI properties Definition int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE); //Storing results CopyBuffer(CCIDef,0,0,3,ArrayOfPrices); //Getting value of current data double CCIValue = (ArrayOfPrices[0]); //Charting CCI values Comment ("CCI Value = ",CCIValue); } //+------------------------------------------------------------------+
Danach können wir dieses Programm (Simple CCI System) im Navigator finden, es auswählen und in der Handelsplattform ausführen:
Das Programm (Simple CCI System) kann durch Doppelklick oder durch Ziehen und Ablegen auf dem Chart gestartet werden. Danach wird das folgende Fenster geöffnet:
Nachdem wir die Option "Algo Handel zulassen" aktiviert und auf ok gedrückt haben, wird das Programm (EA) Simple CCI System an den Chart angehängt und der CCI-Wert wird auf dem Chart angezeigt:
Jetzt werden wir lernen, wie man die beiden genannten Strategien programmiert:
- Erste Strategie: Verwendung des CCI je nach Markttrend:
- Während eines Aufwärtstrends:
CCI > 100 = Kauf
Wir werden die folgenden Schritte durchführen:
- Erstellen eines Arrays für Preise.
- Sortieren des Preis-Arrays aus den aktuellen Daten.
- Definieren der CCI-Eigenschaften.
- Sortieren der Ergebnisse.
- Abrufen des Wertes der aktuellen Daten.
- Setzen der Bedingungen für die CCI-Signale im Aufwärtstrend.
Diese Schritte sind wie folgt codiert:
//+------------------------------------------------------------------+ //| Uptrend CCI Strategy.mq5 | //| Copyright 2022, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2022, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" //+------------------------------------------------------------------+ void OnTick() { //Creating an array of prices double ArrayOfPrices[]; //Sorting price array from current data ArraySetAsSeries(ArrayOfPrices,true); //CCI properties Definition int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE); //Storing results CopyBuffer(CCIDef,0,0,3,ArrayOfPrices); //Getting value of current data double CCIValue = (ArrayOfPrices[0]); //CCI signals for uptrend if(CCIValue> 100) Comment ("UPTREND CCI - BUY SIGNAL "); } //+------------------------------------------------------------------+
Danach können wir dieses Programm Uptrend CCI Strategy im Navigator finden:
Öffnen Sie dieses Programm CCI Uptrend Strategy erneut durch Doppelklick oder durch Ziehen und Ablegen auf dem Chart. Das folgende Fenster wird geöffnet:
Nachdem Sie "Algo Trading zulassen" aktiviert und auf ok gedrückt haben, wird das Programm (EA) - Uptrend CCI Strategy - auf dem Chart gestartet:
Die Signale der Uptrend CCI Strategy werden entsprechend dieser Strategie angezeigt:
- Während eines Abwärtstrends:
CCI < -100 = Verkaufen
Wir werden die folgenden Schritte codieren:
- Erstellen eines Arrays für Preise.
- Sortieren des Preis-Arrays aus den aktuellen Daten.
- Definieren der CCI-Eigenschaften.
- Sortieren der Ergebnisse.
- Abrufen des Wertes der aktuellen Daten.
- Einstellen der CCI-Signale während eines Abwärtstrends.
Unten ist der Code des Programms, die in der Handelsplattform gestartet werden kann und ausführen, was wir brauchen automatisch:
//+------------------------------------------------------------------+ //| Downtrend CCI Strategy.mq5 | //| Copyright 2022, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2022, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" //+------------------------------------------------------------------+ void OnTick() { //Creating an array of prices double ArrayOfPrices[]; //Sorting price array from current data ArraySetAsSeries(ArrayOfPrices,true); //CCI properties Definition int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE); //Storing results CopyBuffer(CCIDef,0,0,3,ArrayOfPrices); //Getting value of current data double CCIValue = (ArrayOfPrices[0]); //CCI signals if(CCIValue< -100) Comment ("DOWNTREND CCI - SHORT SIGNAL "); } //+------------------------------------------------------------------+
Finden Sie dieses Programm als Downtrend CCI Strategy im Navigator:
Starten Sie dieses Programm Downtrend CCI Strategy durch Doppelklick oder per Drag and Drop auf den Chart. Es öffnet sich das folgende Fenster:
Aktivieren Sie "Algo Handel zulassen" und drücken Sie ok, das Programm (EA) - Downtrend CCI Strategy - wird auf dem Chart gestartet:
Die Signale des Downtrend CCI Strategy Programms werden entsprechend dieser Strategie genauso aussehen wie im folgenden Bild:
- Bei Seitwärtsbewegungen:
- Bei Kaufsignalen:
CCI < -100 = kaufen
CCI > 100 = Gewinnmitnahme
Schritte:
- Erstellen eines Arrays für Preise.
- Sortieren des Preis-Arrays aus den aktuellen Daten.
- Definieren der CCI-Eigenschaften.
- Sortieren der Ergebnisse.
- Abrufen des Wertes der aktuellen Daten.
- Setzen der Bedingung CCI-Kaufsignal bei Seitwärtsbewegungen.
Wir codieren diese Schritte, um ein Programm zu erstellen, das das tut, was wir brauchen:
//+------------------------------------------------------------------+ //| Sideways CCI Strategy - Buy.mq5 | //| Copyright 2022, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2022, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" //+------------------------------------------------------------------+ void OnTick() { //Creating an array of prices double ArrayOfPrices[]; //Sorting price array from current data ArraySetAsSeries(ArrayOfPrices,true); //CCI properties Definition int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE); //Storing results CopyBuffer(CCIDef,0,0,3,ArrayOfPrices); //Getting value of current data double CCIValue = (ArrayOfPrices[0]); //CCI signals if(CCIValue< -100) Comment ("SIDEWAYS CCI - BUY SIGNAL "); if(CCIValue> 100) Comment ("SIDEWAYS CCI - TAKE PROFIT"); } //+------------------------------------------------------------------+
Finden Sie dieses Programm Sideways CCI Strategy - Buy im Navigator:
Starten Sie es per Doppelklick oder per Drag & Drop. Es öffnet sich das folgende Fenster:
Aktivieren Sie "Algo Handel zulassen" und drücken Sie ok, das Programm (EA) - Sideways CCI Strategy - Buy - wird auf dem Chart gestartet:
Dann können wir Signale finden, die gemäß dieser Strategie Sideways CCI Strategy - Buy erscheinen:
Das Signal zur Gewinnmitnahme ist: CCI > 100 = Take Profit. Beispiel:
- Bei Verkaufssignalen:
CCI > 100 = Verkauf
CCI < -100 = Gewinnmitnahme
Wir codieren das durch die folgenden Schritte:
- Erstellen eines Arrays für Preise.
- Sortieren des Preis-Arrays aus den aktuellen Daten.
- Definieren der CCI-Eigenschaften.
- Sortieren der Ergebnisse.
- Abrufen des Wertes der aktuellen Daten.
- festlegen der Bedingungen des CCI für ein Verkaufssignal in einer Seitwärtsbewegung.
Im Folgenden die Schritte, das Programm Sideways CCI Strategy - Short zu erstellen:
//+------------------------------------------------------------------+ //| Sideways CCI Strategy - Short.mq5 | //| Copyright 2022, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2022, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" //+------------------------------------------------------------------+ void OnTick() { //Creating an array of prices double ArrayOfPrices[]; //Sorting price array from current data ArraySetAsSeries(ArrayOfPrices,true); //CCI properties Definition int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE); //Storing results CopyBuffer(CCIDef,0,0,3,ArrayOfPrices); //Getting value of current data double CCIValue = (ArrayOfPrices[0]); //CCI signals if(CCIValue> 100) Comment ("SIDEWAYS CCI - SHORT SIGNAL "); if(CCIValue< -100) Comment ("SIDEWAYS CCI - TAKE PROFIT"); } //+------------------------------------------------------------------+
Danach können wir das Programm Sideways CCI Strategy - Short im Navigator finden:
Nach dem Aktivieren von "Algo Handel zulassen" und dem Drücken von ok, wird das Programm (EA) - Sideways CCI Strategie - Short - auf dem Chart gestartet und es sieht wie folgt aus:
Die Signale werden entsprechend dieser Strategie Sideways CCI Strategy - Short erscheinen:
Wir können ein Signal zur Gewinnmitnahme erhalten, wenn CCI < -100 = Gewinnmitnahme:
- Zweite Strategie: Signale durch das Kreuzen der Nulllinie:
- Für ein Kaufsignal:
CCI > 0 = Kaufen
CCI > 100 = Gewinnmitnahme
Wir codieren das durch die folgenden Schritte:
- Erstellen eines Arrays für Preise.
- Sortieren des Preis-Arrays aus den aktuellen Daten.
- Definieren der CCI-Eigenschaften.
- Sortieren der Ergebnisse.
- Abrufen des Wertes der aktuellen Daten.
- Die Bedingung für den CCI-Wert und das Kreuzen der Null.
Schritte zur Erstellung des Programms Zero crossover CCI Strategy - Buy:
//+------------------------------------------------------------------+ //| Zero crossover CCI Strategy - Buy.mq5 | //| Copyright 2022, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2022, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" //+------------------------------------------------------------------+ void OnTick() { //Creating an array of prices double ArrayOfPrices[]; //Sorting price array from current data ArraySetAsSeries(ArrayOfPrices,true); //CCI properties Definition int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE); //Storing results CopyBuffer(CCIDef,0,0,3,ArrayOfPrices); //Getting value of current data double CCIValue = (ArrayOfPrices[0]); //CCI signals if(CCIValue > 0) Comment ("Zero crossover CCI - BUY SIGNAL "); if(CCIValue > 100) Comment ("Zero crossover CCI - TAKE PROFIT"); } //+------------------------------------------------------------------+
Finden Sie dieses Programm Zero crossover CCI Strategy - Buy im Navigator:
Nach dem Aktivieren von "Algo Handel zulassen" und dem Drücken von ok, wird das Programm (EA) - Zero crossover CCI Strategie - Buy - auf dem Chart gestartet:
Die Signale werden gemäß dieser Strategie Zero crossover CCI Strategy - Buyen erscheinen:
Wir können Gewinn mitnehmen, wenn CCI > 100 = Gewinnmitnahme. Das folgende Bild ist ein Beispiel dafür:
- Für Verkaufssignal:
CCI < 0 = Kaufen
CCI < -100 = Gewinnmitnahme
Wir codieren das durch die folgenden Schritte:
- Erstellen eines Arrays für Preise.
- Sortieren des Preis-Arrays aus den aktuellen Daten.
- Definieren der CCI-Eigenschaften.
- Sortieren der Ergebnisse.
- Abrufen des Wertes der aktuellen Daten.
- Die Bedingung für den CCI-Wert und das Kreuzen der Null.
Die Programmierung des Programms Zero crossover CCI Strategy - Short:
//+------------------------------------------------------------------+ //| Zero crossover CCI Strategy - Short.mq5 | //| Copyright 2022, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2022, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" //+------------------------------------------------------------------+ void OnTick() { //Creating an array of prices double ArrayOfPrices[]; //Sorting price array from current data ArraySetAsSeries(ArrayOfPrices,true); //CCI properties Definition int CCIDef = iCCI(_Symbol,_Period,14,PRICE_CLOSE); //Storing results CopyBuffer(CCIDef,0,0,3,ArrayOfPrices); //Getting value of current data double CCIValue = (ArrayOfPrices[0]); //CCI signals if(CCIValue < 0) Comment ("Zero crossover CCI - SHORT SIGNAL "); if(CCIValue < -100) Comment ("Zero crossover CCI - TAKE PROFIT"); } //+------------------------------------------------------------------+
Danach finden Sie dieses Programm Zero Crossover CCI Strategy - Short im Navigator:
Nach dem Aktivieren von "Algo Handel zulassen" und dem Drücken von ok, wird das Programm (EA)- Zero crossover CCI Strategy - Short - auf dem Chart gestartet:
Die Signale erscheinen entsprechend dieser Strategie - Zero crossover CCI Strategy - Short:
Wir können den Gewinn mitnehmen, wenn CCI < -100 = Gewinnmitnahme. Das folgende Bild ist ein Beispiel dafür:
Schlussfolgerung
Der Commodities Channel Index Indikator - CCI - ist ein weiteres Werkzeug, das zu unseren Gunsten verwendet werden kann, um vorteilhaft für unseren Handel zu sein und bessere Ergebnisse zu erhalten, nachdem wir jede Strategie des CCI getestet und optimiert haben, falls sie nach dem Testen profitabel ist. Sie können diesen Artikel als eine Einführung in ein neues Werkzeug betrachten, das Sie für Ihren Handel nutzen können, wenn es zu Ihrem Handelsplan und -stil passt.
In diesem Artikel haben wir erfahren, was der CCI-Indikator ist, was er bedeutet, was er misst und wie man ihn berechnen kann, und wir haben ein Beispiel dafür gesehen, um unser Wissen und unser Bewusstsein für dieses Instrument zu vertiefen, was ein Grund sein kann, unsere Augen für weitere Einsichten und neue Ideen zu öffnen.
Dann lernten wir einfache Strategien kennen, die der CCI unter verschiedenen Marktbedingungen (Aufwärtstrend, Abwärtstrend und Seitwärtsbewegung) anwenden kann, sowie die Zero-Crossover-Strategie. Wie bereits erwähnt, gibt es viele Strategien, die der CCI anwenden kann, und Sie können mehr darüber erfahren, welche von ihnen für Ihren Handel nützlich sein können, aber ich glaube, wenn Sie die Grundlagen einer Sache kennen, werden Sie sie effektiver nutzen.
Dann wussten wir, wie man eine Blaupause für diese Strategie entwirft, die hilfreich sein kann, um unser Programm zur Entwicklung eines Handelssystems mit CCI zu schreiben. Dann wussten wir, wie man diese Strategie mit MQL5 codiert und wie man dieses Handelssystem mit unserer Meta Trader 5 Handelsplattform verbindet und ausführt, um automatisch Signale zu generieren, und dann wussten wir, wie Signale auf unseren Charts generiert werden können.
Was ich jetzt bestätigen muss, ist, dass Sie jede neue Strategie testen müssen, bevor Sie sie live auf Ihrem echten Konto verwenden. Ich hoffe, dass dieser Artikel für Sie und Ihr Trading nützlich ist, indem er Informationen enthält oder Ihnen die Augen für neue Ideen oder Erkenntnisse öffnet, die Sie für Ihr Trading nutzen können.
Übersetzt aus dem Englischen von MetaQuotes Ltd.
Originalartikel: https://www.mql5.com/en/articles/10592





- 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.
Hallo Mohamed...
Schön, dich hier wieder zu treffen. Ich habe versucht, Ihre CCI-Signal. Ich habe den Wert, der von Ihrem CCI_simple_system generiert wird, mit dem bulit-in CCI verglichen, wie Sie auf dem beigefügten Bild sehen können.
Könnten Sie bitte erklären, warum die Werte unterschiedlich sind? Ich habe gesehen, dass die verwendete Periode dieselbe ist, nämlich 14.
Vielen Dank für Ihre freundliche Aufmerksamkeit und Unterstützung.
Vielen Dank,
Toto S
Könnten Sie bitte erklären, warum die Werte unterschiedlich sind? Ich habe gesehen, dass die verwendete Periode dieselbe ist, nämlich 14.
Vielen Dank für Ihre freundliche Aufmerksamkeit und Unterstützung.
Vielen Dank,
Toto S
Hallo Toto,
Danke für deinen Kommentar und schön, dich wiederzusehen.
Zunächst einmal schätze ich es, dass Sie versuchen, alles anzuwenden und zu testen. Die Antwort auf Ihre Frage ist, dass ich den Code nur unter Verwendung von PRICE_CLOSE geschrieben habe. Dies ist eine der Optionen des Standard-CCI in Metatrader 5, und wenn Sie die Parameter des Standard-CCI so ändern, dass er auf Close angewendet wird, werden Sie feststellen, dass er den gleichen Wert hat. Wenn Sie lieber Typical für diesen Code verwenden möchten, können Sie ihn in der Codezeile von CCIDef auf PRICE_TYPICAL aktualisieren.
Vielen Dank!
Mohamed
Hallo Toto,
Danke für deinen Kommentar und schön, dich wiederzusehen.
Zunächst einmal schätze ich es, dass Sie versuchen, alles anzuwenden und zu testen. Über Ihre Frage, die Antwort ist, dass ich schrieb den Code mit PRICE_CLOSE nur und das ist eine der Optionen der Standard-CCI auf Metatrader 5 und wenn Sie Parameter der Standard-CCI geändert werden, um zu schließen, werden Sie feststellen, dass es den gleichen Wert sein wird. Wenn Sie lieber Typical für diesen Code verwenden möchten, können Sie ihn in der Codezeile von CCIDef auf PRICE_TYPICAL aktualisieren.
Vielen Dank!
Mohamed
Hallo...
Vielen Dank für Ihre Erklärung, bereits korrigiert und funktioniert gut. die Frage ist, welcher Preis besser zu verwenden? typisch oder schließen?
Ich habe festgestellt, dass es besser ist, eine zusätzliche Referenz zu verwenden, um die Eröffnungsposition zu bestimmen. In diesem Fall wird RSI-Band verwendet, ob auf oberen Band für den Verkauf und unteren Band für den Kauf.
Es ist nur zu erhöhen, um die Wahrscheinlichkeit, damit natürlich erfolgreich zu sein, unser Vertrauen zu erhöhen. In meiner Übung hat sich gezeigt, dass ein Indikator nicht ausreicht, um eine Trendumkehr vorherzusehen.
Haben Sie einen Vorschlag in dieser Angelegenheit? lassen Sie es mich bitte wissen. Insbesondere den Hinweis auf die Definition von Aufwärtstrend, Seitwärtstrend und Abwärtstrend.
Vielen Dank,
Toto S
Hallo...
Vielen Dank für Ihre Erklärung, bereits korrigiert und arbeitete gut. die Frage ist, welcher Preis besser zu verwenden? typische oder schließen?
Ich fand es hatte bessere zusätzliche Referenz, um zu entscheiden, Eröffnung Position. In diesem Fall wird RSI-Band verwendet, ob auf oberen Band für den Verkauf und unteren Band für den Kauf.
Es ist nur zu erhöhen, um die Wahrscheinlichkeit, damit natürlich erfolgreich zu sein, unser Vertrauen zu erhöhen. In meiner Übung hat sich gezeigt, dass ein Indikator nicht ausreicht, um eine Trendumkehr vorherzusehen.
Haben Sie einen Vorschlag in dieser Angelegenheit? lassen Sie es mich bitte wissen. Insbesondere den Hinweis auf die Definition von Aufwärtstrend, Seitwärtstrend und Abwärtstrend.
Vielen Dank,
Toto S
Zur Veranschaulichung der Trendbefragung und des zusätzlichen Indikators verweise ich auf die beigefügte Datei.
Ich danke Ihnen.