Sind Softwerker hier? Spielereien mit Börse und Code

  • Automatisierung
  • Daten
  • Strukturierung
  • Programmierung
  • Tool

Posted

Hallo,

 

man findet ja eigentlich ITler überall, wo es um strukturierte Daten geht *g*

Vielleicht hat jemand Interesse an Austausch über "Börse und Code".

 

Mein diesjähriges Freizeitprojekt für den privaten Gebrauch kombiniert Python, Go und "die Google Cloud" sowie Kalenderfunktionen und "Scheduler" nebst Diagrammen und Webscrapern.

Es soll in Zukunft die "Morgenroutine der Optionshändler" automatisieren. Aber die Motivation ist zu einem großen Teil private IT-Weiterbildung, daher kommt das Frontend zuletzt. :)

 

Vielleicht finden sich ja Gleichgesinnte, wo wir uns gegenseitig auf Github "staren"?

Share this post


Link to post
Share on other sites

Posted

Hatte auch mal was ähnliches überlegt. Bin aber in R zu Hause und habe momentan zu wenig Zeit um zu proggen und das Wetter ist auch noch zu gut. Prinzipiell würde es mich aber interessieren, was du genau planst zu machen.

Share this post


Link to post
Share on other sites

Posted

Also Webscraper mit Python habe ich schon ein paar programmiert, u.a. um automatisch Kursdaten von ariva.de und onvista.de herunterzuladen. Was genau ist denn geplant, deine Beschreibung ist noch ein wenig schwammig.

Share this post


Link to post
Share on other sites

Posted · Edited by dehy

Naja, auch wenn mein aktueller Code sehr "alpha" ist und eigentlich eher eine wilde Mischung aus stackoverflow und Google Cloud Dokumentation, verlinke ich dennoch mal auf den Branch "gae" im repo otmr.

Ich moechte

- mehrere Quellen

- eine Datenspeicherung

- einheitliche Verarbeitung und Ausgabe haben.

Das ganze ressourcenschonend.

 

 

Derzeit

- scrape ich onvista und speichere das in eine MySQL-Datebank

- lade von Alphavantage herunter und soeichere das als json und erzeuge ein Candlestick-Diagramm

- und das zu definierten Zeiten am Tag. (Total praktisch: crontab mit Zeitzonen!) Da wuerde ich gerne noch einen Wochentag-Kalender hinter haengen, hab da auch schon Go code.

- description: "xetra open"
  url: /exchange/xetra
  target: dispatcher
  schedule: every day 9:45
  timezone: Europe/Berlin

 

 

Ich moechte zwar vorrangig die Google Cloud Angebote nutzen, aber letztlich ist das normaler Python und Go Code.

 

 

So sieht in der Google Cloud Dateispeicherplatz aus:

Selection_043.png.png

 

 

Letztlich stelle ich mir sowas vor:

(Diese Kurven sollen zB der SMA200 sein.)

otmr-mockup.png

 

 

Vermutlich kann es von gegenseitiger Hilfe sein

- sich ueber die "besten" Datenquellen auszutauschen

- Beispielscode zu zeigen

- hilfreich zu kritisieren^H^H^H^H^H^H^H^H^H^Hreviewen ;)

 

Hier ein Minimalbeispiel "Alphavantage":

https://nbviewer.jupyter.org/github/cprior/finance-stuff/blob/master/application/physical/notebooks/alphavantage-api.ipynb

 

Hier Pythoncode mit BeautifulSoup bei onvista:

https://github.com/cprior/finance-stuff/blob/gae/application/physical/otmr/scraper/main.py#L50

Kein schoener Code und ein halbgares Datenmodell: Habe vor allem mit "der Google Cloud" gekaempft. Hab diese Platform aber jetzt soweit im Griff, dass es nun funktional weitergehen kann.

 

 

Edit: Vielleicht sind Jupyter-Notebooks eine gangbare Variante, Minimalbeispiele auszutauschen?

Denn die können ja auch einen R Kernel anbinden: https://www.datacamp.com/community/blog/jupyter-notebook-r

 

 

Share this post


Link to post
Share on other sites

Posted

Moin, 

 

Danke nochmal für die PM. Ich hab mir alles mal reingezogen. Ich verstehe jedoch auch noch nicht 100% den case. Also was ist die Morgenroutine? Einfach nur Kurse checken? Da gibt´s ja bereits Apps. Oder soll das ganze auch in Richtung Prognose gehen? 

Share this post


Link to post
Share on other sites

Posted

Prognose waere traumhaft, aber erstmal waere ich zufrieden, wenn

- automatisch und ohne "im Alltagsstress vergessen"

- aus verschiedenen Quellen (Alphavantage json, onvista HTML-Tabellen und EZB RSS)

