Rechenleistung für Tensorflow-basierten EA (MachineLearning, DeepLearning)

 

Hallo MQL-Community,

ich recherchiere derzeit technische Möglichkeiten, einen selbstlernenden EA (mit MachineLearning, DeepLearning, etc.) zu erstellen.
Es zeigen sich Schnitstellen zu Python und R sowie Möglichkeiten mit Tensorflow, ENCOG, NeuroPro, ZeroMQ...
Zufällig erschien gerade gestern: Neuronale Netze leicht gemacht, ein DL-Konzept rein auf Basis von MQL.

Bei der Wahl des vielversprechensten Code-Konzepts zeigt sich jenseit aller Komplexität des Themas: die Notwendigkeit besonderer Rechenleistung.
CPU-Power könnte sich zum fatalen Nadelöhr bzw. Showstopper jenseits der Code-Komplexität entwickeln.

Daher folgende Fragen zur Physik:

1.)Wieviel Rechenleistung ist nötig für einen ernstzunehmenden und profitablen EA powered by Tensorflow (oder ähnlichem Framework)

    • ist ein guter PC (mit guter GPU) ausreichend um einen Tensorflow-EA betreiben zu können, oder sprengen die Berechnungen sofort Profitabliltäten jedes Timeframes
    • Code-Entwicklung auf Laptop ok, aber Backtesting, Optimierung und Betrieb nur auf externer Hardware (z.B. NVIDIA)?
2.) Zusammenarbeit mit VPS:
    • Nebenbei gefragt: Was versteckt sich technisch hinter einem VPS? Ein Dockers-Container? Ein SAAS? Selbtgebaute CloudApp?
    • Wäre das Mieten einer NVIDIA-VPS für Tensorflow in Zukunft denkbar (oder Stand heute auch in näherer Zukunft nicht absehbar)
      Sprich: Betrieb von Tensorflow auf Metaquote-VPS-Servern?
    • Wenn eigene Hardware für Tensorflow zwingend ist: Dann EA-Betrieb besser ohne VPS? Performance-Vorteile der VPS werden dann irrelevant?

3.) Wie hoch ist der Rechenaufwand mit den Alternativen? Sind die auch überraschend CPU-intensiv?

  • Mit R
  • Neuronales Netzwerk rein auf MQL-Basis

Wer kann da Erfahrungwerte weitergeben?


Vielen Dank

Neuronale Netze leicht gemacht
Neuronale Netze leicht gemacht
  • www.mql5.com
Die künstliche Intelligenz deckt zunehmend verschiedene Aspekte unseres Lebens ab. Es erscheinen viele neue Veröffentlichungen, in denen es heißt, dass "das neuronale Netz wurde trainiert,..". Dennoch wird die künstliche Intelligenz immer noch mit etwas Fantastischem assoziiert. Die Idee scheint sehr kompliziert, übernatürlich und unerklärlich...
 

Ich würde erstmal hier suchen:
https://www.mql5.com/en/search#!keyword=neural%20net&module=mql5_module_forum

Es gibt nicht nur dieses eine Netzwerk und dann selber ausprobieren. Vieles hängt davon ab, wie das NN dimensioniert und eingesetzt wird.

Search - MQL5.community
Search - MQL5.community
  • www.mql5.com
Searching is based on morphology and is insensitive to case. All letters, no matter of their case, will be processed as lowercase. By default, our search engine shows pages, that...
 

Wer kann da Erfahrungswerte weitergeben?


Vielen Dank

Ich kann etwas dazu sagen.


1.  Rechenleistung:  Da musst du selber forschen. Auf jeden Fall ist mehr besser. Ich nutze zwei GPUs (1080,1070Ti).

                               Je mehr Rechenleistung du einsetzt um so besser/genauer wird dein Netz.

                               Wenn du der Meinung bist, du brauchst mehr Rechenleistung um die Machbarkeit auszuloten,  mietest du GPUs dazu.

                              Im Prinzip reicht ja die CPU aus, nur die Trainingszeit wird dann länger.

2.  MQ-VPS:           Das "Ding" wird dir nichts nützen, zu schwach und zu sehr beschrankt. Was dahinter läuft weiß ich nicht. Wird dir wohl auch keiner sagen können/dürfen.                

                            Halte Abstand davon und miete einen echten VPS. Oder besser noch  investiere in einen Trading-PC.

                            Wenn du Wert auf kleine Ping Zeiten legst, miete in der Nähe des Brokers.

3. Alternativen:   

                           

                           Theoretisch kannst du MQL5 für das Netz nutzen. Sinnvoller ist es wie du schon erwähnst die weit gereiften Frameworks zu nutzen.

                           Da die "Intelligenz" eines Netzes erst mit einer gewissen Größe entsteht, steigt die Größe des Codes.

                           Netze mit einem Layer und 50 Neuronen stehen auf der Stufe eines Stückes Brotes :-)

                           Lass den Schritt aus und mache nur das Nötigste in MQL5 (Handel, Sicherheit).

                         

Schau dich auf Github um, die liegen viele Projekte zum Thema.

Damit kannst du dir einen eigenen Eindruck verschaffen ohne erstmal selber was zu Programmieren.

