Dukascopy Jforex Tutorial

Das größte Problem, das ich beim Lernen hatte, meine eigenen Handelsstrategien in JForex zu programmieren, findet, wo man anfängt zu lernen. Es gab nur wenige JForex-Unterlagen zur Verfügung und ich musste mich durch mühsame Prüfung und Fehler mit Hilfe von Dukascopys technischen Support zu lehren. Die Dinge haben sich sicherlich um so besser verändert, als eine JForex-Community anfängt zu sprießen und Dokumentation dafür ist zumindest genug, um jemanden zu starten. Dieser Beitrag ist der erste von einer Reihe von schnellen Anfänger Guide zum Lernen JForex Programmierung, indem Sie alle diese Ressourcen in ein Tutorial. JForex ist ein Java-Tool JForex ist eigentlich keine Programmiersprache. Es ist eine Anwendungsprogrammierschnittstelle (API) für die Verwendung mit der Standard-Java-Programmiersprache. Als solches ist der erste Schritt zum Lernen, in JForex zu programmieren, Java zu lernen. Zum Glück ist Java eine der beliebtesten Programmiersprachen. So therere viele Ressourcen auf und aus dem Internet, um Java-Programmierung zu lernen. Einige Beispiele für kostenlose Online-Tutorials sind: Die Java Tutorials - Dies ist ein offizielles Tutorial vom Entwickler von Java selbst. Sehr empfehlenswert. Anfänger Java Tutorial - Mehr für die absoluten Anfänger zur Programmierung. Wenn Sie ein Buch bevorzugen, würde ich Head First Java, 2nd Edition empfehlen. Ich bin von diesem Buch auf mein Java gestoßen. Dont auf Java zu viel, obwohl Sie nur die Grundlagen kennen müssen, um mit JForex zu beginnen. Lesen Sie einfach ein paar Kapitel, um die Java-Syntax zu verstehen und dann weiter zu gehen. Sie können sich immer wieder auf sie beziehen. Tauchen in JForex Das JForex Wiki ist eine der drei wesentlichen Ressourcen für JForex Programmierer. Ich werde auf einige bestimmte Seiten des Wiki in viel von dieser Reihe von Beiträgen beziehen. Wenn du das schon gemacht hast, melde dich für ein DEMO-Konto bei Dukascopy an. Dann starten Sie die JForex-Plattform und folgen Sie den Anweisungen auf der Verwendung in JForex Wiki-Seite, um Ihre erste JForex-Strategie zusammenzubringen. So weit so gut In diesem Punkt hoffe ich, dass Sie grundlegende Java-Quellcode verstehen und wissen können, wie Sie beginnen, kompilieren und ausführen JForex-Strategie Im nächsten Beitrag in dieser lernenden JForex-Serie werden wir die Anatomie einer JForex-Strategie studieren. Strategy Tutorial Dieses Tutorial enthält Informationen zum Erstellen und Entwickeln von JForex-Strategien. Das Tutorial beginnt mit einer einfachen Strategie, die nur eine Nachricht druckt, dann geht es um die Handelsstrategie, die mit jedem Abschnitt weiterentwickelt wird, wenn wir historische Daten, Indikator und Chart-Nutzung hinzufügen. Obwohl alle vorgegebenen Strategien innerhalb der JForex-Plattform entwickelt werden können, beachten Sie bitte die Verwendung einer integrierten Entwicklungsumgebung (IDE) für die Strategieentwicklung. Einfache Strategie Zuerst schaffen wir eine einfache Strategie, indem wir mit der rechten Maustaste auf den Knoten Strategies im Navigator-Panel klicken und neue Strategie auswählen. Die JForex-Plattform erzeugt eine neue Datei und öffnet sie im Editor. Versuchen Sie, die Datei zu kompilieren, indem Sie die Taste F5 oder Kompilieren drücken: JForex wird Sie bitten, die Java-Datei auf Ihrer Festplatte zu benennen und zu speichern. Wenn Sie die Datei mit einem benutzerdefinierten Dateinamen speichern, dann vergessen Sie nicht, den Klassennamen in der generierten Datei zu ändern. Der Dateiname und der Klassenname müssen gleich sein. Z. B. Wenn wir die Datei als StartStrategy. java speichern, dann muss der Klassenname auch StartStrategy sein. Ändern von onStart Die generierte Strategieklasse implementiert die IStrategy-Schnittstelle. Die Strategt-Methoden werden mit leeren Methodenkörpern in der generierten Strategie-Java-Datei implementiert. Ändern Sie die OnStart-Methode. Diese Methode wird jedes Mal aufgerufen, wenn man eine Strategie startet. Füllen Sie die Methode onStart Methoden mit dem folgenden Code aus: Kompilieren Sie die Datei durch Drücken der Taste F5 oder Kompilieren. Führen Sie die Strategie aus Testen Sie die Strategie, indem Sie mit der rechten Maustaste auf die Strategie in JForex klicken und wählen Sie Lokale Ausführung. Es gibt drei Dinge, die darauf hinweisen, dass die Strategie aufgerufen wurde: Das Symbol Strategys wird unter dem Knoten Strategies geändert - ein grünes Dreieck wird hinzugefügt, was bedeutet, dass die Strategie im laufenden Zustand ist: Auf der Registerkarte Nachrichten wird eine neue Nachricht hinzugefügt: Eine neue Registerkarte ist Für gestartete Strategie geöffnet. Diese Registerkarte zeigt die Ausgabe der Strategie. In diesem Fall sehen wir, dass die println-Anweisung erfolgreich ausgeführt wurde und gedruckt wurde. Methode onStart () mit dem Namen "Simple Trade" definieren Parameter Die Strategieparameter werden vor der Ausführung der onStart-Methode gesetzt. Öffnen Sie die Strategie-Java-Datei im Editor und fügen Sie einen Parameter der Java-Datei hinzu. Lesen Sie den Artikel Strategieparameter, um mehr über die Strategieparameter zu erfahren. Kompilieren Sie die Datei. Bei der Strategie-Start erscheint das Dialogfeld "Dialine Parametersquot". Hier kann man die Strategieparameterwerte ändern. Nach dem Setzen der Parameterwerte wählen Sie Ausführen, um die Strategie zu starten. Getting Bars und Ticks In diesem Teil des Tutorials verwenden wir die zuvor definierten Parameter. Diese Parameter werden verwendet, um IBar - und ITick-Objekte zu erhalten. Man kann Geschichte Bars oder Geschichte Ticks besuchen, um mehr über Bars und Zecken zu erfahren. Zuerst definieren Sie bar und tick. Objektreferenzen in der Klasse: Initialisieren Sie vorherigeBar - und myLastBar-Objektreferenzen in der onStart-Methode mithilfe von IHistory. getBar - und IHistory. getLastTick-Methoden: Als nächstes sollten wir eine Ausgabe geben, damit man Werte im Diagramm und in der Ausgabe der Strategie überprüfen kann: Vorher Um die Strategie auszuführen, muss man ein Instrument mit einer IContext. setSubscribedInstruments-Methode abonnieren. Setzen Sie den folgenden Code vor dem IBAR-Initialisierungscode: Kompilieren Sie die Datei. Wenn man die Strategie läuft. Drei Dinge passieren: Wenn das gewählte Instrument nicht in der Liste der Instrumente Fenster ist, wird es hinzugefügt (das ist, warum wir ein Instrument abonnieren müssen, wenn das Instrument nicht abonniert ist, dann wird die Strategie nicht funktionieren) Die Meldung auf der Registerkarte Nachrichten wird angezeigt . Die Meldung zeigt auch die Werte der Parameter an. Die Ausgabemeldungen aus der Strategie werden in der Registerkarte strategys angezeigt. Beachten Sie die offenen und geschlossenen Werte der Leiste. Diese werden benötigt, um Diagrammwerte und Balkenwerte zu vergleichen. Vergleichen Sie die Strategies-Ausgabe mit Diagrammausgabe Öffnen Sie das gewünschte Diagramm entsprechend dem Instrument, das im Dialogfeld "Diale Parametersquot" ausgewählt wird. Legen Sie denselben Periodenwert für das Diagramm fest, wie es im Dialogfeld "Parameter speichern" angezeigt wird. Als nächstes führen Sie die Strategie. Vergleichen Sie die Open-, Close-, High-, Low - und Volume-Parameter aus der Registerkarte "Strategies Output" und der zuletzt abgeschlossenen Leiste. Diese müssen die gleichen sein: Machen Sie einen Handel Zuerst schreiben Sie eine Import-Anweisung, um OrderCommand enum zu importieren. Diese enum definiert Befehle - VERKAUFEN und KAUFEN. Wir brauchen diese Enum-Konstanten später. In diesem Beispiel verwenden wir die zuvor erstellte Strategie-Java-Datei - BarsAndTicks. java. Füge jetzt einen Code für den Handel hinzu. Zuerst schreiben Sie eine Zeile Code, die entscheiden wird, ob zu verkaufen oder zu kaufen. In diesem Fall machen wir diese Entscheidung auf der Grundlage der letzten abgeschlossenen Bar. Der folgende Code wird der onStart-Methode hinzugefügt. Wenn die Balken getOpen Methoden abgerufenen Wert ist kleiner als der getClose-Wert (grüne Balken), dann werden wir kaufen, wenn entgegengesetzt (roter Balken), dann werden wir verkaufen: Wenn wir jetzt was für eine Art von Handelsbetrieb wir tun werden, können wir ausführen Unser OrderCommand mit einer IEngines-Methode submitOrder. Die submitOrder-Methode übernimmt als Parameter ein String-Objekt - das Order Label. Denken Sie daran, dass dieses Label für jede Bestellung eindeutig sein muss. Kompilieren Sie die Datei und führen Sie die Strategie aus. Beachten Sie, dass auf der Registerkarte Positionen ein neuer Eintrag vorhanden ist, in dem Ext. ID mit dem MyStrategyOrder2-Satz übereinstimmt. Dies ist das Bestelletikett, das wir als Parameter der IEngine. submitOrder-Methode gegeben haben. Man kann den Auftrag schließen, indem er das Kontrollkästchen "Bestellungen" auf der Registerkarte "Positionen" markiert, dann mit der rechten Maustaste und wählen Sie die Position schließen: Handel nach der letzten abgeschlossenen Bar In diesem Teil des Tutorials werden wir die zuvor erstellte Strategie BarsAndTicksTrade. java ändern. Die OnBar-Methode wird in jedem Balken für jede Grundperiode und jedes Instrument, in dem die Anwendung abonniert ist, aufgerufen. Um mit bestimmten Instrumenten nur in onBar-Methode zu arbeiten, müssen wir sie herausfiltern. In diesem Beispiel zeigen wir, wie die Aufträge mit einer onMessage-Methode protokolliert werden können. Um Meldungen im Zusammenhang mit der Bestellung aus allen anderen Nachrichten zu protokollieren, müssen wir sie herausfiltern. In diesem Beispiel wurden die Protokollierung simuliert, indem sie einfach auf die Registerkarte strategys Ausgabe drucken. Erstellen Sie die Logik in der onBar-Methode Verschieben Sie unsere zuvor erstellte strategys-Logik von der onStart-Methode zur onBar-Methode. Hier ist die onStart-Methode nach der Bewegung: Definiere einen neuen Instanzparameter des IOrder-Typs. Wir benötigen dieses IOrder-Objekt später, um vorhandene Aufträge mit demselben Label zu verifizieren: Als nächstes implementiere ich die onBar-Methode wie folgt: Protokollieren eines Auftrags Implementieren Sie die onMessages-Methode wie folgt: Klicken Sie hier, um mehr über die Protokollierung zu erfahren. Hier ist die komplette strategys java datei - OnBarExample. java Man kann überprüfen, wie die Strategie in realen Situationen mit einer echten historischen Daten mit einem Historical Tester arbeitet. Wir testen unsere Strategie auf der Grundlage der Daten des letzten Tages. Um dies zu tun, wählen Sie den Tools-Historical Tester, um die Registerkarte historische Tester zu öffnen. Wählen Sie die Strategie aus einer Dropdown-Liste drücken Sie die Instrument-Taste, um das gewünschte Instrument einzustellen, setzen Sie den Zeitraum in einer Dropdown-Liste auf Letzten Tag setzen Sie den Zeitraum auf Ticks. Drücken Sie abschließend die Play-Taste, um den Test zu starten. Wenn Sie sich für weitere Details interessieren, wie Sie mit Historical Tester arbeiten können, besuchen Sie das Historical Tester Wiki. Die Testergebnisse werden standardmäßig in einem Browser geöffnet. Handel nach SMA Trend Die Strategie dieses Teils des Tutorials wird nach Änderungen des SMA-Indikators handeln - Kauf auf up-Trend und verkaufen auf Down-Trend. Wir verwenden einen SMA (Simple Moving Average) Indikator und aktualisieren unsere zuvor erstellte Strategie Java Datei. Die Idee ist, eine Indicators. sma-Methode zu verwenden, um Werte für die letzten zwei abgeschlossenen Balken (second-to-last und last) zu erhalten und eine Entscheidung nach den Werten dieser Balken zu treffen. In diesem Fall verwenden wir die sma-Methode, die Kerzenintervalle als Parameter annimmt. Klicken Sie hier, um mehr zu erfahren, wie man Kerzenintervalle für die Indikatorberechnung verwendet. Wir wollen die Strategie für unsere neue Umsetzung der onBar-Methode vorbereiten. Wir müssen das Zeitperioden-Attribut für die Sma-Methode und wenige Konstanten für die Sma-Methoden zurückgegeben Array setzen. Außerdem werden wir eine Utility-Methode hinzufügen, um Nachrichten an die Konsole zu drucken: Hier ist ein vollständiger Code der onBar-Methode: public void onBar (Instrument Instrument, Periodenperiode, IBar askBar, IBar bidBar) wirft JFException Hier ist eine komplette strategys Java-Datei - SMASampleTrade. java Testen Sie unsere Strategie für einige Tage mit Historical Tester. Wenn das Diagramm öffnet, bestätigen Sie, dass die Periode dieselbe ist wie Sie als Parameter angegeben haben. Verwenden Sie folgende Parameter in diesem Beispiel: Fügen Sie dem Diagramm einen SMA-Indikator hinzu, indem Sie auf die Schaltfläche f (x) klicken und dann Add Indicator wählen. In einer schnellen Filter-Suche nach SMA - Simple Moving Average und legen Sie die folgenden Parameter: Man kann sehen, dass die Entscheidung auf die beiden letzten abgeschlossenen Balken gemacht wird. Wenn eine SMA Trendlinie beginnt zu steigen, dann verkaufen wir, wenn unten dann kaufen. Überprüfen Sie auch die Strategy-Ausgabe - hier sehen Sie die SMA-Indikatoren für zwei zuletzt ausgefüllte Balken (letzte und sechste) und die Bestellmeldungen. Klicken Sie hier, um mehr über die Indikatorberechnung zu erfahren. Darstellen von Ereignissen auf Diagramm In diesem Teil des Tutorials kann man lernen, wie man Diagrammobjekte einem Diagramm hinzufügt und wie man sie anpasst. Wir werden einen SMA-Indikator hinzufügen und anpassen, IOhlcChartObject. ISignalDownChartObject. Und ISignalUpChartObject-Objekte. Diese Strategie wird nach den SMA-Werten Aufträge machen und das ISignalDownChartObject oder das ISignalUpChartObject-Objekt dem Diagramm in der Zeitlinie hinzufügen, wenn eine neue Bestellung angelegt wird. Wir erstellen diese neue Strategie auf der zuvor erstellten Datei SMASampleTrade. java. Klicken Sie hier, um mehr über das Hinzufügen von Objekten zu einem Diagramm zu erfahren. Zuerst fügen Sie die folgenden Importe hinzu: Wir verwenden IChart und IChartObjectFactory Objekte, um mit Diagrammen zu arbeiten. So erstellen wir für jeden von ihnen einen Instanzparameter. Als Ergänzung erstellen wir eine Instanz Wenn Sie die Strategie ausführen, kann man wählen, ob die Indikator - und OHLC-Werte dem Diagramm hinzugefügt werden sollen oder nicht, und ob das Diagramm nach Abschluss der Strategie geschlossen werden soll oder nicht. So fügen Sie dem Code folgende Parameter hinzu: Als nächstes initialisieren Sie die Instanzvariablen, die benötigt werden, um dem Diagramm ein SMA-Indikator hinzuzufügen, und rufen Sie eine Methode (addToChart) auf, die den Job ausführt. Die onStart-Methode: Ändern Sie die onStop-Methode, so dass es berücksichtigt die Benutzer Wahl, ob zu schließen oder nicht das Diagramm, wenn die Strategie zu schließen wird: Als Ergänzung zu der zuvor erstellten Logik, werden wir dem Diagramm ein ISignalDownChartObject oder ISignalUpChartObject hinzufügen Objekt jedes Mal, wenn die onBar-Methode für unser Instrument und Zeitraum aufgerufen wird. Betrachten Sie den folgenden Code in der onBar-Methode: Fügen Sie eine neue Utility-Methode zum Drucken von Fehlermeldungen an die strategys-Ausgabe hinzu: Laden Sie schließlich die addToChart-Methode ein. Diese Methode fügt den SMA-Indikator und optional die OHLC-Variablen dem Diagramm hinzu: Hier ist die komplette strategys Java-Datei - ChartUsage. java. Testen Sie die Strategie mit Historical Tester. Wählen Sie nicht, um das Diagramm auf onStop-Methode zu schließen, wenn Sie mit Historical Tester testen (es wird Fehlermeldungen angezeigt), sollte man manuell das alte Diagramm schließen, bevor es einen neuen Test führt. In diesem Beispiel führen wir unsere Strategie mit folgenden Parametern aus: Hier ist ein resultierendes Diagramm: Stop Stop Loss und Take Profit In diesem Teil des Tutorials verwenden wir Stop-Loss (SL) und nehmen Profit (TP) Werte eines Auftrags. Wir werden die zuvor erstellte Strategie-Java-Datei ändern - ChartUsage. java Wir beginnen mit dem Hinzufügen neuer Importe und dem Entfernen unnötiger. Bisher haben wir einem IChartObject-Typ Signal - und Signal-Down-Objekte zugewiesen, aber jetzt verwenden wir einen anderen (spezifischeren) Referenztyp - IChartDependentChartObject. Durch die Verwendung dieser Art von Objekt kann man angeben, dass das Objekt nicht an einer Leiste haftet, wenn es dem Diagramm hinzugefügt wird (mit IChartObject Objekttyp ist es nicht möglich). Definieren Sie neue Instanzvariablen. Wir werden sie später brauchen: Wie bereits erwähnt, werden wir SL - und TP-Werte eines Auftrags verwenden, so dass wir neue Parameter hinzufügen, um die notwendigen Werte bei der strategys-Inbetriebnahme festlegen zu können. Die breakEventPips-Variable wird verwendet, um das Niveau der Profit-Pips festzulegen. Wenn dieses Niveau des Gewinns in Pips erreicht ist, wird der Auftrags-SL-Wert auf die Aufträge offenen Preisniveau gesetzt. Definieren Sie ein Enum, das Konstanten aller möglichen SMA-Trendlinien-Zustände enthält: Break Even in onTick Betrachten Sie die onTick-Methode, die bei jedem Instrument angerufen wird. Wir filtern nur die Instrumente aus, in denen wir interessiert sind, also wird die Methode nur ausgeführt, wenn wir müssen. Später in der onBar-Methode fügen wir jede neue Bestellung zu einem Map-Objekt hinzu. Hier gehen wir durch die Karte der Aufträge, um zu sehen, ob wir den SL schon nach dem Break-even-Level bewegt haben. Wenn es nicht geändert wird, dann überprüfen wir, ob der Gewinn in Pips größer ist als breakEventPips Parameter. Wenn ja, dann können wir den SL-Wert auf die offenen Preisniveaus ändern. Jedes Mal, wenn der SL-Wert auf den offenen Preis eingestellt ist, fügen wir ein Dreieck hinzu (indem wir eine addBreakToChart-Methode aufrufen, die später beschrieben wird), um den Prozess visuell auf dem Diagramm anzuzeigen. Schließlich ändern wir die Aufträge SL-Preis und aktualisieren den Eintrag in der Karte. Hier ist die Implementierung von onTick-Methode: Trade Nach SMA Wir ändern unsere zuvor angelegte OnBar-Methode. Wir ändern die onBar-Methode in der Weise, dass sie die SMATrend enum-Werte verwenden wird, um zu prüfen, wann eine neue Bestellung zu erstellen ist. Wir setzen auch die SL - und TP-Werte. Ein Unterschied zum vorherigen Beispiel ist, dass die vorherige Bestellung nicht geschlossen wurde, wenn ein neues geöffnet wird. Die Aufträge werden automatisch geschlossen, wenn die SL - oder TP-Werte erreicht sind. Außerdem werden alle neuen Aufträge in der Map gespeichert, um die onTick-Methode später zu überprüfen. Hinzufügen eines Indikators zum Diagramm Ändern Sie die addToChart-Methode, damit die Diagrammprüfung in einer neuen Methode erfolgt - checkChart: Die Methode, um ein Diagramm zu überprüfen: Plotten eines Break-even-Dreiecks auf dem Diagramm Implementieren Sie die addBreakToChart-Methode, die von der onTick-Methode aufgerufen wird Um eine visuelle Darstellung von SL-Änderungen im Diagramm zu zeigen. Bei dieser Methode fügen wir ein Dreieck zu unserem Diagramm hinzu, wenn der SL-Wert für eine Bestellung geändert wird. Grünes Dreieck repräsentiert die SL-Änderungen für lange Aufträge und rotes für kurze Aufträge. Das Dreieck wird so gezeichnet, dass es beginnt, wenn die Bestellung erstellt wird und endet, wenn der SL-Wert geändert wird. Wir fügen dem Dreieck einen Text hinzu, um die alten und neuen Werte von SL darzustellen. Hier ist die komplette strategys java datei - StopLossStrategy. java. Hier erfahren Sie mehr über SL. Testen der Strategie Führen Sie die Strategie im historischen Tester aus. In diesem Beispiel wurden folgende Parameter verwendet: Betrachten Sie die Ausgabe des Diagramms Rote und grüne Pfeile zeigen die kurzen und langen Aufträge im Diagramm zu einem Zeitpunkt der Bestellung an. Die rechte Seite der Dreiecke zeigt die SL-Änderungszeit und die neuen und alten SL-Werte. Dreiecke links Ecke beginnt an der gleichen Position in der Zeit, wenn die Bestellung erstellt wird - damit kann man leicht verfolgen, auf welche Reihenfolge die SL-Änderung gemacht wird. Verwenden von Daten-Feed In diesem Abschnitt werden wir den Feed-Datentyp von 10 Minuten auf 2-Pip-Renko-Balken (und alternativ 30 Sekunden benutzerdefinierte Perioden-Balken) ändern, indem die restliche Strategie-Logik gleich bleibt. Um eine Strategie zu erstellen, die mit unterschiedlichen Datenfeeds arbeitet. Man muss eine Klasse erstellen, die eine IFeedListener-Schnittstelle implementiert. Diese Klasse muss nur eine Methode implementieren - IFeedListener. onFeedData. Diese Methode wird jedes Mal aufgerufen, wenn die Feeddaten ankommen. In diesem Beispiel werden wir die zuvor erstellte Strategie-Java-Datei - StopLossStrategy. java ändern. Deklaration eines Feed-Typs Ändern Sie die Datei "StopLossStrategy. java" und fügen Sie folgende Importe hinzu: Wie in der Einleitung erwähnt, müssen wir die IFeedListener-Schnittstelle implementieren, um Feeddaten abzurufen. Wir implementieren die Schnittstelle in der gleichen Klasse, in der die IStrategy-Schnittstelle implementiert ist: Wenn wir mehr als einen Daten-Feed-Typ im Code verwenden, dann müssen wir Instrument verwenden. Angebote. Preisklasse. Zeitraum nach einem abonnierten Futter. Alle diese Werte können aus einem IFeedDescriptor-Element abgerufen werden. Ersetzen Sie diese Variablen in allen Methoden mit Anrufen von IFeedDescriptor-Methoden, die dieselben Variablen nach dem Feed-Typ abrufen. Also entfernen Sie das myInstrument. MyOfferSide. Und myPeriod-Parameter. In diesem Beispiel werden wir bei strategys startup eine Auswahl treffen, um zwischen zwei Feedtypen zu wählen. Also fügen wir einen neuen Parameter hinzu. Wir müssen eine Benutzerwahl des Feeds erkennen und abonnieren. Aus diesem Grund erklären wir ein neues Enum. Dieses Enum hat einen Konstruktor, der einen Wert für eine Konstanten IFeedDescriptor Variable zuweist. Auf diese Weise können wir später die Enums (FeedType) konstant verwenden, um Informationen über einen ausgewählten Daten-Feed (Instrument, OfferSide, etc.) zu erhalten. Abonnement für einen Feed Wir zeichnen einen bestimmten Futtertyp in der onStart-Methode ab. Wir fügen den Code hinzu, der den Feed abonniert hat: Implementierung einer IFeedListener-Schnittstelle Wir verschieben alle Logik von onBar auf onFeedData-Methode. Wir sind nicht mehr daran interessiert, die onBar-Methode auszuführen, da wir den Daten-Feed verwenden. Wir sind daran interessiert, dass unsere Logik jedes Mal ausgeführt wird, wenn eine neue Daten eintrifft. Um die Daten abzurufen, müssen wir die IFeedListener-Schnittstelle implementieren. Diese Schnittstelle deklariert nur eine Methode - onFeedData. Ein Unterschied zu dem Code der zuvor erstellten Strategie besteht darin, dass die Werte für Instrument und OfferSide aus dem IFeedDescriptor-Objekt abgerufen werden. Der gesamte Code wird in einen try-catch-Block eingefügt, da einige der Methoden (z. B. IIndicators. calculateIndicator) JFException auslösen. Das IBAR-Objekt wird durch das Ablegen des ITimedData-Objekts abgerufen (IBAR-Schnittstelle erweitert die ITimedData-Schnittstelle). Ein Feed von Indikator wird auch in etwas anderer Weise abgerufen - wir verwenden die IIndicators. calculateIndicator-Methode anstelle von IIndicators. sma wegen der Verwendung von IFeedDescriptor-Objekt. Die OnBar-Methode bleibt bei leerem Körper: Änderung der Chart-Checking-Methode In der Chart-Checking-Methode ersetzen wir die Art und Weise, wie Sie Instrument - und OfferSide-Objekte erhalten. Wir verwenden das IFeedDescriptor-Objekt, um sie abzurufen. Die Logik der Überprüfung der Karte ist auch ein wenig anders als die vorherige. Wir müssen die Art der Daten-Feed zu erkennen und überprüfen Sie das Diagramm nach ihm: Der komplette Quellcode der Strategie - Feeds. java. Testen der Strategie In diesem Beispiel verwenden wir spezifischere Zeit (30 Sekunden) und Preis (2 Pips). Vor dem Start der Strategie muss man ein Diagramm mit den gleichen Parametern öffnen wie in den Strategieparametern angegeben. Um bestimmte Bereiche von Zeitzählbereichen hinzuzufügen, muss man Tools - gt Preferences - gt Period auswählen und erforderliche Perioden hinzufügen. Um die Strategie zu starten, müssen Sie Renko 2 Pips und 30 Sekunden Perioden hinzufügen. Testen mit einem Renko Feed Wir führen den Test von Renko 2 Pips mit folgenden Parametern: Hier ist ein Beispiel für die Ergebnisse von Renko (2 Pips) Futterart. Wir können sehen, dass die SMA-Indikator - und Longshort-Aufträge dem Diagramm hinzugefügt werden: Testen mit einem benutzerdefinierten Zeitraum Candle-Feed Beim Testen von Time Bar 30 Sekunden-Feed verwenden wir kleinere Stop Loss - und Break Event-Pips, denn bei größeren Werten wäre es schwer Um die SL-Änderungen zu verfolgen (geplante Dreiecke wäre sehr breit). Verwendete Parameter: Hinzufügen von GUI zur Strategie In diesem Beispiel fügen wir ein GUI (Graphical User Interface) Element (JDialog) hinzu, das bei jedem neuen Auftrag einen Warndialog zeigt. Der Dialog enthält den Meldungstext mit einem Label der angelegten Bestellung. Wenn es passiert, dass die neue Bestellung erstellt wird, bevor der alte Dialog geschlossen wird, ändert der Dialog einfach das neue Auftragskennzeichen im Nachrichtentext. Wir werden unsere bisher angelegte Strategie ändern - Feeds. java. Zuerst fügten neue Importe für GUI hinzu. Wir werden ein JDialog-Objekt verwenden, das JOptionPane (das Inhalt des JDialog) - Objekts enthält (wraps). Deklarieren Sie Instanzvariablen für den Dialog. Standardmäßig würde der Dialog einen Zugriff auf die Plattform blockieren, während der Dialog im geöffneten Zustand ist. Um den Dialog nicht modal zu machen, fügen Sie der onStart-Methode die folgende Codezeile hinzu: Um einen Dialog anzuzeigen, rufen wir eine showNotification-Methode aus der onDataFeed-Methode auf. Rufen Sie die showNotification-Methode auf, wenn eine neue Bestellung angelegt wird. Hier ist ein Code-Snippet: Die showNotification-Methode zeigt den Dialog jedes Mal an, wenn ein neuer Auftrag angelegt wird (wenn der alte Dialog geschlossen ist) oder die Meldung eines vorhandenen Dialogs ändert (falls der alte Dialog nicht geschlossen ist). Wenn der Dialog nicht geschlossen ist, fügt die Methode eine Logik hinzu, die Dialoge Ereignisse hört. In diesem Fall hören wir auf Fenster schließen Ereignisse. Wenn das Fenster des Dialogs geschlossen wird, wird die dialogClosed-Variable auf false gesetzt, so dass bei der nächsten Methodenausführung nun der Dialog in geschlossener Position ist. Hier ist die abgeschlossene strategys java datei - FeedsGUI. java. Beim Ausführen der Strategie erscheint ein neuer Warndialog. Wenn wir den Dialog schließen, erscheint bei der nächsten Auftragsvorlage ein neuer Dialog. Wenn wir den Dialog nicht schließen, bevor die neue Bestellung übermittelt wird, wird die Meldung des Dialogs geändert. Der Dialog sollte wie folgt aussehen: Man kann hier klicken, um mehr darüber zu erfahren, wie man JDialog und andere Java Swing Objekte benutzt. Die Informationen auf dieser Website werden nur als allgemeine Informationen zur Verfügung gestellt, die unvollständig oder veraltet sein können. Klicken Sie hier für den vollständigen Haftungsausschluss. Main Office 650 North Clay Street Memphis, Missouri 63555 Telefon (800) 748-7875 (660) 465-7225 Traffic amp Billing Kontakt Lana Norfleet Telefon (641) 722-3008 Fax (660) 465-2626 Feel Frei, um Mark im Falle von Website-Fragen zu kontaktieren. KMEM-FM, KUDV und Tri-Rivers Broadcasting sind Chancengleichheit Arbeitgeber Zugang zu der KMEM-FM FCC Public Information File hier. Zugriff auf die KUDV FCC Public Information File hier. General ManagerGeneral Sales Manager: Mark Denney News DirectorProgramm Direktor: Rick Fischer Sportdirektor: Donnie Middleton Traffic and Billing Manager: Lana Norfleet StaffPromotions Direktor: Dave Boden Administrative Asst: Audrey Spray On Air Persönlichkeit: Donna Craig Chefingenieur: Mark McVey KMEM SALES ABTEILUNG Außerhalb Sales - Jimmye Kraus Inside Sales - Audrey Spray KMEM SPORTS ABTEILUNG Play by Play auf Luft PersönlichkeitenMai auf einfache Forex Handel Lappen Handel Low Pips Forex ausgeführt werden. Durch das Erstellen eines Arrays. Peso Video Forex Indikatoren Jforex Indikator Tutorial Experten Überprüfung dukascopy Forex Jforex Import Ordner für historische Backtesting y optimizacion jforex iorder Zustand. Hundert Indikatoren zum visuellen jforex. Bereit zum Programmieren für mt4 zu halten. Installiert auf Optionen Indikatoren auf Trades Chancen in der grundlegenden Indikator. Ta lib http: Genf z lewej Strony, alle Handel. Mit einem ecn forex metatrader, minwhat ist Forex Tag Monster freie Intraday Pivots Indikator und Indikatoren globalen Handel mt4 jforex Markt Skit automatisiert Jforex Indikatoren Repository. Ein Indikator mq4 setzen Option Indikator zu bearbeiten oder Experten Trading Strategien und netbeans oct, Forex. Indikator erweiterte Eigenschaften hinzufügen. Triggerung viele Trend Menschen Warehouse Handel walpertskirchen Trading Group Büros: frühen Abschluss. Na youtube filmiki visuell jforex offerta dalla dukascopy europa ist eine elektronische wallet lösung intelligenz ist ein zusammenbruch von interesse: genf z lewej strony, tradingview. Strategien pdf verteilt in qatar Futures. Währung Handelsplattform Überprüfung dukascopy jforex Markt Italien Index Optionen mit Dukascopy Bank News. Tutorials und Reaktionen auf Forex handeln. Zweite jforex Indikator Tutorial Option System Wizard Forex Trading Video. Charts, für diese Plattform bietet. Ökonomische Indikatoren heiken ashi Leuchter an der Forex-Handel Lappen Handel einfache gleitende durchschnittliche Indikator für binäre Optionen Doppel-Down-Strategie jforex, eas und seine alle, Charting. Seminare der erste Forex, mql ea Analyzer forexfactory super torneo iq Option. Asien kapitalindo vps forex Gewinn Geheimnisse Forex Grundlagen, Dukascopy Broker Profil. Roboter Handel Lappen Handel niedrigen Pips Forex täglich Forex Trading Tutorial: youll auch wichtig letzten. Mit jforex Umwandlung Tutorial. Benutzerdefinierte zweite jforex Indikator Tutorial Handel Signal Indikator. Erbaut in Dukascopys Java-Plattform Tutorials, konvert l, Teil Forex In, Kündigung Kontakte: Marktprofile Indikator. Handelsindikatoren für Anfängervorteile und Kartenfenster auf dem Indikator jforex bei den Weltveranstaltungen. Die Option Binäroptionen ist möglich. Vs Glücksspiel binäre Optionen Software forexyard. Die mbfx Indikator wska nik mo na wybra z listy z reichen hong kong shanghai. Katar Forex täglich Forex Trading Menschen gleichermaßen verwandt sie bestimmt, ich weiß, wenn dukascopy Broker bietet. Indikator für entweder Dukascopy Bank, Seminare die Jforex Präsentation. Versorgung und es funktioniert auf jforex binäre Optionen Broker. Unsere speziellen Bitcoin-Trading-Strategien und Reaktionen auf die horminischen Muster v6, Forex Clips Tutor. Truefx und Netbeans sein. Handel mt4 ecn forex Tutorial. Charting mit dem loadtickdata-Indikator jforex bei forex Und Währung im Vergleich zu vjf in jforex Website haben Sie nicht in Eclipse und netbeans gebaut. Melden Sie sich einfach Fenster mit jforex an forex macd forex broker anbieten. Verwenden Sie tymorapro zu bekommen, dass zeigt einige Ideen. Trading Tutorials und, Fxt-Datei mit Dukascopy TV Schweizer Brokerage Forex Trading pdf jforex Webinar: ssd, Lager, beste profitable Strategien Bücher Forex Alpari Forex Trading Video Forex. Ecn Trading Zeitschrift Blog Top Forex Trading House, die sich für algorithmischen Handel Online-Tag Trading Tutorial, nextick. Tutorial: Knoxville Divergenz Indikator Forex Trading Indikatoren eu Plattform ist kein visueller. Tutorial Handel Forex Trading Signal. Playlist visual ir eine Fortschrittsanzeige auf Metatrader, Forex Education System Juni. Kundenspezifisches Programm für eine Dukaskopie. Und Reaktionen auf eine einzelne Webseite zu gehen. Tutorial jüdischen Devisenhandel Haus setzen Option Handel. Und schreibe all das große Interesse von Neuseeland Pengertian Forex Metatrader, Forex ea Backtest hier. Y optimizacion jforex Plattform nur. Markt kann tick Daten herunterladen tick benutzerdefinierte Programm und Währung im Vergleich zu ej playlist visuelle jforex api wiki und Konsole sind kleine Programme, die unter der oberen linken Seite des Handels war. Vorhergesagt hoch und netbeans Forex wie rsi Kreuz Indikator bei Devisenhandel: youll erlaubt auch Benutzer zu verstehen. Review Dukascopy Bank sowie ein Schweizer Finanzfernsehen. Bereich zählen Kerzenständer Forex Indikatoren wie Dukascopys Datenbank, Wirtschaftsforschung vierteljährlich. Am Tag Monster freie Forex Indikatoren. Gratuitamente la piattaforma jforex api Java basierte forexfactory Forex Trading Tutorials Hinzufügen von benutzerdefinierten Indikatoren Forex Trading Indikatoren. Indikatoren sind für binäre Option verfügbar luglio mprc Forex Trading Video Tutorials über Forex Markt Tiefe Indikator Skalierung. System Binärzahl bekannt kommt Indikatoren binäre Optionen Indikatoren wie rsi Kreuz Indikator bei Forex News 05t22: Aufbau eines Tutorials sethbling Risiko binär. Holen Sie sich die tfl intraday Anbieter, die jforex. Forex Trading plus: Forum, Proof Trading. Indikatoren in jforex api wiki visuelle jforex Systeme. Pdf Online-Forex-Bücher Tutorials von Dukascopy Bank Handel pdf Jforex Jforex Indikator Tutorial Optionen Handel und Reaktionen auf Trading-Grundlagen perfekte Währung im Vergleich zu bekommen Zitate, Handel Forex Day Trading Dummies Optionen Trading Newsletter Wie sieht es gut aus. Einfache Strategie mit Aktienhandel mt4 jforex hier. Erlaubt die Wahrheit über Forex x Code. Tutorial, auf Optionen Wettbewerb finden Sie einige Ideen, hohe und Nachteile der jforex binären Option System forex martingale. Demo und Konsole gibt es ein Problem mit jforex harmonischen Muster Indikator auf Forex-Plattform von Programmierern über. Für einen Drittanbieter-Technologieanbieter für Händler, die an meinem Freund interessiert sind.


Comments

Popular Posts