Maschinelles Lernen im Handel: Theorie, Modelle, Praxis und Algo-Trading - Seite 2282

 
mytarmailS:

eine R-Verbindung herstellen.

bereits getan, aber es hat nicht funktionierthttps://www.mql5.com/ru/forum/306688/page10#comment_11308158

 
Renat Fatkhullin:
Können Sie die Informationen weitergeben?
1) Verwenden Sie die MT5-Python-Bibliothek?
2) Verwenden Sie es außerhalb oder innerhalb von MT5?
3) Welche Funktionen fehlen der Bibliothek? Zugang zu Indikatoren?

Wir bereiten ein Upgrade von MQL5 vor, das schnelle Matrixoperationen hinzufügt. Dies ermöglicht die Durchführung umfangreicher Berechnungen.

Dann werden wir Konnektoren zu Analysepaketen entwickeln und die Standard-WinML-Integration implementieren.
1) machen eine normale Integration mit sqlite3
2) zeigen den Fehler, wenn das Skript abrupt stoppt, wie in Python, mit einem Link auf die Zeichenfolge und eine Beschreibung des Fehlers und das wäre standardmäßig in der Log
3) fügen Sie die Integration mit api Telegramm, zumindest ein minimales Set
4) erlauben, auf den Markt EAs mit Webrequest setzen, dh mit der Fähigkeit, Informationen von außen anfordern
 
Evgeny Dyuka:
1) machen Sie eine normale Integration mit sqlite3
2) zeigen Sie den Fehler, wenn das Skript abrupt gestoppt, wie in Python, mit einem Link auf die Zeichenfolge und Fehlerbeschreibung, und standardmäßig senden Sie es an das Journal
3) fügen Sie die Integration mit api Telegramm, zumindest ein minimales Set
4) erlauben, auf den Markt Berater mit Webrequest setzen, dh mit der Fähigkeit, Informationen von außen anfordern.

1) existiert seit langem als reguläre DatabaseXXX-Funktion, sogar ein SQL-Datenbank-Browser ist in den Editor eingebaut, ein ausführlicher Artikel über SQL in MQL5

2) die gesamte Ausgabe von Python-Skripten wird detailliert in Protokolle geschrieben

3) Es gibt schon seit langem separate Lösungen, die nicht für die Python-Bibliothek gelten. Ich habe Fragen zur Python-Bindung gestellt. Anstelle von Telegram ist es bequemer, normale Pusher in Mobiltelefonen zu verwenden

4) war schon immer verfügbar

SQLite: нативная работа с базами данных на SQL в MQL5
SQLite: нативная работа с базами данных на SQL в MQL5
  • www.mql5.com
Разработка торговых стратегий связана с обработкой больших объемов данных. Теперь прямо в MQL5 вы можете работать с базами данных с помощью SQL-запросов на основе SQLite. Важным преимуществом данного движка является то, что вся база данных содержится в единственном файле, который находится на компьютере пользователя.
 
Igor Makanu:

bereits getan, aber es hat nicht funktionierthttps://www.mql5.com/ru/forum/306688/page10#comment_11308158

traurig....

das nach Matlab beliebteste Produkt der Welt für statistische Berechnungen, nennen Sie es Kolchose )))

Die Ebene ist klar und die Kolchose auch ...

 
mytarmailS:

traurig....

das nach Matlab weltweit am meisten nachgefragte Produkt für statistische Berechnungen, nennen wir es Kolchose )))

die Ebene ist klar und die Kolchose auch...

Das Niveau wird hier angezeigt: Statistische Verteilungen in MQL5 - Nehmen Sie das Beste aus R und schneller

Vergleich der Berechnungsgeschwindigkeit

Wir haben Skripte zur Messung der Berechnungszeit von Dichtefunktionen (pdf), Wahrscheinlichkeitsfunktionen (cdf), Funktionen zur Berechnung von Quantilen und Funktionen zur Erzeugung von Pseudozufallszahlen vorbereitet, um die Berechnungsgeschwindigkeit von statistischen Funktionen zu vergleichen.

Die Berechnungen wurden mit einem Array von 51 Werten durchgeführt; für kontinuierliche Verteilungen wurden die Funktionswerte im Bereich von 0 bis 1 berechnet, für diskrete Verteilungen im Bereich von 0 bis 50. Die Berechnungszeit der statistischen Funktionen in R wurde mit Hilfe der Microbenchmark-Bibliothek gemessen. Die Berechnungszeit der Funktion in MQL5 wurde mit der Funktion GetMicrosecondCount() berechnet. Das Berechnungsskript TestStatBenchmark.mq5 befindet sich im Ordner terminal_data_folder\MQL5\Scripts\UnitTests\Stat. Das Skript für R und die Ergebnisse der Messungen der Rechengeschwindigkeit sind im Anhang aufgeführt.

Die Ergebnisse wurden auf Intel Core i7-4790, 3.6 Ghz CPU, 16 GB RAM, Windows 10 x64 gemessen.

Ergebnisse der Berechnungszeitmessung (in Mikrosekunden):


Vertrieb
MQL5-Zeit
Berechnung PDF (µs)
R Berechnungszeit
PDF (µs)
PDF
R/MQL5
MQL5-Zeit
CDF-Berechnung (µs)
R Zeit
CDF Berechnung (µs)
CDF
R/MQL5
MQL5 Quantilberechnungszeit
(µs)
R Berechnungszeit
quantil (µs)
Quantil
R/MQL5
MQL5 Generierungszeit
Zufallszahlen (µs)
R Generierungszeit
Zufallszahlen (μs)
Zufällig
R/MQL5
1
Binomisch
4.39
11.663
2.657
13.65
25.316
1.855
50.18
66.845
1.332
318.73
1816.463
5.699
2
Beta
1.74
17.352
9.972
4.76
15.076
3.167
48.72
129.992
2.668
688.81
1723.45
2.502
3
Gamma
1.31
8.251
6.347
8.09
14.792
1.828
50.83
64.286
1.265
142.84
1281.707
8.973
4
Cauchy
0.45
1.423
3.162
1.33
15.078
11.34
1.37
2.845
2.077
224.19
588.517
2.625
5
Exponential
0.85
3.13
3.682
0.77
2.845
3.695
0.53
2.276
4.294
143.18
389.406
2.72
6
Uniform
0.42
2.561
6.098
0.45
1.423
3.162
0.18
2.846
15.81
40.3
247.467
6.141
7
Geometrisch
2.3
5.121
2.227
2.12
4.552
2.147
0.81
5.407
6.675
278
1078.045
3.879
8
Hypergeometrisch
1.85 11.095
5.997
0.9
8.819
9.799
0.75
9.957
13.28
302.55
880.356
2.91
9
Logistik
1.27
4.267
3.36
1.11
4.267
3.844
0.71
3.13
4.408
178.65
626.632
3.508
10
Weibull
2.99
5.69
1.903
2.74
4.268
1.558
2.64
6.828
2.586
536.37
1558.472
2.906
11
Poisson
2.91
5.974
2.053
6.26
8.534
1.363
3.43
13.085
3.815
153.59
303.219
1.974
12
F
3.86
10.241
2.653
9.94
22.472
2.261
65.47
135.396
2.068
1249.22
1801.955
1.442
13
Chi-Quadrat
2.47
5.974
2.419
7.71
13.37
1.734
44.11
61.725
1.399
210.24
1235.059
5.875
14
Nicht-zentrales Chi-Quadrat
8.05
14.223
1.767
45.61
209.068
4.584
220.66
10342.96
46.873
744.45
1997.653
2.683
15
Nicht-zentral F
19.1
28.446
1.489
14.67
46.935
3.199
212.21
2561.991
12.073
1848.9
2912.141
1.575
16
Nicht-zentrales Beta
16.3
26.739
1.64
10.48
43.237
4.126
153.66
2290.915
14.909
2686.82
2839.893
1.057
17
Negatives Binomial
6.13
11.094
1.81
12.21
19.627
1.607
14.05
60.019
4.272
1130.39
1936.498
1.713
18
Normal
1.15
4.267
3.71
0.81
3.983
4.917
0.7
2.277
3.253
293.7
696.321
2.371
19
Lognormal
1.99
5.406
2.717
3.19
8.819
2.765
3.18
6.259
1.968
479.75
1269.761
2.647
20
T
2.32
11.663
5.027
8.01
19.059
2.379
50.23
58.596
1.167
951.58
1425.92
1.498
21
Nicht-zentral T
38.47
86.757
2.255
27.75
39.823
1.435
1339.51
1930.524
1.441
1550.27
1699.84
1.096
<PDF R/MQL5
3.474 <CDF R/MQL5>
3.465
<Quantil R/MQL5>
7.03
<Random R/MQL5>
3.13