Python bietet alles was du brauchst.


Gruß


                           

                                                

                           

                            

                                              

                                  

 

hey, großartig!

Der Gedanke, dass es auch einen engl. Forum geben sollte, kam, wenn auch nur flüchtig...)
Foren komplett nach Sprache zu trennen macht natürlich Sinn!

Und komplett mit Python arbeiten zu können, vielleicht ja sogar via github ohne gleich coden zu müssen, wäre großartig, vielleicht gibt ja sogar schon etwas trainiertes zum Download...

Ich werd mich mal umsehen.

Vielen Dank!

 

Ich habe ein künstliche Intelligenz ausschließlich mit MQL5 programmiert und es funktioniert verdammt gut! Es ist zwar möglich, aber es war ein weiter Weg und ich habe über die Jahre schon einiges an Erfahrung gesammelt. Ich weiß nicht wie versiert du bist, aber um ohne bibiliotheken wie Tensorflow so eine Ki zu entwickeln braucht es schon viel Zeit und Erfahrung.

Zum Thema Rechenleistung:

Da hast du bei Kis immer ein Problem. Du kannst nur seriell testen. Das heißt das du nicht mehrere Kerne wie z.B. bei einem normalen Backtest verwenden kannst.(zumindest nicht mit MQL) Dies ist weil du ja nicht den besten Wert einfach finden willst, sondern deine Werte für die Neuronen immer mehr verfeinern willst. Das heißt das du im Idealfall einen PC mit wenigen Kernen und einem sehr hohen Takt benötigst. Auch der Speicher sollte schnell sein. HDD ist ein no-go ;).

Nervt aber dennoch, denn ich hab meinen i7-9960x auf 4,7Ghz gepeitscht und ein Backtest über ein Jahr dauert trotzdem 5min. Wenn man da bedenkt das man mindestens 10000 Tests braucht... :/

-Ich kann mir nicht vorstellen das vorgefertigtes Zeug zum downloaden gut ist. Sry.

 

Hey all,
Hey Marius,

ich konnte tatsächlich auf GitHub voll funktionsfähigen und gutgeschriebenen Code finden, um mit allem beginnen zu können.
Ein "Forecast Expert" schickt über socketconnect die Trainingsdaten and Tensorflow (noch 1.14) calculiert 5 weitere Kerzen und schickt die Daten zurück an MT, der die 5 Punkte per Mouseklick einzeichnet.
Sogar mit GPU-Unterstützung (CUDA 10.x muss installiert sein) wobei ich eher Aktivität auf dem CPU sehe...egal.

Mit default-Einstellungen dauert der Vorgang auf meinem einfachen PC 30sek.

Nix zum direkt-lostraden sondern eher vollfunktionsfähige Infrastruktur als POC (prove of concept).

Dass ist wirklich fantastisch...nicht von NULL anfangen zu müssen ist eine unendliche Erleichterung!

@Christian: Danke für den Tip!

 
Howdi:


@Christian: Danke für den Tip!

Danke, pack doch gleich den Link vom GitHub Repository  hier rein.

Damit alle was davon haben.

 
gerne: https://github.com/kartikmadan11/MetaTraderForecast
kartikmadan11/MetaTraderForecast
kartikmadan11/MetaTraderForecast
  • kartikmadan11
  • github.com
Project that involves training, testing, evaluating and forecasting time series forex data from MetaTrader using Sockets to connect with Python. An RNN Model of various architecture like LSTM, Bidirectional and GRU can be created. Supports CUDA Computation. What does the project do? MQL based Expert Advisors are attached to charts of trading...
 

Wer sich Gedanken macht wie er ein proof of concept ohne den MT5 in Python erstellen kann:


Backtester für Python: https://kernc.github.io/backtesting.py/

So lässt sich die KI komplett in Python testen und optimieren.


Der MT5 sollte ausschließlich die Trades an die Börse leiten.

Backtesting.py - Backtest trading strategies in Python
  • Bewertungen: 1
  • kernc.github.io
Does it seem like you had missed getting rich during the recent crypto craze? Fret not, the international financial markets continue their move rightwards every day. You still have your chance. But successful traders all agree emotions have no place in trading — if you are ever to enjoy a fortune attained by your trading, better first make...
 
Backtesting Systematic Trading Strategies in Python: Considerations and Open Source Frameworks | QuantStart
  • www.quantstart.com
Backtesting Systematic Trading Strategies in Python: Considerations and Open Source Frameworks
 

Die Welt von Python ist so groß.....

Fertiger Code eines Backtest mit ML.

Suchbegriffe "python" "backtest" "tensorflow"

https://www.quantopian.com/algorithms/5ebecbb523ce93004390ff8a?from_clone=true

Es gab mal jemanden der wollte alles neu erstellen.

Dabei muss man nur etwas googeln....lesen ..verstehen...und dann code mopsen :-)


Wie sieht es aus aktuell Bayne ?

Quantopian Login
Quantopian Login
  • www.quantopian.com
Quantopian is a free online platform and community for education and creation of investment algorithms. Quantopian offers access to deep financial data, powerful research capabilities, university-level education tools, a backtester, and a daily contest with real money prizes.
Grund der Beschwerde: