Aktionen
<< Click to Display Table of Contents >> Aktionen |
Das Aktionsfenster ermöglicht es Ihnen, Aktionen auszuwählen, die für die Bedingungen Ihres Skripts ausgeführt werden sollen, z.B. die Ausführung einer Order oder die Visualisierung von Ergebnissen über Zeichenobjekte.
Das Fenster Aktionen verstehen
Strategie-AktionsfensterDasAktionsfenster ermöglicht es Ihnen, Aktionen zur Ausführung auszuwählen. Aktionen werden ausgeführt, wenn eine Strategiebedingung wahr ist. Das Aktionsfenster kann über den Bildschirm Bedingungen und Aktionsbuilder aufgerufen werden.
Innerhalb einerNinjaScript Strategie können Sie verschiedene Aktionen aufrufen, verschiedene Ordertypen für den Ein- und Ausstieg aus Marktpositionen einreichen und Zugriff auf verschiedene Zeichnungsmethoden haben, wie in den folgenden Bildern gezeigt.
|
Wie man eine Marktposition erreicht
Eingehen einer MarktpositionÜber die verschiedenen Order-Management-Funktionen können Sie eine Position über Markt, Limit, Market-if-touched, Stop-Limit und Stop-Market-Orders eingeben.
Folgendes ist ein Beispiel und stellt eine von vielen möglichen Kombinationen dar.
1. Erweitern Sie die Kategorie Auftragsverwaltungund wählen Sie eine Long-Position mit einer Limit-Order eingeben 2. Sie können optional die Anzahl der Kontrakte / Aktien für den Auftrag festlegen oder den Standardmengenwert belassen, der es Ihnen ermöglicht, die Menge beim Starten einer Strategie einzustellen 3. Setzen Sie die *Signalnamenseigenschaft auf einen beliebigen benutzerdefinierten Wert, um den Eintrag zu identifizieren (Sie können diesen Namen auch leer lassen) - hier haben wir LongEntry verwendet 4. Wir können den Limitpreis dynamisch festlegen, indem wir ihn auf den Wert eines anderen Artikels setzen und die Schaltfläche "Set" drücken, um das Fenster Wert zu öffnen
*Signalnamen sind insofern wichtig, als dass sie als eindeutige Identifikatoren verwendet werden, wenn Sie mehr als einen eindeutigen Eintrag in einer Strategie haben. Indem Sie für jeden Einstieg in eine Strategie eindeutige Namen für das Einstiegssignal angeben, können Sie dann über die Methoden der Ausstiegsposition feststellen, welche Position geschlossen werden soll. Signalnamen werden auch verwendet, um Ausführungen in einem Chart visuell zu identifizieren.
5. Erweitern Sie die PreisKategorie und wählen Sie Bid aus 6. Setzen Sie denOffsettypaufTicksund geben einen Wert von "-1" für dasOffset(siehe "Wie man mit Offsetwerten arbeitet" Sektion derBedinungen-BuilderSeite des Benutzerhandbuchs für weitere Informationen) ein
Sobald die OK-Taste gedrückt wird, wird eine Aktion erstellt, die sich wie folgt auswirken würde:
"Geben Sie eine Kauflimit-Order zu einem Preis ein, der 1 Tick unter dem aktuellen Bid-Kurs liegt, um eine Long-Position einzugehen" |
Wie man eine Marktposition abbaut
Verlassen einer MarktpositionMit den verschiedenen Funktionen der Auftragsverwaltung können Sie eine Position über Markt-, Limit-, Stopp-, Markt- und Stopp-Limit-Orders auflösen.
Folgendes ist ein Beispiel und stellt eine von vielen möglichen Kombinationen dar.
1. Erweitern Sie die Kategorie Auftragsverwaltung und wählenSie Exit Long-Position (Exits über Marktorder) 2. Setzen Sie die Eigenschaft des Einstiegssignal auf ein benanntes Einstiegssignal innerhalb der Strategie (gebunden an unser vorheriges Beispiel wird LongEntry verwendet). Wenn ein Wert bereitgestellt wird, wird nur die Menge verlassen, die der durch das benannte Signal erzeugten Position zugeordnet ist. Wenn Sie dieses Feld leer lassen, wird die gesamte Nettoposition verlassen. 3. Setzen Sie die Eigenschaft Signalname auf einen beliebigen benutzerdefinierten Wert, um den Eintrag zu identifizieren (wir verwenden hier LongExit, aber Sie können diesen Namen auch leer lassen)
Sobald die OK-Taste gedrückt wird, wird eine Aktion erstellt, die sich wie folgt auswirken würde:
"Geben Sie eine Verkaufsmarktorder ein, um das Einstiegssignal "Long Entry" zu schließen." |
Wie man auf einem Chart zeichnet
Zeichnen auf einem ChartMit den verschiedenenZeichenmethodenkönnen Sie Linien, Text, Quadrate und mehr auf einem Chart zeichnen. Detaillierte Informationen zu den unterstützten Zeichenmethoden finden Sie im Abschnitt NinjaScript Sprachreferenz in diesem Hilfeleitfaden.
Folgendes ist ein Beispiel und stellt eine von vielen möglichen Kombinationen dar.
1. Erweitern Sie die Zeichenkategorie und wählen Sie Diamant aus 2. Setzen Sie den Parameter Bars ago auf "0", um den Diamanten auf die aktuelle Position der Bar x zu zeichnen 3. Setzt den FarbParameter auf eine beliebige Farbe 4. Setzen Sie den Tag Parameter auf einen benutzerdefinierten Namen, der dieses Zeichenobjekt identifiziert. Die Bereitstellung eines Tags ist von Wert, wenn Sie mehr als ein Objekt desselben Zeichnungstyps (in diesem Fall Diamant) auf derselben Balken zeichnen möchten. Standardmäßig setzt der Builder dies auf den Skriptnamen plus den Zeichenobjekttyp, durch Drücken der Schaltfläche "Set" wird das String Builder-Fenster angezeigt, mit dem Sie es weiter anpassen können. 5. Setzen Sie den ParameterY auf das " Hoch " des aktuellen Balkens plus einen Tick, indem Sie die Schaltfläche " Set " drücken (nicht unten zu sehen, aber das gleiche Konzept wie in Schritt 4), um das Fenster Wert anzuzeigen
Sobald die OK-Taste gedrückt wird, wird eine Aktion erstellt, die sich wie folgt auswirken würde:
"Zeichne einen roten Diamanten über das Hoch des aktuellen Balkens plus einen Tick"
Wenn Sie die verwendeten Zeichenobjekt-Tags weiter anpassen möchten, dann bietet der String Builder folgendes an:
1. Wählen Sie hier Ihr Zeichenkettentrennzeichen aus, mögliche Werte sind - ; : oder leer (was der Standard ist). 2. Geben Sie benutzerdefinierten Text oder Elemente aus dem Fenster Wert in die Felder String ein 3. Drücken Sie die Schaltflächen "Hinzufügen" oder "Entfernen", um neue Stringfelder hinzuzufügen oder eines der aktuell hinzugefügten zu entfernen, das letzte Feld bleibt in jedem Fall erhalten, da für das erstellte Objekt ein Tag benötigt wird.
Wenn wir zum Beispiel ein 3. Stringfeld hinzugefügt und die aktuelle Bar aus der Kategorie Value Window misc hinzugefügt haben, würde unser Zeichenobjekt bei jedem Auftreten der Bedingung, also auch bei allen historischen Triggern, zeichnen.
|