Programmatische Verwaltung von technischen Indikatoren
Händler verlassen sich oft auf eine Kombination aus manuellem Handel und automatisierten Handelsassistenten, insbesondere benutzerdefinierte Indikatoren. In vielen Fällen sind diese Assistenten jedoch völlig unabhängig voneinander und können nicht auf die Aktionen und Ausgaben des jeweils anderen reagieren.
Glücklicherweise bietet cTrader eine praktische Möglichkeit, Chart-Indikatoren programmatisch zu verwalten. Mit dieser Funktion können Sie dynamische Assistenten erstellen, die Daten von Indikatoren lesen, die Benutzer einem Chart hinzufügen.
Sie können es auch so einrichten, dass ein Algorithmus Indikatoreinstellungen basierend auf bestimmten Bedingungen hinzufügt, entfernt oder ändert, sodass Sie Ihren Benutzern mehr Mehrwert bieten und neue Wege zur Monetarisierung eröffnen können.
Dieser API-Leitfaden erklärt, wie Sie Chart-Indikatoren unter verschiedenen Bedingungen programmatisch verwalten können.
Chart-Indikatorverwaltung in einer Minute!
- Durch die programmatische Verwaltung von Chart-Indikatoren können Sie Indikatoreinstellungen (z. B. Linienstärke) abhängig von bestimmten Bedingungen anpassen.
- cBots können auf alle Indikatoren zugreifen, die Sie manuell an einen Chart anhängen, deren Daten lesen und entsprechend handeln.
- Ihre Algorithmen können Indikatoren automatisch zu Charts hinzufügen oder von diesen entfernen, wodurch Sie Zeit sparen.
- Die programmatische Verwaltung von Chart-Indikatoren ist für alle benutzerdefinierten Indikatoren möglich.
Indikatoren programmatisch hinzufügen und entfernen
Sie können jeden Indikator, auf den Sie Zugriff haben, einfach hinzufügen, indem Sie die folgende Methode aufrufen.
1 | |
Die Methode nimmt den Indikatornamen als ersten Parameter und dann alle Parameter dieses Indikators in der Reihenfolge (z. B. "Simple Moving Average", "High", 25).
Hinweis
Die Methode akzeptiert den Namen jedes Indikators, auf den Sie Zugriff haben.
Hinweis
Alle DataSeries-Parameter müssen als Zeichenfolgen in den Methodenargumenten angegeben werden.
Hinweis
Wenn einige Parameter nicht angegeben sind, verwendet die Methode Standardwerte. Wenn einige Parameter ungültig sind, ruft die Methode den OnException-Handler für Ihren Algorithmus auf.
Nachdem die Methode ausgeführt wurde, wird der angeforderte Indikator sofort zu einem Chart hinzugefügt, und Sie können ihn mithilfe des von der Methode zurückgegebenen Werts verwalten. Sie können ihn beispielsweise entfernen, indem Sie die Methode ChartIndicators.Remove() aufrufen.
1 2 3 | |
Hier ist ein einfacher cBot, der beide Methoden verwendet, um einen benutzerdefinierten Bollinger-Bands-Indikator zu einem Chart hinzuzufügen, wenn der Average True Range (ATR)-Wert einen bestimmten Schwellenwert überschreitet. Wenn der ATR-Wert unter den Schwellenwert fällt, wird der Indikator entfernt.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | |
Einstellungen von Indikatoren ändern
Die Schnittstelle ChartIndicator bietet direkten Zugriff auf alle wichtigen Indikatoreinstellungen über die folgenden Eigenschaften:
ChartIndicator.Type, das den Typ eines Indikators abruft.ChartIndicator.Parameters, das eine Liste aller Indikatorparameter abruft.Lines, das eine Liste aller von einem Indikator ausgegebenen Linien abruft.
Da Indikatoren visuelle Hilfsmittel sind, können Sie sie verbessern, indem Sie ihre Einstellungen abhängig von Marktbedingungen ändern. Der folgende Indikator versucht genau das zu tun.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | |
Abhängig davon, ob der aktuelle Kurs eines Symbols über oder unter dem Exponential Moving Average liegt, ändert die Indikatorlinie Farbe und Stärke. In einigen Fällen (z. B. bei schneller Reaktion auf sich ändernde Trends) kann zusätzliche visuelle Hilfe den entscheidenden Unterschied ausmachen.
Zusätzliche Ereignisse behandeln
Die Schnittstelle ChartsIndicators stellt auch mehrere Ereignisse bereit, die Sie behandeln können, um Chart-Indikatoren programmatisch zu verwalten:
IndicatorAdded, das jedes Mal ausgelöst wird, wenn ein neuer Indikator zu einem Chart hinzugefügt wird.IndicatorRemoved, das jedes Mal ausgelöst wird, wenn ein Indikator aus einem Chart entfernt wird.IndicatorModified, das jedes Mal ausgelöst wird, wenn die Einstellungen eines Indikators angepasst werden.
Diese Ereignisse sind wertvoll für Entwickler von Plugins. Über Plugins können Sie neue Elemente der cTrader-Benutzeroberfläche erstellen, die ihren Inhalt ändern, je nachdem, ob ein Benutzer Indikatoren hinzufügt, entfernt oder ändert.
Indikatorverwaltung in verschiedenen Modi
So funktioniert die Indikatorverwaltung in verschiedenen cTrader-Modi und -Tools.
| Modus/Tool | Wie es funktioniert |
|---|---|
| Nicht-visuelles Backtesting | Alle über ChartIndicators hinzugefügten Indikatoren werden auf dem Chart angezeigt, wenn das Backtesting abgeschlossen ist. |
| Visuelles Backtesting und Market Replay | Alles funktioniert in Echtzeit wie vorgesehen. |
| Optimierung | Alle Vorgänge funktionieren, aber es werden keine Änderungen am Chart vorgenommen, wenn das Backtesting abgeschlossen ist. |
| cTrader CLI | Alle Vorgänge funktionieren wie vorgesehen, aber es werden keine Änderungen an Charts vorgenommen. |
Die programmgesteuerte Verwaltung von Chart-Indikatoren ist ideal für jeden Entwickler, der Algos anbieten möchte, die die Arbeit mit Indikatoren verbessern oder vereinfachen. Durch die Nutzung dieser Funktion können Sie Ihren Benutzern hochwertige und wertvolle Produkte liefern.
