Börsendaten-Analyse mit Apache Flink II...fehlende Community in stetiger Entwicklung „unsauber“...

Preview:

Citation preview

BÖRSENDATEN-ANALYSE

MIT APACHE FLINK IIAbschlusspräsentation mit Demo

von

Mdiet003

Pgrie001

GLIEDERUNG

Aufgabenstellung 3

Aufgabenverteilung 4

Konzept 5

Implementierung 14

Evaluation 18

Fazit + Ausblick 21

Weblinks 23

Demo 24

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 2

AUFGABENSTELLUNG

Vortrag: konzeptuelle Grundlagen

Einarbeiten in die verwendete Technologie

Analyse des Anwendungsfalls

Erstellen eines Konzepts

Prototypische Implementierung

Messung und Bewertung

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 3

AUFGABENVERTEILUNG

Mdiet003

anfangs:

Apache Flink (producer-random)

Wiki (Grundlagen (Technologie))

zum Schluss:

Wiki

Pgrie001

anfangs:

Docker-Testumgebung

Wiki (Analyse des Anwendungsfalls)

zum Schluss:

Implementierung

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 4

KONZEPT | GRUNDIDEE

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 5

KONZEPT | ABLAGE DER DATEN

Variante #1: Partitions Variante #2: Topics

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 6

KONZEPT | NOTIONS OF TIME

https://ci.apache.org/projects/flink/flink-docs-master/apis/streaming/event_time.html

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 7

KONZEPT | YAHOO FINANCE

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 8

KONZEPT | TIMESTAMPS + WATERMARKS

Kurs ist Tupel: (Timestamp, close)

zusätzlich zum Timestamp muss Watermark erzeugt werden:

Watermark macht Fortschritt in Event-Time-Datenstrom messbar

“A Watermark(t) declares that event time has reached time t in that stream,

meaning that all events with a timestamps t’ < t have occurred.”

https://ci.apache.org/projects/flink/flink-docs-master/apis/streaming/event_time.html

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 9

KONZEPT | KORRELATIONEN

Erstellt mit: http://www.finanzen.net/charttool/

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 10

KONZEPT | CHARTANALYSE

http://www.investopedia.com/terms/s/sma.asp

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 11

KONZEPT | VERTEILTHEIT

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 12

KONZEPT | PARALLELITÄT

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 13

IMPLEMENTIERUNG | DOCKER

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 14

IMPLEMENTIERUNG | TEILPROJEKTE

importer

Python-Programm –Yahoo Finance > CSV-Datei > Kafka

analyser

„die“ Implementierung – berechnet Kauf- und Verkaufssignale

Flink-Programm, in Java

visualizer

Python-Programm – visualisiert Datenströme aus Kafka (matplotlib)

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 15

IMPLEMENTIERUNG | VISUALIZER

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 16

IMPLEMENTIERUNG | ANALYSER

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 17

EVALUATION | PROBLEME

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 18

EVALUATION | PROBLEME

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 19

EVALUATION | LÖSUNGSANSÄTZE

Kafka Consumer/Producer von Flink anpassen

RabbitMQ statt Apache Kafka

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 20

FAZIT

Vorteile

Flink passt zum Anwendungsfall

in stetiger Entwicklung

„dankbarer“ Anwendungsfall

Nachteile

fehlende Community

in stetiger Entwicklung

„unsauber“ und widersprüchlich

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 21

AUSBLICK

Korrelationen in Konfigurationsdateien definieren

Kauf- und Verkaufssignale aus Chartmustern ableiten

Chartanalyse auf physisch getrennten Rechnern

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 22

WEBLINKS

Technologie

https://flink.apache.org/

https://kafka.apache.org/

https://zookeeper.apache.org/

https://www.docker.com/

http://data-artisans.com/blog/

Anwendungsfall

http://www.finanzen.net/

http://www.investopedia.com/

http://www.wirtschaftslexikon24.com/

http://wirtschaftslexikon.gabler.de/

04. August 2016„BÖRSENDATEN-ANALYSE MIT APACHE FLINK II“ VON MDIET003 UND PGRIE001 23

DEMO

Recommended