Wie bereits angekündigt möchte ich hier die komfortable Möglichkeit vorstellen, in Verbindung mit Investox Vorhersage-Modelle, aufgrund verschiedener mathematischer Modelle, zu erstellen.
Zum Beispiel auch mit Hilfe von des Modells: Support Vector Machines!!!
Hierzu habe ich eine äußerst innovative und mächtige Software ausgewählt, welche neben zahlreichen mathematischen Modellen für das Data Mining, noch eine Vielzahl von Features bietet.
Die Besonderheit ist ein grafisches Drag & Drop Programmier-Tool, welches ermöglicht die gesamte Struktur und den Aufbau des Data-Mining Prozesses:
DataSources: Dateneingabe (automatisch aus z.B. den Pinnacle-Files, zurück in CSV-Format für INV mit "verfügbare Werkzeuge / Neu / als Titel anlegbar) & Daten-Konvertierung
Data-Sinks: Datenausgabe
Filters: Datenvorbehandlung (z.B. Dämpfung)
Classifiers: Mathematische Modelle (z.B. Support Vector Regession mit RBF-Kernel, oder ca. 60 andere Verfahren (auch das von INV genutzte)
Clusters: Statistische Auswertung (z.B. KMeans, etc)
Evaluation: Trainingsmethoden (z,B. Cros-Validation, etc.)
Visualization: Grafische Ausgabe in allen denkbaren und aufwenigen Charts un Diagrammen!
in einem KnowledgeFlow Enviroment per Drag & Drop aufzubauen, dabei die einezelnen Elemente zu konfigurieren und als Programm abzuspeichern, um es dann in einem Explorer ablaufen zu lassen.
Der Vorteil liegt klar auf der Hand: So kann jeder INV-User sich ein individuelles Data-Mining Projekt, ohne große Vorkenntnisse erstellen, testen und auch als kleine Datei weiterreichen.
Der Aufbau des Programms ist so innovativ, dass ich innerhalb vier Tagen ein vollständiges und lauffähiges Support Vector Machines Projekt erstellt hat, welches in seiner Mächtigkeit (Modelloptimierung, Datenfluß, Dämpfungsmöglichkeiten, Visualisierung, Rechenzeit, etc.) ungeahnte Möglichkeiten erschließt.
So sind aber auch vollkommen andere Data-Mining Methoden, unter anderem auch vollständig neue mathematische Ansätze schnell programmiert (zusammengeklickt) und lauffähig.
Das hier vorgestellte Programm ist somit wie ein (fix und fertiges) Zusatzmodul zu Investox zu sehen, welches auch in den älteren Versionen von INV leicht einzubinden ist.
Das Programm ist intuitiv zu bedienen und bereits nach zwei Tagen hat man die Zusammenhänge leicht verstanden. Die Dokumentation ist sehr umfangreich und liegt auch in deutscher Fassung vor!
So benutzt es z.B. bei der Support Vector Machines die Algorithmen von Alex Smola und Bernhard Scholkopf, beide in der Forschung von Data Mining bekannt. Auch das Paket LibSVM ist über eine im Programm enthaltene Console (hier kann man auch alle Module über
Kommandozeile ansprechen) verfügbar.
Das Programm ist kostenlos und unterliegt der GNU Lizensierung.
Es handelt sich um Weka 3.4, Data Mining Software in Java, University of Waikato, und kann hier:
http://prdownloads.sourceforge.net/weka/weka-3-4-11.exe
per Download bezogen werden. Die Installtion erfolgt vollautomatisch.
In dem Programmordner sind auch alle Dokumentationen, Beispieldaten, etc. enthalten, als auch ein Tutorial!
Wenn man das Programm aufruft (ohne Konsole), so öffnet sich der Weka GUI Chooser, hier kann man vier Programme aufrufen:
Experimenter: (Ein Programm mi dem man im Vorfeld Versuche, bezüglich dem Modell, der Filterung, etc. durchführen kann, um schnelle Ergebnisse zu erzielen. Aber auch um eben zu experimentieren!
KnowledgeFlow: Die grafische Programmierung! Hier kann der gesamte Flow-Prozess ( --> ein Novum!!!) erstellt werden und gleichzeitig die eingefügten Module konfiguriert werden. So, auch die Datenkonvertierung, die Modellanpassung, etc.
Explorer: Hier wird der abgespeicherte Prozess aus dem KnowledgeFlow wieder aufgerufen und steht dann ablauffähig zur Verfügung. Man kann natürlich auch direkt in diesem Explorer alle Eingaben vornehmen.
Die Rechenzeit für mein Support Vector Machine Prozess ist äußerst kurz, so dass Weka im Hintergrund von INV läuft und sofort die Ergebnisse ausgibt, die in INV im Chart als Linie angezeigt werden. Hieraus können dann die Handelssignale generiert werden. (Linie schneidet nach oben/unten). Auch können verschiedene Strategien der SVM gefahren werden, wie z.B. ein Modell, welches nur nach bestimmten Zeitabschnitten neu trainiert wird (4 - 5 s) und dann mit den"neuen" Daten die Prognose erstellt. Oder das Training vor jeder neuen Prognose.
Zunächst rate ich jedem Interessierten das Programm zu installieren und sich zwei Tage mit demselben vertraut zu machen.
Dann die Datenkonvertierung und Datenanbindung mit INV zu erproben und dann umzusetzen:
Hierzu die Pinnacle Daten als ASCII abspeichern (als Beispiel: Pinnacle mit DMakerw), dann mit einem Input-Modul die Konvertierung, Datenlänge, etc. festlegen. Das Modell in Weka aufbauen (z.B. Support Vector Regession mit RBF-Kernel), eventuell vorher Filterung der Daten, den Modus der Abarbeitung (Cross-Validation, Random-Split der Daten, die Einbindung von Fehlerstatistiken u. Rückkopllung, Modelloptimierungs-Modul (automatische Ermittlung der besten Parameter: c, gamma, etc.), Einbindung der Visualisierung (wenn gewünscht), etc. und dann im Weka- Explorer testen.
Es lassen sich auch Datenbanken, oder andere Datenquellen, einlesen.
Das ganze Konzept ist natürlich durch die einfache Weiterreichung der erstellten Projekte wie für INV und das Forum geschaffen!!!
So bitte ich jeden, der einen neuen Schritt (Datenanbindung, Modell-Engineering, andere mathematische Modelle, und, und, und .....) im Forum bereitzustellen.
So kann mit diesem Programm und seinen sehr, sehr mächtigen Funktionsumfang nun jeder seine Support Vector Machine realisieren und nutzen, auch INV-User mit älteren Versionen. Diese können aber nun auch herkömmliche NN, vielfältige andere Data-Mining Prozesse umsetzten.
Vieleicht entsteht ja hier, in diesem Beitrag, eine Plattform der gegenseitigen Unterstützung und Austausches.
Als Anhang sind 7 Screenshoots von Weka angefügt: Bild 5 und 6 zeigt das Support Vector Machine Modul & Beschreibung!
Da ich nur 5 Bilder laden kann, füge ich noch einen Beitrag "Bilder" an!
Viele Grüße
Reiner