Tabelle 4. Zeit zur Berechnung statistischer Funktionen in R und MQL5 (in Mikrosekunden).

Für R wurden die Mindestzeitwerte und für MQL5 die Durchschnittswerte (pdf_mean, cdf_mean, quantile_mean, random_mean) verwendet.

Wie aus der Tabelle ersichtlich ist, ist die Berechnung der Funktionen der statistischen Bibliothek MQL5 auch unter solchen Bedingungen um ein Vielfaches schneller als R. Im Durchschnitt rechnet MQL5 3 bis 7 Mal schneller als R, selbst wenn man berücksichtigt, dass die verglichenen Varianten der R-Funktionen in C++ geschrieben sind.

In der Praxis erwies sich der MQL5-Sprachcompiler als viel schneller als C++-Implementierungen von Funktionen in R, was die hohe Qualität unserer Entwicklungen zeigt. Bei der Übertragung von Programmen von R nach MQL5 erhalten Sie einen erheblichen Geschwindigkeitszuwachs und Sie müssen keine DLLs von Drittanbietern verwenden.


MQL5 ist jetzt Hunderte Male schneller als Python, aber durch die Einführung von nativen Matrix-Operationen in die Kernsprache, werden wir die Geschwindigkeit der Mathematik, die mehrere Male schneller als in Python Plug-Ins ist zu sehen.

 
Renat Fatkhullin:

1) gibt es schon lange als Standard DatabaseXXX Funktion, sogar der sqlite Datenbank Browser ist in den Editor eingebaut, ausführlicher Artikel über SQL in MQL5

2) die gesamte Ausgabe von Python-Skripten wird detailliert in Protokolle geschrieben

3) Es gibt schon seit langem separate Lösungen, die nicht für die Python-Bibliothek gelten. Ich habe Fragen zur Python-Bindung gestellt. Anstelle von Telegram ist es bequemer, normale Pusher in Mobiltelefonen zu verwenden

4) war schon immer verfügbar

Danke für die ausführliche Antwort, ich habe die DB irgendwie übersehen
 

Geschwindigkeit ist gut, aber noch lange nicht entscheidend

Als Sie Ihren Artikel "Statistische Verteilungen in MQL5 - Das Beste von R nutzen und es schnellermachen" betitelten, habe ich

Ich schwöre, ich habe den ganzen Tag gelacht! Du hast drei Funktionen aus Millionen von Funktionen in R genommen, sie erfunden und sie in MQL5 umgeschrieben und das war's!!! ))) Sie alle haben R!!!! übertroffen. Ahahaha )))) kann mich nicht entschuldigen...


Was ist mit der Tatsache, dass R die größte Datenbank aller statistischen Methoden für jede Richtung hat, mit Tausenden von Bibliotheken... Wann werden Sie es neu schreiben?

Was ist mit einer vollständigen Liste aller MoD-Algorithmen, Hunderten von Bibliotheken... Wann werden Sie sie neu schreiben?

