Wednesday, 22 March 2017

Forex Github

Forex Strategy Builder Professional. Fast und einfache Strategie-Erstellung. Mehrere Tests. Fully-funktionale Expert Advisors. Wy Forex Strategy Builder Professsional ist egal. Ich bin glücklich mit meinem Ansatz extrem niedriges Risiko, und viele der Strategien sind ausgezeichnet - FSB ist ein fantastisches Software, ich kann dir noch danken genug für die Erstellung Ich bin derzeit aktiv mit mehr als 40 Strategien für ein paar Monate und habe sehr spannende Erfolge so weit. Ich habe gerade eine kostenlose Testversion gestartet gestern, 24 Stunden zurück und ich habe Hat bereits eine EA in MT4 geladen und ein gewinnender Handel wurde auch erzeugt Erstaunliche Software und wirklich fantastische Unterstützung bei Mr Popov so wiling zu helfen, ich habe auch eine kostenlose Testversion mit einer anderen Software gemacht und auch nach einer Woche nicht in der Lage, etwas zu verstehen Die ganze Erfahrung Ist fantastisch. Ich programmiere und teste einen Experte für etwa zwei Monate auf MT4 Ich mache das für 2 Tage mit dem Strategy Builder Es spart mir eine große Menge an time. Even die hochpreisigen Software wird Schwierigkeiten haben, diese ein FSB Pro bereits zu treffen Bieten die meisten Features von einer der ähnlichen Software, egal der Preis. David MacKay BlaiserBoy. I erinnere mich an den Anfang und frühen Tagen der FSB und FST Entwicklung Es war eine enorme Entwicklung in der Tat Die neuesten FSB Pro ist weit über meine Erwartungen Vor einigen Jahren Ich kann mir nicht vorstellen, dass ich so eine tolle Software in meinem Computer ausführen kann. Ich möchte einfach nur zu deinem brillanten Feature namens Strategy Generator gratulieren. Dies ist, was deine Software von allen deinem Konkurrenten trennen. Backtest mit MT4 ist sloooooooooooooooow ich sehr viel mehr Wie Blitzgeschwindigkeit von FSB. Ich bin ungarisch, ich arbeite in Korea und Ihre Software sparen Sie mir eine Menge Arbeit in Back-Tests und Handel Sehr präzise Arbeit, einwandfreie Programmierung, ich schätze es, halten up. Mr Botond Molnar. First von allen, Vielen Dank für Popov für Ihre Entwicklung und Leidenschaft, die diese Software macht, möchte ich Ihnen sagen, dass das Leben meiner Familie drastisch gezwungen ist, weil Sie Ihre einzigartigen Geschenke programmieren, die etwas so Besonderes für uns programmieren. Was ich wirklich in Forex Strategy Builder mag, ist die Fähigkeit zu Sehen Sie die Ergebnisse sofort ohne die Notwendigkeit, klicken Sie auf die Schaltfläche Start in MetaTrader immer und immer wieder Aber es ist so schnell, dass ich immer frage mich, ob das Ergebnis ist real oder nicht. Forex Strategy Builder bietet auch eine Strategie-Generator, der sogar eine ganze Neuling zu schaffen ermöglicht Eine Strategie mit dem Klick auf eine Schaltfläche Nachdem die Strategie generiert wurde, können Sie die ausführliche Erläuterung in der Übersicht lesen. Forex Strategy Builder Professional nutzt detaillierte technische Analyse und professionelle Tools, um Forex Trading Strategien zu sezieren, bietet Ihnen eine Strategie Editor , Generator und Optimierer, um Ihren Marktplan von action. Alexandra Savin auf SoftPedia. I bin erstaunt, tatsächlich, demütigt, indem sie sehen, wie gut ist diese Software. Forex Strategy Builder Professional im Vergleich zu MetaTrader. Forex Strategy Builder Professional FSB Pro ist ein Full - Feature-Plattform für die Erstellung, Backtesting und Analyse von Forex-Strategien und Export von Expert Advisors Es ist nicht mit jedem einzelnen Broker verbunden Das Programm verwendet MetaTrader 4 oder MetaTrader 5 für den Handel an einen Makler Ihrer Wahl. Forex Strategy Builder Professional ist die perfekte Ergänzung zu MetaTrader. API Software. IB API Nicht-kommerzielle Lizenz. Diese IB API Nicht-kommerzielle Lizenz Lizenz ist eine Vereinbarung zwischen Interactive Brokers LLC IB und Sie, und regelt Ihre Nutzung der API-Code Durch Klicken auf die I-STIMME-Taste unten, erkennen Sie, dass Sie zustimmen Um durch diese Vereinbarung rechtlich gebunden zu sein.0 Einleitung IB hat Anwendungsprogramm-Schnittstellen-API-Code entwickelt, um seinen Kunden zu erlauben, ihre eigenen internen proprietären Software-Tools bei der Verwaltung ihrer Konten mit IB zu verwenden Diese Lizenz ist nur für Benutzer gedacht, die den API-Code verwenden möchten Von sich selbst oder im Zusammenhang mit oder für die Entwicklung ihrer eigenen internen proprietären Werkzeuge, um ihre eigenen IB-Konten zu verwalten Diese Lizenz ist NICHT für jedermann, der Software-Anwendungen entwickelt, die sie an Dritte weitergeben möchten, Oder b geben Drittanbietern einen indirekten finanziellen Nutzen zB Provisionen Wenn Sie eine Softwareanwendung für die im vorherigen Satz beschriebenen Zwecke machen möchten, wenden Sie sich bitte an Shail Mangla at.1 Definitions.1 1 API Code bedeutet den Clientcode für IB s Trader Workstation API, die Ihnen zur Verfügung gestellt wird.1 2 Nicht kommerzielle Zwecke bedeutet, dass API Code selbst verwendet wird, wie es ist oder in Verbindung mit oder für die Entwicklung von Anwendungen, Programmen oder anderen Arbeiten, die eine Schnittstelle mit IB s Handel Plattform und b erlauben Ihnen, auf Ihre Kontoinformationen zuzugreifen, auf Marktdaten zuzugreifen, Analysen durchzuführen, Aufträge einzugeben oder sonstige Transaktionen oder Funktionen im Zusammenhang mit Ihrem Konto bei IB.1 durchzuführen. 3 Sie oder Ihr bedeutet eine Person oder eine juristische Person Ausübung von Rechten aus dieser Lizenz Für juristische Personen, die Sie oder Ihre Person einnehmen, die kontrolliert, kontrolliert wird oder unter einer gemeinsamen Kontrolle steht, Sie, wo die Kontrolle bedeutet, dass die Macht, direkt oder indirekt, die Richtung oder die Verwaltung dieser Art verursacht Entität, ob durch Vertrag oder anderweitig, oder b Eigentum an fünfzig Prozent 50 oder mehr der ausstehenden Aktien oder wirtschaftliches Eigentum an einer solchen Einheit.2 Lizenz Zuschuss.2 1 Vorbehaltlich der Bedingungen dieser Lizenz gewährt IB hiermit, wirksam auf die Datum Sie akzeptieren diese Lizenz und laden den API Code, ein persönliches, gebührenfreies, nicht exklusives, nicht unterlizenzierbares, nicht übertragbares, eingeschränktes Recht und Lizenz zur Installation, Änderung und Nutzung des API Code ausschließlich für nicht kommerzielle Zwecke. 3 Einschränkungen.3 1 Sie erkennen an und stimmen zu, dass Sie nur den API-Code für nichtkommerzielle Zwecke verwenden. Alle anderen Verwendungen des API-Codes sind ausdrücklich verboten.3 2 Sie müssen in allen Kopien des API-Codes das Urheberrecht und andere verbleiben und reproduzieren Eigentumsvermerke und Haftungsausschlüsse von IB, wie sie im API-Code erscheinen, und halten alle Hinweise im API-Code, die auf diese Lizenz verweisen, intakt. 3 Sie erklären sich damit einverstanden, den API-Code nicht an Dritte weiterzugeben, zu verbreiten oder weiterzugeben.3 4 Sie erklären sich damit einverstanden, dass Sie für die Dauer dieser Lizenz ein Konto bei IB beibehalten werden. 5 Sie erklären sich damit einverstanden, die API nicht für irgendeinen Zweck zu verwenden, der gegen jegliche Gesetze oder Bestimmungen verstößt, jegliches Recht einer Person, einschließlich aber nicht beschränkt auf geistiges Eigentum Rechte, Rechte der Privatsphäre oder Persönlichkeitsrechte oder in irgendeiner Weise, die mit den Nutzungsbedingungen von IB, der Datenschutzerklärung oder dieser Lizenz unvereinbar sind.4 Besitz von API Code.4 1 Soweit nicht ausdrücklich hierin angegeben, besitzen IB oder seine Lizenzgeber Alle Rechte, Titel und Interesse an und an den API Code.5 HAFTUNGSAUSSCHLUSS.5 1 Sie erklären ausdrücklich und stimmen zu, dass IB und die Lizenzgeber zwar die Lizenz für den hierin enthaltenen API-Code erteilt haben. IB und seine Lizenzgeber geben keine Zusicherungen, dass der API Code Verletzt nicht das Patent oder andere geistige Eigentumsrechte eines anderen Unternehmens IB und seine Lizenzgeber haften jegliche Haftung gegenüber Ihnen für Ansprüche, die von einer anderen Person oder Einrichtung aufgrund einer Verletzung von Rechten an geistigem Eigentum oder anderweitig verursacht wurden. 2 Der API Code kann in Ganz oder teilweise vor der Freigabe, ungetestete oder nicht vollständig getestete Arbeiten Der API Code kann Fehler enthalten, die zu Ausfällen oder Datenverlust führen können und unvollständig sein oder Ungenauigkeiten enthalten können. Sie erklären ausdrücklich die Zustimmung zu diesem API Code oder Jeder Teil davon, ist auf Ihr alleiniges und gesamtes Risiko Sie vertreten und stoßen darauf, dass der API-CODE so gut wie möglich auf eine gleichwertige oder nicht vertretene, aber ohne vorherige schriftliche, aber auch ohne Einschränkung vorgesehene GARANTIE WERDEN KANN API-CODE IST FREI VON MÄNGELN, MERCHANTABLE, NICHTVERLETZUNG ODER FIT FÜR EINEN BESTIMMTEN ZWECK DIESER GEWÄHRLEISTUNGSGEBIET VERFASSEN EINEN WESENTLICHEN TEIL DIESER LIZENZ KEINE VERWENDUNG EINER API-CODE IST DURCH DIESE HAFTUNGSAUSSCHLUSS AUSGESTATTET 6. HAFTUNGSBESCHRÄNKUNG.6 1 SIE VERSTEHEN UND STIMMEN DARAUF, DASS ES, IHRE MITGLIEDER UND IHRE LIZENZGEBÜHREN NICHT EINE HAFTUNG FÜR IRGENDWIE DIREKTE, INDIREKTE, ZUFÄLLIGE, SPEZIELLE, FOLGESCHÄDEN ODER EXEMPLARISCHE SCHÄDEN IN VERBINDUNG ODER DURCHGEFÜHREN ODER BEZUG AUF DIE API HAFTBAR HABEN CODE ODER DIE NUTZUNG DES API-CODES, EINSCHLIESSLICH EINES HANDELSVERLUSTES, VERLUST DES GEWINNES, VERLUSTES DES GESCHÄFTS ODER VERLUSTES DER DATEN, ODER NICHT IB ODER IHRE REPRÄSENTATIVEN HABEN ODER SOLLTEN DIE MÖGLICHKEIT EINER SOLCHEN VERLUSTE AUSGEFÜHRT WERDEN ARISING.7 Entschädigung.7 1 Soweit gesetzlich zulässig, erklären Sie sich damit einverstanden, die IB, ihre verbundenen Unternehmen und ihre jeweiligen Direktoren, Beamten, Angestellten und Beauftragten von und gegen alle Ansprüche, Handlungen, Anzüge oder sonstigen Personen zu verteidigen, zu entschädigen und zu haften Verfahren, sowie alle Verluste, Verbindlichkeiten, Schäden, Kosten und Aufwendungen einschließlich angemessener Anwaltsgebühren, die sich aus oder aus der Nutzung des API-Codes ergeben, b jede Anwendung, die Sie mit dem API Code entwickeln, der gegen Urheberrechte, Markenzeichen verstößt , Handelsgeheimnis, Handelsbekleidung, Patent oder sonstiges Recht des geistigen Eigentums einer Person und c jede Nichteinhaltung durch Sie mit dieser Lizenz.8 Kündigung.8 1 Diese Lizenz und die hierin gewährten Rechte werden automatisch beendet, wenn Sie nicht einverstanden sind Mit jedem Begriff dieser Lizenz und nicht zu heilen eine solche Verletzung innerhalb von 30 Tagen nach der Kenntnis von dieser Verletzung b, wenn Sie nicht mehr ein Kunde von IB oder c sind, wenn Sie, zu jeder Zeit während der Laufzeit dieser Lizenz, eine Klage beginnen Für Patentverletzung gegen IB, vorausgesetzt, dass IB erstmals keine Klage gegen Patentverletzung gegen Sie in diesem Fall eingeleitet hat.8 2 Sie müssen alle Kopien des API-Codes nach Beendigung dieser Lizenz vernichten und den API-Code in keiner Form behalten Nach einer solchen Zerstörung.8 3 Die folgenden Abschnitte überleben eine Kündigung 3, 4, 5, 6, 7, 8 und 9,9 1 Sie stimmen zu, dass, wenn IB kein Rechtsanspruch oder Rechtsbehelf ausübt oder geltend macht, das in dieser Lizenz enthalten ist Der IB nach dem anwendbaren Recht zur Verfügung steht, wird dies nicht als ein förmlicher Verzicht auf die Rechte des IB gelten, und dass diese Rechte oder Rechtsbehelfe weiterhin für IB.9 verfügbar sind. 2 Wenn ein Gericht, das zuständig ist, darüber zu entscheiden, In diesem Fall ist festzustellen, dass eine Bestimmung dieser Lizenz ungültig ist, dann 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 das Ganze dar Rechtliche Vereinbarung zwischen Ihnen und IB und regelt Ihre Nutzung des API-Codes und ersetzt alle vorherigen Vereinbarungen zwischen Ihnen und IB in Bezug auf den API-Code.9 4 Wenn Sie diese Vereinbarung im Namen Ihres Arbeitgebers oder einer anderen Einrichtung abschließen, Sie vertreten und garantieren, dass Sie die volle gesetzliche Befugnis haben, Ihren Arbeitgeber oder diese Einrichtung an diese Vereinbarung zu binden. 5 5 Sie dürfen die in dieser Lizenz erteilten Rechte nicht ohne vorherige schriftliche Zustimmung von IB begeben.9 6 Diese Lizenz unterliegt den Gesetzen Des Staates Connecticut ohne Rücksicht auf seine Konflikte der Gesetze Bestimmungen Sie verpflichten sich, die ausschließliche Zuständigkeit der Gerichte in der Grafschaft von Fairfield, Connecticut, um alle rechtlichen Angelegenheiten, die aus dieser Lizenz zu lösen, zu unterwerfen. Unabhängig davon stimmen Sie zu, dass IB ist Erlaubt, um Unterlassungsansprüche in jeder Gerichtsbarkeit zu beantragen. Forex Trading Diary 3 - Open Sourcing der Forex Trading System. In heute s Eintrag der Forex Trading Diary Ich möchte die längerfristigen Plan für die Forex Trading System zu diskutieren Darüber hinaus möchte ich skizzieren Wie ich Python s Dezimal-Datentyp verwendet habe, um Berechnungen genauer zu machen. Bisher haben wir mit der OANDA Rest API experimentiert, um zu sehen, wie es mit der API von Interactive Brokers verglichen wurde. Wir haben auch gesehen, wie man einfügt Ein grundlegendes Portfolio Replikationselement als der erste Schritt zu einem richtigen Event-driven Backtesting System Ich habe auch einige hilfreiche Kommentare zu beiden früheren Artikel 1 und 2, was darauf hindeutet, dass viele von Ihnen sind scharf darauf, ändern und erweitern den Code selbst. Open Sourcing Das Forex Trading System. Für die oben genannten Gründe habe ich beschlossen, Open-Source-Forex Trading System Was bedeutet dies bedeutet, dass alle aktuellen und zukünftigen Code zur Verfügung stehen kostenlos, unter einer liberalen MIT Open-Source-Lizenz, auf der Github Versionskontrolle Website auf der folgenden URL. Für diejenigen von Ihnen, die Git und Github vor verwendet haben, werden Sie in der Lage zu git Klon der Repo und starten Sie es für Ihre eigenen Zwecke zu ändern. Das QuantStart Automated Forex Trading System ist jetzt Open-Source unter Eine liberale MIT-Lizenz Sie finden den neuesten Code auf Github unter dem qsforex Repository at. For diejenigen von Ihnen, die neu sind, um Quellversion Kontrolle werden Sie wahrscheinlich wollen, um zu lesen, wie git und Versionskontrolle im Allgemeinen arbeitet mit dem fantastischen kostenlosen ebook Pro Git Es lohnt sich, einige Zeit damit zu lernen, Quellcode zu kontrollieren, da es Ihnen eine riesige Menge an künftigen Kopfschmerzen ersparen wird, wenn Sie viel Zeit für die Programmierung und Aktualisierung von Projekten verbringen. Der schnelle Start für ein Ubuntu-System ist, git zu installieren Müssen Sie ein Verzeichnis für das qsforex-Projekt erstellen, um das Projekt von der Github-Website zu betreten und zu klonen. In diesem Punkt müssen Sie eine virtuelle Umgebung erstellen, in der der Code ausgeführt werden soll. Sie müssen dann die Anforderungen hier installieren Wird eine gewisse Zeit in Anspruch nehmen. Schließlich musst du einen symbolischen Link in deiner virtuellen Umgebung von Python erstellen, damit du den Import qsforex in deinen Code eintippst und ihn ausführen kannst. Wie ich in den vorherigen Einträgen erwähnt habe, musst du die notwendigen Umgebungsvariablen erstellen Ihre OANDA-Authentifizierung Anmeldeinformationen Bitte sehen Sie Tagebuch Eintrag 2 für Anweisungen, wie dies zu tun. Bitte beachten Sie die README mit dem Repo verbunden, wie es enthält Installationsanweisungen, einen Haftungsausschluss und eine Garantie über die Verwendung des codes. Da die Software in alpha ist Modus wird diese Anleitung im Laufe der Zeit einfacher werden. Insbesondere werde ich versuchen, das Projekt in ein Python-Paket zu verpacken, damit es problemlos per Pip installiert werden kann. Wenn Sie Fragen zum Installationsverfahren haben, dann zögern Sie bitte nicht Mailen Sie mich auf. Longer-Term Plan. Die Philosophie des Forex Trading System, wie mit dem Rest der QuantStart-Website, ist zu versuchen und imitieren realen Handel so viel wie möglich in unserem Backtesting Dies bedeutet, dass die Details, die oft sind Ausgeschlossen von mehr forschungsorientierten Backtesting-Situationen Latenz, Server-Ausfälle, Automatisierung, Überwachung, realistische Transaktionskosten werden alle in die Modelle aufgenommen werden, um uns eine gute Vorstellung davon zu geben, wie gut eine Strategie wahrscheinlich ist. Da wir Zugriff auf Tick-Daten haben werden Bieten Sie bitte Zeitstempel werden wir in der Lage sein, die Ausbreitung in die Transaktionskosten zu integrieren. Wir können auch Schlupf modellieren. Es ist weniger aufrichtig, Marktwirkungen zu modellieren, obwohl dies bei kleineren Handelsbeträgen weniger ein Anliegen ist. Zusätzlich zu den Transaktionskosten wollen wir modellieren Robustes Portfoliomanagement mit Risikoüberlagerungen und Positionsgrößen. So, was derzeit im Forex Trading System enthalten ist. Event-Driven Architecture - Das Forex Trading System wurde als Event-driven System von Grund auf entworfen, wie dies ist wie Ein Intraday-Trading-System wird in einer Live-Umgebung implementiert werden. Price Streaming - Wir haben eine grundlegende Preis Streaming-Objekt Dies derzeit behandelt Abonnement nur ein einziges Paar, aber wir können dies leicht ändern, um mehrere Währungspaare abonnieren. Signal Generation - Wir können Überhandeln strategische Strategien, die direkt auf der Vergangenheit und aktuelle Tick-Preise basieren, mit dem Strategy-Objekt, das SignalEvent-Objekte erzeugt. Order Execution - Wir haben ein naives Auftragsausführungssystem, das blindlings Aufträge aus dem Portfolio an OANDA sendet. Mit blindem Ich meine, dass es kein Risikomanagement gibt Oder Positionsbestimmung durchgeführt werden, noch jede algorithmische Ausführung, die zu reduzierten Transaktionskosten führen könnte. GBP Basiswährung - Um die Dinge einfach zu halten, habe ich nur das System für GBP Basiswährung geschrieben Dies ist vielleicht der wichtigste Aspekt zu ändern, wie viele Von Ihnen haben Praxis-Konten in USD, EUR, CAD, JPY, AUD und NZD. GBP USD Trading - Ich wählte das Kabel als das Währungspaar, um die ursprüngliche Position und Portfolio-Objekte mit Handling mehrere Währungspaare zu testen ist ein wichtiger nächster Schritt Dies erfordert eine Änderung der Positions - und Portfolio-Berechnungen. Decimal Handling - Jedes Produktionspartner muss die Währungsberechnungen korrekt handhaben. Insbesondere sollten Währungswerte nicht als Gleitkommadatentypen gespeichert werden, da sich die Rundungsfehler ansammeln. Bitte sehen Sie diesen fantastischen Artikel Auf Gleitkomma-Darstellungen für mehr Details. Long Short Trading - Zwischen Tagebucheinträgen 2 und 3 habe ich die Möglichkeit, ein Währungspaar kurzfristig zu verkürzen, im Gegensatz zu nur in der Lage zu gehen, entscheidend, dies ist auch Einheit getestet. Lokal Portfolio Handling - In meinem Meinung, die einen Backtest durchführt, der die Strategie-Performance aufgrund unrealistischer Annahmen aufbläst, ist am besten ärgerlich und äußerst unrentabel im schlimmsten. Ein lokales Portfolio-Objekt vorstellen, das die OANDA-Berechnungen repliziert, bedeutet, dass wir unsere internen Berechnungen bei der Durchführung des Praxishandels überprüfen können, was uns mehr Vertrauen schenkt Wenn wir später dieses gleiche Portfolio-Objekt für Backtesting auf historische Daten verwenden. Unit Tests für Position Portfolio - Während ich habe es nicht direkt in Tagebucheinträge 1 und 2 erwähnt, habe ich eigentlich einige Unit-Tests für die Portfolio - und Positionsobjekte geschrieben Sind so entscheidend für die Berechnungen der Strategie, man muss sehr zuversichtlich sein, dass sie wie erwartet ausführen Ein zusätzlicher Vorteil solcher Tests ist, dass sie die zugrunde liegende Berechnung modifizieren lassen, so dass, wenn alle Tests noch bestehen, können wir zuversichtlich sein Das Gesamtsystem wird sich weiterhin wie erwartet verhalten. In diesem Stadium fehlt dem Forex Trading System die folgende Funktionalität. Slippage Handling - Das System generiert derzeit eine Menge Schlupf aufgrund der hochfrequenten Natur der Tickdaten, die von OANDA bereitgestellt werden Bedeutet, dass der lokal berechnete Portfolio-Saldo nicht die von OANDA berechnete Saldo widerspiegelt. Bis zur korrekten Event-Handling - und Schlupfanpassung wird dies bedeutet, dass ein Backtest die Realität nicht korrekt widerspiegelt. Mehrfache Basiswährungen - Wir sind derzeit auf GBP beschränkt Zumindest müssen wir die wichtigsten Währungsbezeichnungen - USD, EUR, CAD, AUD, JPY und NZD einbeziehen. Mehrere Währungspaare - Ähnlich müssen wir die wichtigsten Währungspaare jenseits von Kabel GBP USD unterstützen. Es gibt zwei Aspekte dazu. Das erste ist Um die Berechnungen korrekt zu behandeln, wenn weder die Basis noch das Zitat eines Währungspaares gleich der Kontobenutzungswährung ist. Der zweite Aspekt besteht darin, mehrere Positionen zu unterstützen, damit wir ein Portfolio von Währungspaaren handeln können. Risk Management - Viele Forschungs-Backtests ignorieren das Risiko völlig Management Leider ist dies in der Regel für die Kürze bei der Beschreibung der Regeln einer Strategie notwendig. In Wirklichkeit müssen wir eine Risikoüberlagerung beim Handel verwenden, sonst ist es sehr wahrscheinlich, dass wir einen erheblichen Verlust an einem gewissen Stadium erleiden. Dies ist nicht zu sagen, dass das Risiko Das Management kann dies ganz verhindern, aber es macht es sicherlich weniger wahrscheinlich. Portfolio Optimierung - In einem institutionellen Rahmen werden wir ein Investitionsmandat haben, das ein robustes Portfoliomanagementsystem mit verschiedenen Zuteilungsregeln diktieren wird. In einem Einzelhandel, den wir verwenden möchten, Eine Position Sizing Ansatz wie die Kelly Criterion, um unsere langfristige zusammengesetzte Wachstumsrate zu maximieren. Robust Strategies - Ich habe nur einige einfache zufällige Signal-Generierung Spielzeug-Strategien bis heute Nun, dass wir beginnen, eine zuverlässige Intraday Forex Trading System zu schaffen, haben wir Sollte anfangen, einige interessantere Strategien durchzuführen. Zukünftige Tagebucheinträge konzentrieren sich auf Strategien, die aus einer Mischung von technischen Indikatoren Filtern sowie Zeitreihenmodellen und maschinellen Lerntechniken gezogen werden. Remote Deployment - Da wir potenziell daran interessiert sind, 24 Stunden mindestens während der Woche benötigen wir ein anspruchsvolleres Setup als das Backtester auf einem lokalen Desktop-Laptop-Maschine zu Hause Es ist wichtig, dass wir eine robuste Remote-Server-Bereitstellung unseres Systems mit entsprechender Redundanz und Überwachung erstellen. Historische Backtesting - Wir haben das Portfolio-Objekt zu ermöglichen Um ein realistisches Backtesting durchzuführen In diesem Stadium fehlt uns ein historisches Tick-Datenspeichersystem In nachfolgenden Artikeln werden wir uns mit dem Erwerb historischer Tick-Daten beschäftigen und es in einer geeigneten Datenbank speichern, wie zB HDF5.Trade-Datenbank - Eventuell wollen wir unsere Live-Trades in unserer eigenen Datenbank Dies ermöglicht es uns, unsere eigenen Analysen auf Live-Trading-Daten durchzuführen Eine gute Empfehlung für eine relationale Datenbank wäre PostgreSQL oder MySQL. Monitoring und High Availability - Da wir ein Hochfrequenz-Intraday-System betrachten, sind wir Muss eine umfassende Überwachung und Hochverfügbarkeits-Redundanz setzen. Das bedeutet, dass die CPU-Auslastung, die Datenträgerverwendung, das Netzwerk-IO, die Latenzzeit und die Überprüfung, dass alle periodischen Skripts so eingestellt sind, dass sie sich weiterführen. Darüber hinaus benötigen wir eine Backup - und Wiederherstellungsstrategie Würde an Ort und Stelle haben, wenn du große offene Positionen in einem volatilen Markt hättest und dein Server plötzlich gestorben Glaubst du, es passiert. Mehr Broker FIX Integration - Im Moment sind wir stark mit dem OANDA Broker gekoppelt Wie ich schon sagte, das ist einfach, weil Ich kam auf ihre API und fand es ein modernes Angebot Es gibt viele andere Broker da draußen, von denen viele das FIX-Protokoll unterstützen Hinzufügen einer FIX-Fähigkeit würde die Anzahl der Broker erhöhen, die mit dem System verwendet werden könnten. GUI Control und Reporting - Im Moment ist das System komplett konsole Kommandozeile basiert Zumindest benötigen wir einige grundlegende Charting, um Backtest-Ergebnisse anzuzeigen Ein anspruchsvolleres System wird zusammenfassende Statistiken über Trades, Strategie-Level-Performance-Metriken sowie Gesamt-Portfolio-Performance Diese GUI Könnte mit einem plattformübergreifenden Fenstersystem wie Qt oder Tkinter implementiert werden. Es könnte auch mit einem webbasierten Front-End präsentiert werden, wobei ein Web-Framework wie Django verwendet wird. Man sieht, dass es eine Menge Funktionalität gibt Die Roadmap Das heißt, jeder neue Tagebuch Eintrag und potenzielle Beiträge aus der Gemeinde wird das Projekt vorwärts verschieben. Decimal Data-Types. Now, dass wir den längerfristigen Plan diskutiert haben, möchte ich einige der Änderungen vorstellen, die ich an den Code gemacht habe Seit Tagebucheintrag 2 Insbesondere möchte ich beschreiben, wie ich den Code geändert habe, um den Dezimal-Datentyp zu behandeln, anstatt den Gleitkomma-Speicher zu verwenden. Dies ist eine äußerst wichtige Veränderung, da Fließkomma-Darstellungen eine wesentliche Quelle für langfristigen Fehler im Portfolio darstellen Und Auftragsmanagementsysteme. Python nativ unterstützt dezimale Darstellungen zu einer beliebigen Präzision Die Funktionalität ist in der Dezimalbibliothek enthalten. Insbesondere müssen wir den Wert ändern - Wert, der in einer Positionsberechnung zu einem Dezimal-Datentyp erscheint. Dazu gehören die Einheiten, Exposition, Pips, Gewinn und prozentualer Gewinn Dies stellt sicher, dass wir die volle Kontrolle darüber haben, wie Rundungsprobleme im Umgang mit Währungsdarstellungen behandelt werden, die zwei Dezimalstellen von Präzision haben. Insbesondere müssen wir die Methode der Rundung von Python wählen, unterstützt ein paar verschiedene Typen, Aber wir gehen mit ROUNDHALFDOWN, die zur nächsten Ganzzahl mit Runden in Richtung Null geht. Hier ist ein Beispiel dafür, wie der Code geändert wird, um Decimal-Datentypen aus ihren vorherigen Gleitkomma-Darstellungen zu behandeln. Im Folgenden finden Sie eine Liste von. Hinweis Dass wir Dezimal mit einem String-Argument anstelle eines Floating-Point-Arguments liefern müssen. Dies ist, weil ein String genau die Präzision des Wertes spezifiziert, während ein Gleitkomma-Typ nicht. Hinweis auch, dass, wenn wir beginnen, unsere Trades in einem relationalen zu speichern Datenbank wie oben beschrieben in der Roadmap müssen wir sicherstellen, dass wir wieder einmal die korrekte Datentyp PostgreSQL und MySQL unterstützen eine dezimale Darstellung Es ist wichtig, dass wir diese Datentypen nutzen, wenn wir unser Datenbankschema erstellen, sonst werden wir laufen In Rundungsfehler, die extrem schwer zu diagnostizieren sind. Für diejenigen, die an einer tieferen Diskussion dieser Fragen interessiert sind, in Mathematik und Informatik, das Thema Numerische Analyse umfasst Gleitkomma-Speicher-Probleme, unter vielen anderen interessanten Themen. In den folgenden Tagebucheinträgen Wir werden diskutieren, wie ich Unit-Tests auf den Code angewendet habe und wie wir die Software auf mehr Währungspaare erweitern können, indem wir die Positionsberechnungen ändern. Full Python Code. Since der volle Quellcode für das Projekt ist nun Open Source, unter einem MIT-Lizenz kann es immer bei den begleitenden Unterlagen herausgefunden werden. Wenn Sie die anderen Einträge in der Serie lesen möchten, folgen Sie bitte den Links unten. Mit dem quantitativen Handel beginnen Sie.


No comments:

Post a Comment