valide* Daten boersentaeglich abgerufen werden.

 

Und das ganze so, dass ein "sachverstaendiger Interessierter" sich das daheim einrichten kann -- denn die Quellen erlauben wohl kaum die Speicherung der Daten fuer andere.

 

 

*) ich haette bsw nicht gedacht, dass Alphavantage am Pfingstmontag fuer den DAX "0" meldet!?!

Share this post


Link to post
Share on other sites

Posted

Geht es hier nur um Kursdaten bzw. das Erstellen von Charts? Interessant fände ich auch einen Scraper, der Fundamentaldaten aus verschiedenen Quellen zusammensammelt, mit denen man sich dann historische Kennzahlverläufe erstellen kann.

Share this post


Link to post
Share on other sites

Posted · Edited by dehy

 

Edit: Ich sehe, unter folgender Quelle gibt es auch Fundemantaldaten!

(Beim ursprunglichen Absenden vor ~3min noch nicht gesehen)

 

Bin die letzten Tage ganz angefixt: Eroeffne gerade ein Depot bei einem Reseller von Interactivebrokers. (Natuerlich hat mal wieder ein Dokument gefehlt *grrr*)

Das bedeutet, ich kann die Trader Workstation ueber eine Python API ansprechen! *yay*

 

Ein paar Anleitungen unter 

https://gist.github.com/robcarver17/7b4a8e2f1fbfd70b4aaea5d205cb35eb

https://www.quantstart.com/articles/Using-Python-IBPy-and-the-Interactive-Brokers-API-to-Automate-Trades

https://qoppac.blogspot.com/2017/03/interactive-brokers-native-python-api.html

machen mich ungeduldig...

Share this post


Link to post
Share on other sites

Posted · Edited by dehy

Ich bin begeistert und muss mich neu sortieren: Der Zugang zu einem Interactive Brokers Reseller-Depot ist schon da.

Noch habe ich keinen "Paper Trading Account" und kann daher (lesend) nur gegen den (noch nicht 'kapitalisierten' Live Account testen.

 

ABER: Ich bin drin! :)

Mit Python kann ich mich gegen das "IB Gateway" verbinden (hat nicht die GUI der TWS, aber fungiert gleichermaszen als Socket-"Proxy").

 

https://nbviewer.jupyter.org/github/cprior/finance-stuff/blob/master/application/physical/notebooks/tws_api.ipynb?flush_cache=true hat den Minimal-Code aus den samples der API. (Man installiert die API als Python module und importiert dann ganz normal. Auf localhost:4001 lauscht dann das IB Gateway.)

 

Zur Benutzung der API muss man in Python dann asynchron mit "Queue" aus der Standard Library arbeiten.

Das wird mich etwas bremsen!..

Trotzdem werde ich meine Aufmerksamkeit erstmal dieser Datenquelle widmen.

 

 

Edit 2018-08-16 9:10

Der Beispielcode wird sehr gut erklärt im einstündigen Webinar https://register.gotowebinar.com/register/5481173598715649281

 

Share this post


Link to post
Share on other sites

Posted

hallo allerseits,

bin noch recht neu in diesem Thema u. habe folgende (womöglich recht triviale) Sache vor:

Unter Linux auf "Knopfdruck" automatischer login jeweils zu S-Broker, degiro und flatex.  Die nach dem login angezeigte Website dieser Online-Broker enthält u. a. aktuelle Konto- u. Depotsalden u.  soll daher automatisch als Textdatei auf meinem Rechner gespeichert werden (zwecks anschließendem Auslesen der benötigten Daten, z. b. in LibreOffice Calc)

 

Hat jemand eine Ahnung, ob sich sowas mit "curl" bewerkstelligen lässt ? Oder muss man da mit anderen Werkzeugen ran (z.B. Selenium oder BeautifulSoup )? Ich studiere in diesem Zusammenhang gerade ein engl.sprachiges e-Book namens "Web Scraping with Python" von O'Reilly, welches mir aber (mangels Python-Kenntnissen) noch nicht viel nützt...

Share this post


Link to post
Share on other sites

Posted

Da würd ich kein curl nehmen, Web Scraping ist doof, wird nicht gern gesehen und fällt gerne mal auseinander. Ich würde FinTS nehmen, ein Standard den fast alle können. Hier z.B. eine brauchbare PHP-Implementation einer FinTS-library: https://github.com/mschindler83/fints-hbci-php

Share this post


Link to post
Share on other sites

Posted

Am 12.11.2018 um 23:35 schrieb Einstiegskurs:

. Ich würde FinTS nehmen, ein Standard den fast alle können. 

Schon wäre es, aber viele Broker und Banken bieten leider keine HBCI Schnittstelle an...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now