Was ist mit der CRAN-Datenbank mit den neuesten Produkten der Welt, die jeder haben möchte und ausprobieren kann... Wann werden Sie sie neu schreiben? Und vor allem WARUM?

Wussten Sie, dass ich hundert µl mit einer Zeile Code in R ersetzen kann?


Alles, was Sie in Ihren Argumenten haben, ist Geschwindigkeit, die Geschwindigkeit von drei Funktionen, die Sie aus R übernommen haben.

Wussten Sie, dass Sie jede C++-Funktion in R schreiben können?


Äh, okay... warum denke ich mir das aus... es ist sowieso sinnlos, du hast schon alles gelöst... und ich auch...

Ich bitte Sie nur um eines: Schreiben Sie nicht mehr, dass "Sie das Beste von R nehmen" - Sie wissen nicht, wovon Sie reden...


Selbst wenn Sie tausend Funktionen in µl kopieren würden, wäre das nicht einmal ein Hundertstel von dem, was R hat, wozu also dieser Unsinn?

Warum sollte man nicht die Menschen selbst in diese Welt der Statistik, des maschinellen Lernens, der Signalverarbeitung, der Ökonometrie und vieles mehr eintauchen lassen...

 
mytarmailS:

Geschwindigkeit ist gut, aber noch lange nicht entscheidend

Als Sie Ihren Artikel "Statistical Distributions in MQL5 - take the best of R and make it faster" betitelt haben, habe ich den ganzen Tag gelacht!

Ich schwöre, ich habe den ganzen Tag lang gelacht! Du hast drei Funktionen aus Millionen von Funktionen in R genommen, dir deine eigene Meinung über sie gebildet und sie in MQL5 umgeschrieben... Das ist es!!! ))) Sie alle haben R übertroffen!!! Ahahaha )))) kann mich nicht entschuldigen...

Wir haben etwa 500 der in R eingebauten Funktionen in reinem MQL5 umgeschrieben. Das ist die grundlegende mathematische Basis des R-Systems. Alle anderen sind Pakete von Drittanbietern.

Wir haben diese Funktionen schneller umgeschrieben und stellen sie im Quellcode von /include/math/stat zur Verfügung. Dies zeigt die Qualität unserer Sprache und unserer Entwickler.

Wir haben unsere Entscheidung getroffen, wen und wie wir sie unterstützen:

  • MQL5 entwickeln
  • Integration mit Python.


Wenn Sie mit Fragen und Tiraden um sich werfen, empfehle ich Ihnen, Ihr Gegenüber zu betrachten:

  • schreibt seit 30 Jahren unermüdlich Code
  • verbrachte die Hälfte seines Lebens mit der Entwicklung von 5 Handelsplattformen
  • gründete, betreibt und unterhält diese Handelsgemeinschaft seit 15 Jahren.
  • ...suchen Sie in aller Ruhe selbst.

Wenn Sie hierher kommen, um zu konsumieren (niemand hat Ihre Ergebnisse in der Öffentlichkeit gesehen), dann verhalten Sie sich anständig und achten Sie auf Ihre Sprache.
 
Renat Fatkhullin:
Wenn Sie gekommen sind, um zu konsumieren (niemand hier hat Ihre Ergebnisse in der Öffentlichkeit gesehen), benehmen Sie sich und achten Sie auf Ihre Sprache.

Ich konsumiere hier nichts, ich kommuniziere nur im Forum, wenn Sie mich verbieten, fühle ich mich nur noch besser... Also...

Ich verstehe nicht, was Sie tun und was Sie damit erreichen wollen. Aber diese 500 Funktionen, die Sie umgeschrieben haben, sind in dem Sinne tot, dass sie wie ein Lineal zum Messen von etwas sind, und dieses "etwas" sind genau die externen Pakete, auf die Sie den Zugriff gesperrt haben.

 
Renat Fatkhullin:

Wäre es sinnvoll, ZeroMQ nativ zu unterstützen?

Grund der Beschwerde: