Tuesday 17 January 2017

Forex Github

API-Software IB-API Nicht kommerzielle Lizenz Diese IB-API-Lizenz (Lizenz) ist eine Vereinbarung zwischen Interactive Brokers LLC (IB) und Ihnen und regelt Ihre Nutzung des API-Codes. Wenn Sie auf die Schaltfläche I AGREE klicken, erkennen Sie an, dass Sie damit einverstanden sind. 0. Einleitung. IB hat Application Programm Interface (API) - Code entwickelt, um seinen Kunden zu ermöglichen, ihre eigenen internen firmeneigenen Softwaretools zu verwenden, um ihre Konten mit IB zu verwalten. Diese Lizenz ist nur für Benutzer gedacht, die den API-Code selbst verwenden wollen oder in Verbindung mit oder für die Entwicklung eigener, eigener, eigener Werkzeuge zur Verwaltung ihrer eigenen IB-Konten verwenden. Diese Lizenz ist NICHT für alle, die Softwareanwendungen entwickeln, die sie wünschen, a) an Dritte weiterzugeben oder b) Dritten einen indirekten finanziellen Vorteil zu gewähren (z. B. Provisionen). Wenn Sie eine Softwareanwendung für die im vorigen Satz beschriebenen Zwecke machen möchten, dann kontaktieren Sie bitte Shail Mangla bei opensourceinteractivebrokers. 1. Definitionen. 1.1. API-Code bedeutet der Clientcode für IBs Trader Workstation API, der Ihnen zur Verfügung gestellt wird. 1.2. Nicht-kommerzielle Zwecke bedeutet, dass API-Code von sich aus oder in Verbindung mit oder für die Entwicklung von Anwendungen, Programmen oder anderen Werkzeugen verwendet wird, die (a) eine Schnittstelle mit der IBs-Handelsplattform und (b) Ihnen Zugriff auf Ihre Kontoinformationen ermöglichen , Marktdaten zu analysieren, Analysen durchzuführen, Aufträge zu erfassen oder andere Transaktionen oder Funktionen im Zusammenhang mit Ihrem Konto bei IB durchzuführen. 1.3. Sie oder Ihre Person eine natürliche oder juristische Person, die Rechte aus dieser Lizenz ausübt. Für juristische Personen schließt Sie oder Ihr Unternehmen eine juristische Person ein, die von Ihnen kontrolliert, kontrolliert oder unter einer gemeinsamen Kontrolle steht mit Ihnen, bei der die Kontrolle (a) die direkte oder indirekte Befugnis zur Führung oder Führung dieser Einrichtung bedeutet Durch Vertrag oder anderweitig, oder (b) Besitz von fünfzig Prozent (50) oder mehr der ausstehenden Aktien oder des wirtschaftlichen Eigentums dieser Einheit. 2. Lizenzgewährung. 2.1. Vorbehaltlich der Bestimmungen dieser Lizenz gewährt Ihnen IB hiermit an dem Tag, an dem Sie diese Lizenz akzeptieren und den API-Code herunterladen, ein persönliches, gebührenfreies, nicht ausschließliches, nicht unterlizenzierbares, nicht übertragbares, eingeschränktes Recht und eine Lizenz Den API-Code ausschließlich für nichtkommerzielle Zwecke zu installieren, zu ändern und zu verwenden. 3. Einschränkungen. 3.1. Sie erkennen an und stimmen zu, dass Sie nur den API-Code für nichtkommerzielle Zwecke verwenden. Jede andere Verwendung des API-Codes ist ausdrücklich untersagt. 3.2. Sie müssen in allen Kopien des API-Codes das Urheberrecht und andere Eigentumsvermerke und Haftungsausschlüsse von IB, wie sie im API-Code erscheinen, beibehalten und reproduzieren und alle Hinweise im API-Code beibehalten, die auf diese Lizenz verweisen. 3.3. Sie erklären sich damit einverstanden, den API-Code nicht an Dritte weiterzugeben, zu verbreiten oder weiterzugeben. 3.4. Sie stimmen zu, dass Sie für die Dauer dieser Lizenz ein Konto bei IB pflegen. 3.5. Sie erklären sich damit einverstanden, die API für keinen Zweck zu verwenden, der gegen Gesetze oder Verordnungen verstößt, gegen jegliche Rechte irgendeiner Person, einschließlich aber nicht beschränkt auf Rechte an geistigem Eigentum, Persönlichkeitsrechte oder in irgendeiner Weise, die mit den Bestimmungen von IBs in Widerspruch steht Verwendung, Datenschutzbestimmungen oder diese Lizenz. 4. Eigentum an API-Code. 4.1. Soweit nicht ausdrücklich in diesem Dokument angegeben, besitzen IB oder dessen Lizenzgeber das Recht, das Eigentum und das Interesse an dem API-Code. 5. GEWÄHRLEISTUNGSAUSSCHLUSS. 5.1. Sie erklären sich einverstanden und erklären sich damit einverstanden, dass IB und seine Lizenzgeber keine Gewähr dafür bieten, dass der API-Code das Patent oder andere Rechte an geistigem Eigentum eines anderen Unternehmens nicht verletzt, obwohl IB die Lizenz für den API-Code gewährt. IB und ihre Lizenzgeber lehnen jede Haftung gegenüber Ihnen für Ansprüche ab, die von einer anderen Person oder Einrichtung aufgrund einer Verletzung von Rechten an geistigem Eigentum oder anderweitig verursacht wurden. 5.2. Der API-Code kann ganz oder teilweise vorab freigegebene, nicht getestete oder nicht vollständig getestete Arbeiten enthalten. Der API-Code kann Fehler enthalten, die zu Ausfällen oder Datenverlusten führen können und unvollständig sein können oder Ungenauigkeiten enthalten. Sie erkennen ausdrücklich an, dass die Nutzung des API-Codes oder eines Teils davon auf Ihrem alleinigen und vollständigen Risiko erfolgt. SIE STIMMEN ZU, DASS DER API-Code vorgesehen ist, wie und auf einem AS-AVAILABLE BASIS, ohne Gewährleistung irgendeiner Art, weder ausdrücklich noch stillschweigend, einschließlich, ohne Einschränkung, Garantien, dass die API CODE OF fehlerfrei ist, VERKÄUFLICH, NON - INFRINGING ODER FÜR EINEN BESTIMMTEN ZWECK. DIESER GEWÄHRLEISTUNGSAUSSCHLUSS KONSTITUTIERT EINEN WESENTLICHEN TEIL DIESER LIZENZ. KEINE NUTZUNG VON JEDEM API-CODE IST GENEHMIGT HEREUNDER AUSSER NACH DIESEM HAFTUNGSAUSSCHLUSS. 6. HAFTUNGSBESCHRÄNKUNG. 6.1. SIE STIMMEN ZU, DASS IB, SEINE TOCHTERGESELLSCHAFTEN UND SEINE LIZENZGEBER NICHT FÜR SIE UNTER WELCHER DER HAFTUNG FÜR DIREKTE, INDIREKTE, SPEZIELLE, FOLGE - ODER EXEMPLARISCHE SCHÄDEN IN VERBINDUNG MIT ODER DIE AUS ODER IM ZUSAMMENHANG MIT DER API HAFTET CODE ODER DIE NUTZUNG DER API CODE, EINSCHLIESSLICH DER HANDELS VERLUST, entgangener Gewinn, GESCHÄFTSVERLUST ODER DATENVERLUST ODER NICHT IB ODER SEINE VERTRETER VON WURDE ODER ERKENNEN, DASS DIE MÖGLICHKEIT SOLCHER VERLUSTE SIND AUSRICHTUNG. 7. Entschädigung. 7.1. Soweit gesetzlich zulässig, erklären Sie sich damit einverstanden, die IB, ihre verbundenen Unternehmen und ihre jeweiligen Direktoren, leitenden Angestellten, Mitarbeiter und Beauftragten von und gegen jegliche Ansprüche, Klagen, Klagen oder Verfahren sowie jegliche und, aus oder Einnahmen aus der (a) Ihre Nutzung des API-Code alle Verluste, Verbindlichkeiten, Schäden, Kosten und Aufwendungen (einschließlich angemessener Anwaltsgebühren) entstehend, (b) jede beliebige Anwendung mit der API-Code zu entwickeln, die ein Urheberrecht, Warenzeichen verletzt, Des Handelsgeheimnisses, des Handelskleides, des Patents oder anderer Rechte des geistigen Eigentums einer Person und (c) jede Nichteinhaltung dieser Lizenz durch Sie. 8. Kündigung. 8.1. Diese Lizenz und die folgenden Rechte werden automatisch beendet: (a) wenn Sie einen Begriff dieser Lizenz nicht einhalten und diesen Verstoß nicht innerhalb von 30 Tagen nach Kenntnisnahme dieser Verletzung beheben können, b) wenn Sie nein sind Länger als ein Kunde von IB oder (c) wenn Sie während der Laufzeit dieser Lizenz eine Klage gegen eine Patentverletzung gegen IB anfangen (vorausgesetzt, IB hat nicht erst eine Klage gegen eine Patentverletzung gegen Sie in diesem Fall eingeleitet). 8.2. Sie müssen alle Kopien des API-Codes bei Beendigung dieser Lizenz vernichten und den API-Code nicht in irgendeiner Form nach einer solchen Zerstörung behalten. 8.3. Die folgenden Abschnitte bleiben bestehen: 3, 4, 5, 6, 7, 8 und 9. 9. Allgemeines. 9.1. Sie erklären sich damit einverstanden, dass, wenn IB kein gesetzliches Recht oder Rechtsmittel ausübt oder vollstreckt, das in dieser Lizenz enthalten ist oder der IB im Rahmen eines anwendbaren Rechts zur Verfügung steht), dies nicht als formaler Verzicht auf IBs Rechte angesehen wird und dass diese Rechte oder Rechtsmittel noch für IB zur Verfügung stehen. 9.2. Wenn ein Gericht, das die Zuständigkeit für die Entscheidung über diese Angelegenheit hat, bestimmt, dass jede Bestimmung dieser Lizenz ungültig ist, wird diese Bestimmung aus dieser Lizenz entfernt, ohne den Rest dieser Lizenz zu beeinträchtigen. Die übrigen Bestimmungen dieser Lizenz bleiben weiterhin gültig und vollstreckbar. 9.3. Diese Lizenz stellt die gesamte rechtliche Vereinbarung zwischen Ihnen und IB dar und regelt Ihre Nutzung des API-Codes und ersetzt alle vorherigen Vereinbarungen zwischen Ihnen und IB in Bezug auf den API-Code vollständig. 9.4. Wenn Sie diese Vereinbarung im Namen Ihres Arbeitgebers oder einer anderen Einrichtung abschließen, stellen Sie sicher, dass Sie die volle gesetzliche Befugnis haben, Ihren Arbeitgeber oder diese Stelle an diesen Vertrag zu binden. 9.5. Sie dürfen die in dieser Lizenz gewährten Rechte nicht ohne vorherige schriftliche Zustimmung von IBs abtreten. 9.6. Diese Lizenz unterliegt den Gesetzen des Staates Connecticut ohne Rücksicht auf ihre Kollisionsnormen. Sie erklären sich damit einverstanden, der ausschließlichen Zuständigkeit der Gerichte in der Grafschaft Fairfield, Connecticut, beizutreten, um Rechtsstreitigkeiten aus dieser Lizenz zu lösen. Ungeachtet dessen erklären Sie sich damit einverstanden, dass IB berechtigt ist, Unterlassungsansprüche in einer Jurisdiktion zu beantragen. QSForex ist eine Open-Source-ereignisgetriebene Backtesting - und Live-Handelsplattform für den Einsatz in Devisenmärkten, die sich derzeit in einem Alpha-Staat befinden. Es wurde als Teil der Forex Trading Diary-Serie auf QuantStart erstellt, um die systematische Trading-Community mit einem robusten Trading-Engine, die einfache Forward-Strategie-Implementierung und Tests ermöglicht. Die Software wird unter einer zulässigen MIT-Lizenz bereitgestellt (siehe unten). Open-Source - QSForex wurde unter einer äußerst zulässigen Open-Source-MIT-Lizenz freigegeben, die eine vollständige Nutzung sowohl in der Forschung als auch in kommerziellen Anwendungen erlaubt, ohne Einschränkung, jedoch ohne jegliche Garantie. Free - QSForex ist völlig kostenlos und kostet nichts zum Herunterladen oder verwenden. Zusammenarbeit - Da QSForex Open Source ist, arbeiten viele Entwickler zusammen, um die Software zu verbessern. Neue Funktionen werden häufig hinzugefügt. Alle Fehler werden schnell bestimmt und behoben. Software-Entwicklung - QSForex ist in der Python-Programmiersprache für einfache Cross-Plattform-Unterstützung geschrieben. QSForex enthält eine Suite von Unit-Tests für den Großteil seines Berechnungscodes und neue Tests werden ständig für neue Funktionen hinzugefügt. Event-Driven Architecture - QSForex ist vollständig ereignisgesteuert, sowohl für Backtesting als auch für Live-Trading, was zu einem direkten Übergang von Strategien von einer Forschungstestphase zu einer Live-Trading-Implementierung führt. Transaktionskosten - Spread-Kosten sind standardmäßig für alle BackTest-Strategien enthalten. Backtesting - QSForex bietet intraday Tick-Auflösung mehrtägigen Multi-Währungs-Paar Backtesting. Trading - QSForex unterstützt derzeit den Live-Intraday-Handel mit der OANDA Brokerage API über ein Portfolio von Paaren. Performance Metrics - QSForex unterstützt derzeit grundlegende Performance-Messung und Equity-Visualisierung über die Visualisierungsbibliotheken Matplotlib und Seaborn. Installation und Verwendung 1) Besuchen Sie oanda und richten Sie ein Konto ein, um die Anmeldeinformationen für die API-Authentifizierung zu erhalten, die Sie für den Live-Handel benötigen. Ich erkläre, wie man dies in diesem Artikel: quantstart Artikel Forex-Trading-Tagebuch-1-Automatisierte-Forex-Trading-mit-der-OANDA-API. 2) Klonen Sie diese git-Repository an einem geeigneten Ort auf Ihrem Rechner mit dem folgenden Befehl in Ihrem Terminal: git clone github mhallsmoore qsforex. git. Alternativ können Sie die ZIP-Datei des aktuellen Master-Zweigs bei github mhallsmoore qsforex archive master. zip herunterladen. 3) Erstellen Sie einen Satz von Umgebungsvariablen für alle Einstellungen, die in der Datei settings. py im Stammverzeichnis der Anwendung gefunden wurden. Alternativ können Sie Ihre spezifischen Einstellungen durch Überschreiben der Aufrufe von os. environ. get (.) Für jede Einstellung festlegen: 4) Erstellen Sie eine virtuelle Umgebung (virtualenv) für den QSForex-Code und verwenden Sie pip, um die Anforderungen zu installieren. Zum Beispiel in einem Unix-basierten System (Mac oder Linux) können Sie ein solches Verzeichnis wie folgt erstellen, indem Sie die folgenden Befehle im Terminal eingeben: Dadurch wird eine neue virtuelle Umgebung zur Installation der Pakete erstellt. Wenn Sie das QSForex-Git-Repository in ein Beispielverzeichnis wie z. B. Projekte qsforex heruntergeladen haben (ändern Sie dieses Verzeichnis, wo Sie QSForex installiert haben), dann müssen Sie die folgenden Befehle ausführen, um die Pakete zu installieren: Dies wird einige Zeit dauern wie NumPy , SciPy, Pandas, Scikit-Learn und Matplotlib zusammengestellt werden. Es gibt viele Pakete, die für diese Arbeit erforderlich sind, also werfen Sie einen Blick auf diese beiden Artikel für weitere Informationen: Sie müssen auch einen symbolischen Link aus Ihrem Site-Pakete-Verzeichnis zu Ihrem QSForex-Installationsverzeichnis erstellen, um in der Lage sein zu rufen Import qsforex innerhalb des Codes. Dazu benötigen Sie einen Befehl, der folgend ähnelt: Stellen Sie sicher, dass Sie die Projekte qsforex in das Installationsverzeichnis und die vvv qsforex lib python2.7-Site-Pakete in Ihr virtualenv-Sitepaketverzeichnis ändern. Sie können nun die folgenden Befehle korrekt ausführen. 5) In diesem Stadium, wenn Sie einfach wollen, um Praxis oder Live-Handel, dann können Sie Python Handel trading. py laufen. Die die Standardstrategie von TestStrategy verwenden wird. Dies kauft einfach oder verkauft ein Währungspaar alle 5. Tick. Es ist nur zum Testen - verwenden Sie es nicht in einer Live-Trading-Umgebung Wenn Sie eine nützliche Strategie zu erstellen, dann erstellen Sie einfach eine neue Klasse mit einem beschreibenden Namen, z. MeanReversionMultiPairStrategy und sicherstellen, dass es eine calculatesignals-Methode hat. Sie müssen diese Klasse der Paar-Liste sowie die Ereignisse Warteschlange, wie im Handel trading. py passieren. Beachten Sie bitte die Strategie strategy. py für Details. 6) Zur Durchführung von Backtesting ist es notwendig, simulierte Forex-Daten zu erzeugen oder historische Tickdaten herunterzuladen. Wenn Sie einfach die Software ausprobieren möchten, ist der schnellste Weg, einen Beispiel-Backtest zu generieren, einige simulierte Daten zu generieren. Das aktuelle Datenformat von QSForex ist das gleiche wie das von DukasCopy Historical Data Feed bei dukascopy swiss english marketwatch historische. Um einige historische Daten zu erzeugen, stellen Sie sicher, dass die CSVDATADIR-Einstellung in settings. py auf ein Verzeichnis festgelegt ist, in dem die historischen Daten gespeichert werden sollen. Sie müssen dann generatesimulatedpair. py ausführen. Die sich unter dem Skriptverzeichnis befindet. Es erwartet ein einziges Befehlszeilenargument, das in diesem Fall das Währungspaar im BBBQQQ-Format ist. Zum Beispiel: In diesem Stadium wird das Skript hartcodiert, um für Januar 2014 einzelne Monate zu erstellen. Das heißt, Sie sehen in Ihrem CSVDATADIR für alle Werktage in der Liste einzelne Dateien des Formats BBBQQQYYYYMMDD. csv (zB GBPUSD20140112.csv) In diesem Monat. Wenn Sie das Monatsjahr der Datenausgabe ändern möchten, ändern Sie einfach die Datei und wiederholen Sie den Vorgang. 7) Nachdem die historischen Daten erzeugt wurden, ist es möglich, einen Backtest durchzuführen. Die Backtest-Datei selbst ist im backtest backtest. py gespeichert. Aber das enthält nur die Backtest-Klasse. Um einen Backtest auszuführen, müssen Sie diese Klasse instanziieren und mit den notwendigen Modulen versorgen. Der beste Weg, um zu sehen, wie dies getan wird, ist, die Beispiel Moving Average Crossover-Implementierung in der Beispiele mac. py-Datei zu betrachten und diese als Vorlage zu verwenden. Dies nutzt die MovingAverageCrossStrategy, die in der Strategie strategy. py gefunden wird. Diese Voreinstellung bezieht sich auf den Handel sowohl GBP USD als auch USD USD, um mehrere Währungspaare anzuzeigen. Es verwendet Daten, die in CSVDATADIR gefunden werden. Führen Sie zum Ausführen des Beispiel-Backtests einfach Folgendes aus: Dies wird einige Zeit in Anspruch nehmen. Auf meinem Ubuntu-Desktopsystem zu Hause, mit den historischen Daten, die über generatesimulatedpair. py generiert wurden. Es dauert etwa 5-10 Minuten zu laufen. Ein großer Teil dieser Berechnung erfolgt am Ende des eigentlichen Backtests, wenn der Drawdown berechnet wird. Bitte denken Sie daran, dass der Code nicht aufgelegt hat. Bitte lassen Sie ihn bis zur Fertigstellung. 8) Wenn Sie die Leistung des Backtest zu betrachten Sie einfach output. py verwenden können, eine Equity-Kurve, Zeit gibt (dh tick-to-Tick-Returns) und einem Drawdown Kurve zu lesen: Und das ist es in diesem Stadium sind Sie bereit, beginnen Sie Ihre eigenen Backtests zu schaffen durch Änderung oder Strategien in den Bereichen Strategie strategy. py anhängt und realen Daten unter Verwendung von Dukascopy (Dukascopy Schweizer Englisch Market historische) heruntergeladen werden. Wenn Sie irgendwelche Fragen über die Installation haben, dann fühlen Sie bitte sich frei, mich an mikequantstart zu mailen. Wenn Sie irgendwelche Fehler oder andere Probleme, die Sie vielleicht denken aufgrund der Code-Basis sein, speziell, fühlen sich frei, hier ein Github Ausgabe zu öffnen: Github mhallsmoore qsforex Fragen Copyright (c) 2015 Michael Hallen-Moore Hiermit wird die Erlaubnis erteilt, kostenlos, jeder, der eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die Software) zu erhalten, die in der Software ohne Einschränkung zu umgehen, zu verwenden, einschließlich, ohne Einschränkung das Recht, zu kopieren, zu ändern, fusionieren, zu veröffentlichen, zu verbreiten, weiter lizenzieren und oder zu verkaufen Der Software und gestattet den Personen, denen die Software zur Verfügung gestellt wird, unter den folgenden Bedingungen zu gestatten: Der oben genannte Urheberrechtshinweis und diese Einwilligungserklärung sind in allen Kopien oder wesentlichen Teilen der Software enthalten. Die Software wird als vorgesehen, ohne Gewährleistung irgendeiner Art, DIREKT ODER INDIREKT, EINSCHLIESSLICH, ABER NICHT AUF DIE GARANTIEN DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND NICHTVERLETZUNG. IN KEINEM FALL SIND DIE AUTOREN ODER COPYRIGHTINHABER HAFTUNG FÜR SCHADEN ODER ANDERE HAFTUNG, WEDER IN EINEM VERTRAG, SCHULD ODER AUF ANDERE WEISE, DIE AUS ODER IN VERBINDUNG MIT DER SOFTWARE ODER DER NUTZUNG ODER EINER ANDEREN IN DER SOFTWARE. Forex Trading Disclaimer Trading Devisen auf Margin trägt ein hohes Maß an Risiko, und kann nicht für alle Anleger geeignet. Die Wertentwicklung in der Vergangenheit ist kein Hinweis auf zukünftige Ergebnisse. Der hohe Grad der Hebelwirkung kann sowohl gegen Sie als auch für Sie arbeiten. Vor der Entscheidung, in Devisen zu investieren, sollten Sie sorgfältig überlegen Sie Ihre Anlageziele, Erfahrung und Risikobereitschaft. Die Möglichkeit besteht, dass Sie einen Verlust von einigen oder allen Ihrer anfänglichen Investition zu erhalten und daher sollten Sie nicht investieren Geld, das Sie sich nicht leisten können, zu verlieren. Sie sollten sich bewusst sein, alle Risiken im Zusammenhang mit Devisenhandel und suchen Rat von einem unabhängigen Finanzberater, wenn Sie irgendwelche Zweifel haben.


No comments:

Post a Comment