Wichtige Arten von cBots
cBots sind vielseitige Tools, die je nach Code und Logik verschiedene Rollen und Funktionen erfüllen können, die vom vollautomatischen Handel bis zur Unterstützung bei der Umsetzung manueller Handelsstrategien reichen. In diesem Artikel und dem dazugehörigen Video definieren wir die wichtigsten Arten von cBots, skizzieren ihre wesentlichen Unterschiede und listen einige Best Practices für die Erstellung und Verwendung von cBots verschiedener Arten auf.
Grob gesagt gibt es vier Hauptarten von cBots.
Hinweis
Die nachstehenden Kategorien unterscheiden sich ausschließlich auf der Grundlage von cBot-Verhaltensweisen. Im eigentlichen cBot-Code sind keine Kategorien angegeben. Darüber hinaus können einige Entwickler auch benutzerdefinierte Klassifizierungen von cBots erstellen.
- Automatisierte Handelsstrategien – wie der Name schon sagt, führen cBots dieses Typs autonom Handelsstrategien aus. Zum Beispiel übermittelt ein Three black crows & three white soldiers cBot eine neue Kauforder, nachdem drei aufeinanderfolgende grüne Kerzen aufgetreten sind, und eine neue Verkaufsorder, wenn drei aufeinanderfolgende rote Kerzen auftreten.
- Skripte – cBots, die zu diesem Typ gehören, führen beim Start eine Aktion aus und stoppen nach Abschluss der Ausführung. Zum Beispiel kann ein Skript-cBot einen Stop-Loss für alle aktuell offenen Positionen festlegen, unabhängig von deren Richtung, Volumen oder Instrument.
- Handelsassistenten – sind darauf ausgelegt, eine Art hilfreiche Aktion auszuführen, die eine manuelle oder automatische Handelsstrategie ergänzt. Zum Beispiel kann ein cBot dieses Typs Ihre Trailing-Stop-Losses mithilfe benutzerdefinierter Regeln verwalten, die sich von der integrierten Trailing-Stop-Loss-Funktionalität von cTrader unterscheiden.
- Handelspanels – cBots dieses Typs handeln nicht autonom; stattdessen erstellen sie benutzerdefinierte Steuerelemente, die für verschiedene Zwecke verwendet werden können. Zum Beispiel kann ein cBot eine WebView eines Forex-Nachrichtenaggregators starten und gleichzeitig benutzerdefinierte Kauf- und Verkaufsbuttons sowie einen Symbolselektor in die WebView integrieren, sodass der Benutzer handeln kann, ohne die Nachrichtenseite zu verlassen.
In den folgenden Unterabschnitten besprechen wir jeden der oben genannten Typen im Detail, skizzieren ihre Vorteile und Einschränkungen und schlagen verschiedene Anwendungsfälle vor.
Strategien für algorithmischen Handel
cBots, die zum Typ der automatisierten Handelsstrategie gehören, sind komplex, aber leistungsstark. Sie müssen eine Handelsstrategie einschließlich aller ihrer Aspekte wie Risikomanagement, Positionsgrößenbestimmung und technische Analyse korrekt implementieren.
Sie können eine einfache automatisierte Handelsstrategie in weniger als zwei Minuten erstellen, indem Sie einfach die Standard-Vorlage für neue cBots durch den folgenden Code ersetzen.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | |
1 2 3 4 5 6 7 8 9 10 11 | |
Der cBot eröffnet bei jedem Balken eine neue Position. Eine Long-Position wird eröffnet, wenn der Kurs im vorherigen Balken im Vergleich zum Balken davor gestiegen ist. Umgekehrt wird eine Short-Position eröffnet, wenn der Kurs gefallen ist.
Backtesting und Optimierung
Automatisierte Handelsstrategien umfassen in der Regel viele bewegliche Teile und Parameter. Daher müssen solche cBots oft umfassend getestet und optimiert werden, bevor sie auf Live-Konten gestartet werden. Glücklicherweise bietet cTrader integrierte Tools, die Backtesting und Optimierung für Sie übernehmen können.
cTrader-Befehlszeilentool (CLI)
Automatisierte Handelsstrategien müssen in der Regel über längere Zeiträume laufen, damit sie auf verschiedene Signale der technischen Analyse reagieren können. Um in diesen Fällen RAM und CPU-Verbrauch zu sparen, können Sie cBots über cTrader CLI starten, ohne jemals cTrader Windows zu öffnen (beachten Sie, dass es möglich ist, jeden cBot über cTrader CLI zu starten, nicht nur cBots dieses Typs).
Skripte
Skripte werden in der Regel benötigt, um eine Art von Aktion auszuführen, die manuell schwierig oder zeitaufwändig wäre. Diese Aktionen werden in der Regel beim cBot-Start ausgeführt, sodass Sie ein Skript starten, die Ergebnisse seiner Arbeit beobachten und dann seine Instanz bei Erfolg stoppen können, um RAM und CPU-Verbrauch zu sparen.
Zum Beispiel kann ein Skript alle Positionen schließen, deren Bruttogewinn 50 Einheiten der Einzahlungswährung des Händlerkontos übersteigt. Tatsächlich würde das Skript als universeller Take-Profit für alle offenen Positionen fungieren, den Sie jederzeit auslösen können. So würde der Code für dieses Skript aussehen.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | |
1 2 3 4 5 6 7 8 9 10 11 | |
Nach dem Start des cBots sollten wir sehen, wie mehrere profitable Positionen schrittweise geschlossen werden.
Skripte stoppen
Da Skripte nur eine bestimmte Aktion einmal ausführen müssen, können Sie cTrader anweisen, ein Skript sofort zu schließen, nachdem die Ausführung erfolgreich abgeschlossen wurde. Wie im obigen Beispiel gezeigt, können Sie dies tun, indem Sie die Methode Stop() aufrufen.
Handelsassistenten
Der Zweck von Handelsassistenten besteht darin, regelmäßig hilfreiche Aktionen auszuführen. Obwohl sie dadurch Skripten ähneln, führen Skripte eine Aktion nur beim Instanzstart aus. Im Gegensatz dazu sind Handelsassistenten darauf ausgelegt, kontinuierlich auf Marktbedingungen oder andere Faktoren zu reagieren und Operationen als Reaktion auf bestimmte Muster auszuführen.
Betrachten Sie zum Beispiel einen cBot, der Ihre Positionen automatisch absichert, sobald Sie sie eröffnen. Der Code für diesen cBot könnte wie folgt aussehen.
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 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | |
Beim Eröffnen einer Position versucht der cBot sofort, eine weitere in die entgegengesetzte Richtung zu eröffnen; das Volumen dieser neuen Position beträgt genau die Hälfte des Volumens der ursprünglichen Position.
Beachten Sie, dass wir das Feld hasHedgedPosition verwenden, um eine Endlosschleife zu vermeiden, sodass der cBot eine neue Position nur einmal absichert.
Callback-Funktionen
Handelsassistenten verwenden häufig Callback-Funktionen, die als Handler für verschiedene Events fungieren. Um herauszufinden, welche Events Sie für eine bestimmte Klasse handhaben können, öffnen Sie die integrierte API-Dokumentation, suchen Sie nach der erforderlichen Klasse und navigieren Sie zum Abschnitt Events im Inhaltsverzeichnis.
Handelspanels
Handelspanels zeigen benutzerdefinierte Steuerelemente an, die verschiedene Aktionen auslösen, wenn mit ihnen interagiert wird. Sie bieten in der Regel Verbesserungen der Lebensqualität für die Standard-cTrader-Benutzeroberfläche. Zum Beispiel kann ein cBot einen Kaufen-Button anzeigen, der beim Klicken eine Markt-Order für ein vordefiniertes Volumen in cTrader ausführt.
Um einen solchen cBot zu erstellen, verwenden Sie einfach den folgenden Code.
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 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
Beim Klicken auf den Kaufen-Button wird eine neue Markt-Order für 10.000 Einheiten übermittelt. Die praktische Platzierung des Buttons ermöglicht es, schnell auf neue Marktchancen zu reagieren.
Kombination von Handelspanels mit anderen Arten von cBots
Handelspanels bieten benutzerdefinierte UI-Steuerelemente, mit denen Sie verschiedene Operationen ausführen können. Sie können sie zusammen mit anderen Arten von cBots verwenden. Zum Beispiel könnte ein Handelspanel einen benutzerdefinierten Absichern-Button enthalten, der beim Klicken alle aktuell offenen Positionen absichert, ähnlich dem obigen Beispiel für Handelsassistenten.
Zusammenfassung
Alle vier Kategorien von cBots haben gültige Verwendungszwecke und können je nach Ihren Präferenzen kombiniert werden. Zum Beispiel können Sie gleichzeitig eine automatisierte Handelsstrategie und einen Handelsassistenten starten, um die bestmöglichen Ergebnisse zu erzielen. Sie können mit cBots verschiedener Typen experimentieren, um sicherzustellen, dass Ihr bevorzugter Handelsansatz vollständig und fehlerfrei ausgeführt wird.
