Saturday 18 March 2017

Dukascopy Jforex Api Dokumentation

JForex API JForex API bietet die Möglichkeit, benutzerdefinierte Software-Anwendungen mit Java-Programmiersprache zu entwickeln. API-Client-Bibliothek kann mit Kundensystemen verknüpft werden. Es kommuniziert direkt mit den Dukascopy Bank Handelsservern über sichere und authentifizierte Internet-Sessions. Es ist nicht notwendig, JForex-Plattform zur gleichen Zeit laufen zu lassen, aber die Plattform kann verwendet werden, um in Echtzeit alle Aktionen zu überwachen, die von einem Kunden-System genommen werden. Um mit dem JForex Software Development Kit (JForex SDK) zu arbeiten, laden Sie es herunter und importieren es in einer Java Integrated Development Environment (IDE) Ihrer Wahl: Das JForex SDK enthält Beispiele für: Strategie mit Live-Datenstrategie Back-Test-Strategie Back - Testen im visuellen Modus Die JForex SDK-Übersicht beschreibt die Änderung und Verbesserung dieser Nutzungsfälle. Für die Strategieentwicklung beginnen Sie mit der Strategie-API-Übersicht. Die neuesten JForex SDK Abhängigkeiten finden Sie immer im öffentlichen Dukascopy Maven Repository. Was bedeutet, dass man ihr Projekt konfigurieren kann, um immer die neueste JForex API Version zu verwenden. Bleiben Sie up-to-date mit unseren neuesten Jforex api Entwicklungen und abonnieren Sie automatische Jforex API Release-Note E-Mails. Vergessen Sie auch nicht, unser API-Support-Forum zu lesen, in dem alle Jforex API-Veröffentlichungen veröffentlicht und diskutiert werden. 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. Ich möchte jForexAPI verwenden, um eine Strategie zu erstellen. Ich habe viele Zeilen in MT4 codiert und aber ich bin schon mit deiner jForex api verloren. Sie helfen nur, dass ich sehe, ist ein sehr kurzes PDF. Gibt es irgendwelche Foren für dds-Builds Welche Entwicklungsplattform verwende ich zum Erstellen von dds-Dateien Wo sind die vielen dds-Beispiele Wie kann man eine dds-Datei erstellen, nur per Notizblock. Notepad ist nicht gut für Skript-Entwicklung, also gibt es etwas anderes Alles, was ich tun möchte, ist ein Skript, das einen Stop-Loss und Ziel-Profit platzieren wird und bei einer Bedingung einen nachlaufenden Stopp starten, nachdem ich einen Markt bestellen kann. So wie ein automatisches Auftragserstellungsskript, spart mir das Handelsmanagement. Also brauche ich Beispiel-Ressourcen oder einen Coder, um mir zu helfen. Jede Hilfe wäre toll. Obwohl Duskacopy ein Werkzeug für den Aufbau einer Brücke von MT4 auf die Dukascopy-Plattform hat, ist das Problem, dass das MT4 datafeed oft nicht ganz zuverlässig ist. So ist es wohl besser, die Strategie mit der Jforex API mit Dukascopy Datafeed zu programmieren. Hier ist die Dokumentation für diejenigen, die interessiert sind: Die pdf, die Sie aufgeführt haben, habe ich. Sie sagen Ihnen nichts davon, wie man ein Skript für ihre Java-Plattform zu bauen. Ist Dukas sagen, dass Notizblock die Entwicklungsplattform ist, gut kann es nicht sein, wie tippt man den Scrip und debugst es. Ihre Java-Handelsplattform hat keinen Code-Debugger oder Schriftsteller. Ich kann sogar noch eine Liste von Beispielen. NOt sogar ein Forum von Dukas unterstützt, um Strategie-Builder zu helfen. Vielleicht ist es mir, und ich bin nicht sehr gut bei google. Wurden die Werkzeuge, Ressourcen, Foren, Beispiele, etc. Frage Dukascopy - JForex Strategie Jemand hat einen berühmten Scalper EA in JForex Strategie umgeschrieben und verkauft. Back Test sieht toll aus und vorwärts Test auf DEMO sieht auch hervorragend aus. Jeder, der mit JForex erlebt hat Wie Unterschied zwischen DEMO und REAL Konto, wie zuverlässig ihre Back Testergebnis Duwi: Jemand hat einen berühmten Scalper EA in JForex Strategy umgeschrieben und verkauft. Back Test sieht toll aus und vorwärts Test auf DEMO sieht auch hervorragend aus. Jeder, der mit JForex erlebt hat Wie Unterschied zwischen DEMO und REAL Konto, wie zuverlässig ihre Back Testergebnisse Ich bin mit Jforex Handel. Am besten mit ihnen ist, dass sie einen Daten-Feed haben. Auch die Strategie zu laufen ist sehr einfach und ich bin mir sicher, dass dies ein richtiger Ort ist, um mit der automatischen Strategie zu handeln. Nachdem die Anatomie einer leeren JForex-Strategie (Teil 1 und Teil 2) studiert wurde, ist es an der Zeit, eine Arbeit zu sezieren. MAPlay ist die Strategie, die mit jedem JForex API Download als Demonstration enthalten ist. Sie finden den kompletten Quellcode dieser Strategie in srcsinglejartest im JForex API-Zip-Paket. Erinnern Sie sich, dass die erste Schnittstellenmethode, die zu Beginn der Strategie läuft, onStart ist. Die OnStart-Methode von MAPlay ist unten wiedergegeben. Die Variablen Motor. Indikatoren Und Konsole sind Felder der MAPlay-Klasse. Sie sind globale Variablen innerhalb der Klasse. Welche Linien 42-44 tun, ist, die IEngine zu retten. IIndikatoren Und IConsole-Objekte für spätere Verwendung. Die letzte Zeile von onStart, Zeile 45, dient lediglich dazu, eine Nachricht auf deiner JForex-Programmkonsole zu drucken, um dem Benutzer mitzuteilen, dass die Strategie gestartet wurde. Sobald onStart die Verarbeitung beendet hat, wird der Server wahrscheinlich anrufen, wenn ein Market Tick ankommt. Wenn es nicht während der Marktstunden, dann theres kein Häckchen und irgendein anderes Ereignis könnte anstatt onTick geschehen. Denken Sie an die Methoden als Ereignisse eher als ein linearer Prozess. Sie programmieren Ihre JForex-Strategie nach dem, was Sie mit jedem der sechs IStrategy Interface-Events machen wollen. Für diese spezielle Strategie entscheidet der Programmierer, ihre Strategie auf der Tick-Ebene umzusetzen. Als solches befindet sich ein Großteil des Trading-Algorithmus in onTick für MAPlay. Beachten Sie, dass dies eine Design-Wahl ist, können Sie onBar verwenden, wenn Sie möchten, dass Ihre Strategie auf der Balkenebene verarbeitet wird (oder Sie können sowohl onTick als auch onBar verwenden). Heres der Quellcode für onTick in MAPlay. Auf einen Blick können Sie feststellen, dass die Variablen ma0 und ma1 eine Schlüsselrolle bei der Bestimmung des Setups spielen. Hinweis: Um eine Strategie umzukehren, kann es leichter sein, rückwärts zu arbeiten, wenn der Auftrag platziert wird, was in diesem Fall von engine. submitOrder erfolgt. Ma0 und ma1 halten Ergebnisse aus exponentiellen gleitenden Durchschnitten (EMA). Ma0 ist der aktuelle Wert. Ma1 ist der vorherige Balkenwert. Zeilen 56--63 Überprüfung mit IF-Tests (Zeilen 56 und 60), um zu sehen, ob eine der Variablen ungültige Daten enthält. Wenn die Daten ungültig sind, wird der Indikator berechnet und der Rest des onTick wird mit der return-Anweisung auf Zeile 62 übersprungen. Hinweis: Indikatorwerte können manchmal ungültig sein (Null, negativ oder Double. NaN, abhängig von der jeweiligen Indikatorimplementierung ) Wenn es nicht genügend Daten gibt, um es zu berechnen oder ein Fehler aufgetreten ist, zum Beispiel. Die EMAs werden in den Zeilen 57 und 59 mit dem IIndicators-Objekt (das in onStart initialisiert wurde) geholt. Das JForex Wiki gibt eine Erklärung für seine Verwendung. Beachten Sie, dass ma1 ein Array ist, das in Zeile 38 mit einer Größe gleich der Anzahl aller verfügbaren JForex-Instrumente deklariert wurde. Insbesondere wird sie mit einem speziellen Indexwert wie in ma1instrument. ordinal () verwendet. Mit anderen Worten, es fragt nach dem aktuellen Instrumenten-Slot im ma1-Array. Das aktuelle Instrument ist dasjenige, das in die Methode in Zeile 55 übergeben wird. Das Herunterfahren des Codes, ein weiterer Punkt von Interesse ist Zeile 65, die die Verwendung von instrument. getPipValue () zeigt. Zeile 67 prüft, ob die aktuelle Gesamtzahl der Position Null ist. Wenn es heißt, dh keine geöffnete Position, dann geht die Strategie weiter, um das Eintrittssignal zu prüfen, um einen Handel zu betreten (Zeilen 68-76). PositionenTotal () ist eine benutzerdefinierte Methode, die in den Zeilen 84-92 definiert ist. Es verwendet eine FOR-Schleife, um durch alle Aufträge, die von engine. getOrders (Instrument) erhalten werden, zu durchlaufen. Sobald entweder die lange oder kurze Bedingung, die Zeilen 68 und 72 erfüllt sind, gibt die Strategie eine Bestellung in Zeilen 69 für eine kurze und Linie 73 für eine lange. Die Angaben zur Einreichung von Marktaufträgen sind im JForex Wiki beschrieben. Wenn du diese Strategie stoppst, wird onStop (Zeilen 48-53) aufgerufen. Für diese Strategie schlägt der Programmierer alle Aufträge wieder mit engine. getOrders () und schließt jede Position mit einem Befehl order. close () in Zeile 50. Das ist es für diese triviale Strategie. Wenn es einen Punkt gibt, an den Sie sich erinnern sollten Beachten Sie meine Verwendung der vielen Links zum JForex javadoc und JForex Wiki in diesem Beitrag. Sie werden wahrscheinlich viele Ihrer Antworten aus diesen beiden Quellen finden. Wenn nicht, gibt es immer das JForex Support Board. Nun, da hast du eine Vorstellung davon, wie MAPlay. java arbeitet, seine Zeit, es zu testen. Im nächsten Beitrag im Januar werden wir den JForex Historical Tester diskutieren und was zu sehen ist, wenn man eine Strategie live macht. Wir sahen vier der sechs Methoden in der IStrategy-Schnittstelle in einem früheren Beitrag an. Die letzten beiden Methoden, onTick und onBar, ist, wo Ihre Strategie mit Marktdaten zu verbinden. Entweder man oder beide von diesen Methoden ist, wo Sie Ihren Trading-Algorithmus in setzen. Ihre Strategie wäre dann in der Lage, die Marktdaten zu verarbeiten, wie sie eine Tickbar zu einem Zeitpunkt ankommen. Erinnern Sie sich, dass IStrategy Interface das Skelett Ihrer Strategie ist. Und das IContext-Objekt ist das Herzstück Ihrer Strategie. OnTickonBar ist der Kopf Ihrer Strategie, die Ihren Trading-Algorithmus enthält, der das Gehirn ist. Heres die Methode Definition von onTick. Wichtig: onTick ist für jedes Instrument, das Ihre JForex-Plattform abonniert hat (die Instrumentenliste in Ihrem Arbeitsbereich), aufgerufen. Lassen Sie mich das noch einmal sagen, onTick ist für jedes Instrument aufgerufen, das Ihre JForex-Plattform abonniert hat. Die Standard-Praxis ist es, herauszufinden, Ticks für Instrumente, die Sie nicht wollen, mit einer einfachen IF-return-Anweisung. If (instrument myInstrument) return Tatsächliche Tick-Daten werden mit dem ITick-Objekt aus dem Parameter onTick-Methoden an deine Strategie übergeben. Werfen Sie einen Blick auf die ITick javadoc Eintrag zu sehen, was es bietet. OnBar arbeitet in ähnlicher Weise wie bei OnTick. In welcher OnBar für jedes einzelne geteilte Instrument und die Periode bekannt ist, die JForex bekannt ist. Ebenso musst du alle unerwünschten Instrumente und Perioden herausfiltern oder sonst werden die Ergebnisse aus deiner Strategie erwartet. Ein weiterer Punkt zu beachten ist, dass onBar bietet sowohl eine IBar askBar und IBar bidBar, die die Frage und Bid Bars. Frage: Was passiert, wenn zwei oder mehr Perioden überlappen, wie in 13:45 1, 5 und 15 Minuten Stäbe alle zur gleichen Zeit ankommen (ganz zu schweigen von den Perioden auch in Sekunden). Antwort: Nach Dukascopy Unterstützung im Forum, sie kommen in einer strengen Reihenfolge, zum Beispiel (1min 1min 1min 1min 1min 5min 1min 1min 1min 1min 1min 5min.) Sie kommen in Zyklen, wo kleinere Perioden kommt zuerst. JForex Support Forum Wie Sie Ihre Strategie mit JForex programmieren, werden Sie zweifellos mit eigenen Fragen kommen. Der beste Ort, um zu fragen, ist im offiziellen JForex Support Forum. Dies ist die letzte der drei essentiellen JForex-Ressourcen, die ich früher angedeutet habe. Auch wenn Sie keine konkrete Frage haben, gibt es Beispielcodes, Codierungsdiskussion und Hunderte von existierenden QampA von anderen JForex-Entwicklern, die im Forum veröffentlicht wurden. Die bisherige Diskussion war sehr hoch. Um Ihnen zu zeigen, was Sie in einer IStrategy tatsächlich machen können, werden wir im nächsten Beitrag eine Arbeitsstrategie zerlegen. Und was noch besser zu untersuchen als die beliebteste JForex-Strategie von allen - MAPlay. java. Weiter aus Teil 1 dieser Serie: Erste Schritte mit der Programmierung von JForex. Jetzt waren bereit, die reale Sache zu besprechen. Sie erstellen JForex-Strategien mit der IStrategy-Schnittstelle (Was ist ein Interface). Grundsätzlich ist eine Schnittstelle ein Code-Skelett mit einer Reihe von vordefinierten leeren Methoden, die Sie brauchen, um sich selbst zu implementieren. Die sechs Standardmethoden der IStrategy Interface sind: Unten ist eine leere IStrategy Interface Implementierung, auch bekannt als JForex Strategie. Dieser Code wird in JForex gut kompilieren und du kannst ihn sogar laufen lassen. Aber es tut gar nichts, weil es keinen Code gibt, der in jeder der Methoden läuft. Jede der sechs Methoden wird gerade aufgerufen und sofort beendet. Jede der Methoden wird durch ein bestimmtes Ereignis ausgelöst. Sie können wahrscheinlich erraten, was sie von ihrem Namen sind. OnStart (Zeile 5) Dies ist die erste Methode, die aufgerufen wird, wenn Sie Ihre Strategie ausführen. Es läuft einmal und nur einmal am Anfang deiner Strategie. Normalerweise machst du hier deine Initialisierung. Die Sache, die für onStart zu beachten ist, ist in Zeile 5 des Codes. Die Methode Signatur von onStart ist Das Objekt im Parameter und gegeben in dieser Methode ist ein IContext-Objekt. Wenn IStrategy das Skelett ist, dann ist IContext das Herz der Strategie. Bitte werfen Sie einen Blick auf diese javadoc Link zu IContext, um zu sehen, was dieses Objekt tut. Javadoc Jetzt ist eine gute Zeit, um die zweite der drei wesentlichen Ressourcen eines JForex-Programmierers vorzustellen. Der JForex Javadoc ist die einzige aktuellste API-Dokumentation, die jedes Objekt und jede Methode der JForex API erläutert. Denken Sie daran wie ein Referenzhandbuch. Beachten Sie, dass, obwohl seine umfassende, die meisten der Erklärung ist sehr spärlich und möglicherweise unvollständig. IContext ist ein Kern-JForex-Objekt, um auf viele wichtige Komponenten des JForex-Systems zuzugreifen, wie zB die Bestell-Engine, die Diagramme, die Konsole, die Indikatoren. Du hast die Idee. Es ist wichtig Sie möchten in der Regel eine lokale Kopie davon behalten, da dies die einzige Zeit (in onStart) ist, dass dieses Objekt an Sie in IStrategy übergeben wird. OnStop (Zeile 26) Wie der Name schon sagt, wird diese Methode aufgerufen, sobald du einen Stop-Befehl an deine Strategie gesendet hast. Sie machen Ihre Programm-Nachbearbeitung wie Protokollierung und Spülung Daten hier. Nicht viel außergewöhnlich mit diesem. OnMessage (Zeile 18) Während wir wissen, wann onStart und onStop aufgerufen werden, ist onMessage eine asynchrone Methode, in der Sie nicht genau wissen, wann es laufen wird. Diese Methode wird aufgerufen, wenn der Dukascopy-Server Ihre Strategie eine Nachricht sendet. Zum Beispiel ruft der Server onMessage an, damit Sie wissen, dass Ihre Bestellung gefüllt ist. Sie erhalten und verarbeiten die Servernachricht, indem Sie auf das IMessage-Objekt zugreifen, das an Sie übergeben wird. Wichtig: Es gibt keine Garantie, dass Sie jede Nachricht erhalten, die an Ihre Strategie vom Server gesendet wird. Vielleicht ist dein Strategieprozess verstopft. Oder vielleicht hat deine Internetverbindung einen Schluckauf. Wenn Ihre Strategie onMessage nicht vom Server aus irgendeinem Grund angerufen wird, kann der Server nicht weniger kümmern und wird nicht überprüfen und nochmal versuchen. So tut es nichts kritisch wie die Verwaltung Ihrer Aufträge in onMessage onAccount (Zeile 22) Diese Methode wird aufgerufen, wenn Ihr Konto Informationen Update empfangen wird. Die Methode bietet Zugriff auf das IAccount-Objekt. Die Sie verwenden, um Ihre Kontoinformationen zu erhalten. Sagen Sie, wenn Sie eine offene Position haben, ändern sich Ihre Kontoinformationen bei jedem Tick, weil Ihr Eigenkapital Bargeld ist, das nicht realisiert ist. In diesem Fall wird onAccount alle 5 Sekunden vom Server angerufen, um zu vermeiden, dass Sie Ihre Strategie überschwemmen. Wichtiger: Das IAccount-Objekt ist nicht live mit Ihrem Konto im Server verbunden. Es ist nur eine Momentaufnahme deines Kontos. Zum Beispiel, wenn Sie eine lokale Kopie eines IAccount-Objekts behalten. Haben Sie etwas Handel, um Ihr Gleichgewicht zu ändern. Dann frage die gleiche IAccount für Kontostand Informationen, werden Sie nicht sehen, eine Änderung. Als solches, immer aktualisieren Sie Ihre lokale Kopie von IAccount innerhalb der onAccount-Methode, um Ihre Account-Informationen up-to-date für Ihre Strategien verwenden. Um fortgesetzt zu werden, sind onStop, onMessage und onAccount Methoden administrative Methoden für Ihre Strategie. Die letzten beiden Methoden, die gut diskutieren, onTick und onBar, ist, wo die Magie in einer Strategie passiert. Ich spare das Beste für das letzte in der nächsten Post. 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.


No comments:

Post a Comment