Das ist Amenbo. (Natürlich Pseudonym) Tatsächlich hat der Autor die EA-Entwicklung von MT4 (MQL4) für eine lange Zeit fortgesetzt, in der Hoffnung, sie mit dem tatsächlichen Gewinn zu verbinden, wenn dies als Hobby möglich ist, und in den letzten 1-2 Jahren insbesondere die Verknüpfung von MT4 und AI (insbesondere nichttechnische Analyse). ) War das Hauptaugenmerk, aber die Ergebnisse waren nicht so gut und ich steckte fest.
Obwohl es keine kurze Pause ist, habe ich versucht, KI auf "technische Analyse" anzuwenden. Ich dachte, dass die Funktion und Leistung von MT4 ausreichend ist. "KI" scikit-learn " FX technische Analyse von ".
Da ich ein Anfänger in AI bin, habe ich viele Artikel und Materialien recherchiert, die versuchen, AI für die technische Analyse von Effekten zu verwenden. (Netz und Bücher) Leider konnte ich nichts finden, was richtig verwendet werden könnte. Vielleicht gibt es etwas, das für private geschäftliche Zwecke verwendet werden kann, aber es steht der Öffentlichkeit wie mir nicht zur Verfügung.
Daher habe ich (wahrscheinlich) als meine eigene Methode versucht, MT4 (MQL4) zu verwenden, um die "Funktionsmenge" auszuwählen, die in AI verwendet werden soll. Tatsächlich habe ich andere Tools gefunden (insbesondere Python-basiert), die verwendet werden könnten. Dies ist eine Maßnahme, die ich ergriffen habe, weil ich sie nicht hatte, aber ich denke, es ist wahrscheinlich ein Unterschied im Entwicklungsprozess gegenüber anderen Entwicklern.
Derzeit ist es eine Prototypversion, aber ich habe ein "Ergebnis, das zu glänzen scheint, wenn ich es poliere", also habe ich beschlossen, es für alle freizugeben. Dokumente (Berichte) werden serialisiert und in zwei Teile geteilt. (Derzeit gibt es zwei, aber wir planen, sie in Zukunft zu erhöhen)
Diese Serie berichtet über die Testergebnisse, wenn AI (Scikit-Learn) zur Vorhersage durch technische Analyse von FX (USDJPY; Dollar / Yen) verwendet wird. (Derzeit die Prototypversion)
** Versuch einer technischen FX-Analyse durch AI "scikit-learn"; ** Es ist in [Teil 1] und [Teil 2] unterteilt.
◎ Bitte lesen Sie zuerst [Teil 1] und erhalten Sie [Teil 2], wenn Sie der Meinung sind, dass es sich lohnt, es zu lesen. (Wie man es bekommt, ist in [Teil 1] beschrieben.)
** [Ziel dieses Mal] ** ・ ・ Siehe Blockschaltbild Es geht darum, "technische Analyseergebnisse" zu extrahieren, die es wert sind, auf der AI-Seite an die MT4 (MQL4) -Seite weitergegeben zu werden. Um ehrlich zu sein, denke ich, dass MT4 (MQL4) für die technische Analysefunktion ausreicht. Als ich es versuchte, bekam ich ziemlich interessante Ergebnisse, ich denke, der Versuch wurde nicht verschwendet. (AI-Programm ist in Python geschrieben)
** Erklärungsinhalt in [Teil 1] und [Teil 2]; ** Zunächst ist das vom Autor dieses Mal angewandte "Verfahren zum Anwenden von KI auf die technische Analyse von Effekten" wie folgt.
(1) [Teil 1] ist Ein Beispiel für die Endphase ・ Aus dem Exchange (FX) -Diagramm generierter DataFrame (Feature-Betrag und Label) Erläutert ein Beispiel für die Durchführung von maschinellem Lernen / Vorhersagen mit einem Python-Programm.
(2) In [Teil 2] Ich werde von der ersten Phase bis zur Erstellung eines DataFrame anhand eines Beispiels erklären
** <Verwendeter Indikator (Beispiel)> ** ・ ・ [Teil 2] veröffentlicht Der Indikator, der zum Extrahieren der Merkmalsmenge verwendet wird, ist das Original des Autors (Kiefernnadelfilter). Bollinger Band.
**
**
** [Gewinn / Verlust-Bewertungsmethode] **
Die Gewinn- / Verlustbeurteilung verwendet dasselbe Konzept wie beim Erstellen eines MT4 EA. Mit anderen Worten: "Kaufen oder Verkaufen" durch Angabe von Gewinn (Gewinnniveau), Verlust (Verlustniveau) und Spread. Lernen Sie das Ergebnis des Gewinns / Verlusts beim Markteintritt kennen und machen Sie Vorhersagen für Testdaten. Darüber hinaus wird das Gewinnen und Verlieren von "Lernen und Vorhersagen" durch "Klassifizieren" nach zufälligen Wäldern durchgeführt.
Die zur Ausführung der Inhalte erforderliche Entwicklungsumgebung (alle kostenlos verfügbar) ist in [Teil 1] beschrieben. Es enthält jedoch keine technischen Erklärungen zum Erhalt von Python, Scicit-Learn und MT4, die für Anfänger erforderlich sind. Einige der für Anfänger erforderlichen Kenntnisse finden Sie auf der Website des Autors (unten). ・ ・ Alle zum Verständnis der Inhalte erforderlichen Kenntnisse sind im WEB wie dieser Qiita verfügbar.
Die Ursache ist, dass SVC (SVM) "unausgeglichene Daten" behandelt, dh die Anzahl der Daten zwischen Klassen ist groß. Ich habe gelernt, dass verschiedene Voranpassungen wichtig sind, wenn es um Objekte geht, die stark voreingenommen sind. (Skalierung, Normalisierung usw. müssen angepasst werden) Immerhin habe ich den Klassifizierungsalgorithmus in "Random Forest" geändert, um dieses nervige Problem zu lösen. Durch die Vermeidung war das Ergebnis ziemlich überzeugend.
** ◎ Wo bekomme ich die URL [Teil 1] ** ** ① Dokument (PDF) **; http://mql4.s1002.xrea.com/ai_tec/ai_tec_01.pdf ** ② Datensatz (.zip) **; http://mql4.s1002.xrea.com/ai_tec/ai_tec_01.zip
** ◎ Über MT4 (MQL4) und EA **
das ist alles
Recommended Posts