Aprendizado de máquina no trading: teoria, prática, negociação e não só - página 2282

 
mytarmailS:

fazer um R-connect.

já o fez, mas não funcionouhttps://www.mql5.com/ru/forum/306688/page10#comment_11308158

 
Renat Fatkhullin:
Você pode compartilhar a informação?
1) Você usa a biblioteca de pitões MT5?
2) Você o usa fora ou dentro do MT5?
3) Quais as características que faltam na biblioteca? Acesso a indicadores?

Estamos preparando uma atualização da MQL5, adicionando operações de matriz rápida. Isto permitirá realizar cálculos massivos.

Depois desenvolveremos conectores para pacotes analíticos e implementaremos a integração padrão WinML.
1) fazer uma integração normal com sqlite3
2) exibir o erro quando o script pára abruptamente, como em python, com um link para a string e uma descrição do erro e que seria por padrão no log
3) adicionar integração com telegrama api, pelo menos um conjunto mínimo
4) permitir colocar no mercado EAs com webrequest, ou seja, com a capacidade de solicitar informações do exterior
 
Evgeny Dyuka:
1) fazer uma integração normal com sqlite3
2) exibir o erro quando o script parou abruptamente, como em python, com um link para a descrição da string e do erro, e por padrão enviá-lo para a revista
3) adicionar integração com o telegrama api, pelo menos um conjunto mínimo
4) permitir colocar no mercado consultores com webrequest, ou seja, com a capacidade de solicitar informações do exterior.

1) existe há muito tempo como uma base de dados regular de funçõesXXX, mesmo um navegador de base de dados sqlite está incorporado no editor, um artigo detalhado sobre SQL em MQL5

2) toda a saída dos scripts python é escrita em logs em detalhe

3) isto já existe há muito tempo como soluções separadas e não se aplica à biblioteca python. Fiz perguntas sobre a encadernação python. Em vez de telegrama, é conveniente usar empurradores normais em telemóveis.

4) sempre esteve disponível

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

já o fez, mas não funcionouhttps://www.mql5.com/ru/forum/306688/page10#comment_11308158

infelizmente....

o produto mais popular do mundo depois do matlab para cálculos estatísticos, chame-lhe uma fazenda coletiva ))))

O nível é claro, assim como a fazenda coletiva ...

 
mytarmailS:

infelizmente....

o produto mais procurado do mundo depois do matlab para cálculos estatísticos, chame-lhe uma quinta colectiva )))

o nível é claro e a fazenda coletiva também...

O nível é mostrado aqui: Distribuições Estatísticas em MQL5 - Tire o Melhor do R e Mais Rápido

Comparação da velocidade de cálculo

Preparamos scripts para medir o tempo de cálculo de funções de densidade (pdf), funções de probabilidade (cdf), funções que calculam quantis e funções que geram números pseudorandômicos para comparar a velocidade de cálculo de funções estatísticas.

Os cálculos foram realizados em um array de 51 valores; para distribuições contínuas, os valores das funções foram calculados na faixa de 0 a 1, para distribuições discretas na faixa de 0 a 50. O tempo de cálculo das funções estatísticas em R foi medido utilizando a biblioteca de microbenchmark. O tempo de cálculo da função em MQL5 foi calculado usando a função GetMicrosecondCount(). O script de cálculo TestStatBenchmark.mq5 pode ser encontrado em terminal_data_folder\MQL5\Scripts\UnitTests\Stat. O roteiro para R e os resultados das medições da velocidade de cálculo são apresentados no Apêndice.

Os resultados foram medidos em Intel Core i7-4790, CPU 3.6 Ghz, 16 GB de RAM, Windows 10 x64.

Resultados da medição do tempo de cálculo (em microssegundos):


Distribuição
MQL5 tempo
cálculo PDF (µs)
Tempo R
Cálculo em PDF (µs)
PDF
R/MQL5
MQL5 tempo
Cálculo CDF (µs)
Tempo R
Cálculo do CDF (µs)
CDF
R/MQL5
MQL5 Tempo de cálculo da quantidade
(µs)
Tempo de cálculo R
quantil (µs)
Quantidade
R/MQL5
MQL5 Tempo de geração
números aleatórios (µs)
Tempo de geração R
números aleatórios (µs)
Aleatório
R/MQL5
1
Binomial
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
Gama
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
Exponencial
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
Uniforme
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
Geométrico
2.3
5.121
2.227
2.12
4.552
2.147
0.81
5.407
6.675
278
1078.045
3.879
8
Hipergeometria
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
Logística
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
Praça Chi
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
ChiSquadrado Não-Central
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
F não central
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
Beta não central
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
Binômio Negativo
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
Não central 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
<Quantidade R/MQL5>
7.03
<Random R/MQL5>
3.13

Tabela 4. Tempo para calcular funções estatísticas em R e MQL5 (em microssegundos).

Para R tomamos valores mínimos de tempo e para MQL5 tomamos valores médios (pdf_mean, cdf_mean, quantile_mean, random_mean).

Como pode ser visto na tabela, mesmo nestas condições o cálculo das funções da biblioteca estatística MQL5 é várias vezes mais rápido do que R. Em média, a MQL5 calcula 3 a 7 vezes mais rápido que R, mesmo tendo em conta que as variantes comparadas das funções R são, de facto, escritas em C++.

Na prática, o compilador de linguagem MQL5 revelou-se muito mais rápido que as implementações em C++ de funções em R, o que mostra a alta qualidade dos nossos desenvolvimentos. Ao transferir programas de R para MQL5 você terá uma aceleração significativa e não precisará usar DLLs de terceiros.


MQL5 é agora centenas de vezes mais rápido do que em Python, mas ao introduzir operações de matriz nativa na linguagem principal, veremos a velocidade da matemática, que é várias vezes mais rápida do que nos plug-ins Python.

 
Renat Fatkhullin:

1) existe há muito tempo como uma função padrão do DatabaseXXX, mesmo o navegador sqlite do banco de dados está incorporado no editor, artigo detalhado sobre SQL em MQL5

2) toda a saída dos scripts python é escrita em logs em detalhe

3) isto já existe há muito tempo como soluções separadas e não se aplica à biblioteca python. Fiz perguntas sobre a encadernação python. Em vez de telegrama, é conveniente usar empurradores normais em telemóveis.

4) sempre esteve disponível

Obrigado pela resposta detalhada, eu de alguma forma senti falta do BD
 

A velocidade é boa, mas está longe de ser decisiva.

Quando você intitulou seu artigo "Distribuições Estatísticas em MQL5 - Usando o Melhor do R e Tornando-o Mais Rápido", eu

Eu juro que ri o dia todo! Você pegou três funções de milhões de funções em R, as inventou e as reescreveu no MQL5 e é isso!!! ))) Todos vocês ultrapassaram a R!!!! Ahahaha )))) não me pode desculpar...


E o facto de o R ter a maior base de qualquer método estatístico para qualquer direcção, com milhares de bibliotecas... Quando é que o vais reescrever?

E a lista completa de quaisquer algoritmos MoD, centenas de bibliotecas... Quando é que a vais reescrever?

E a base de dados CRAN com os últimos produtos do mundo, que todos querem e podem tentar... Quando vai reescrevê-la? E o mais importante, porquê?

Sabias que posso substituir cem µl por uma linha de código em R?


Tudo o que você tem em seus argumentos é velocidade, a velocidade de três funções que você tirou de R.

Você sabia que pode escrever qualquer função C++ em R?


Eh, ok... porque estou eu a inventar isto... é inútil de qualquer maneira, já resolveu tudo... e eu também já...

Uma coisa eu pergunto - não escreva mais que "você leva o melhor do R" - você não sabe do que está falando...


Mesmo que você copiasse mil funções em µl, não seria nem um centésimo de um por cento do que R tem, de que adianta fazer esse disparate?

Porque não deixar as próprias pessoas portarem para este mundo de estatísticas, aprendizagem de máquinas, processamento de sinais, econometria e muito mais...

 
mytarmailS:

A velocidade é boa, mas está longe de ser decisiva.

Quando você intitulou seu artigo "Distribuições Estatísticas em MQL5 - tire o melhor do R e torne-o mais rápido" eu ri o dia inteiro!

Eu juro que ri o dia todo! Você pegou três funções de milhões de funções em R, inventou sua própria opinião sobre elas e as reescreveu na MQL5... É isso aí!!! ))) Todos vocês ultrapassaram o R!!! Ahahaha )))) Eu não posso me desculpar...

Pegamos e reescrevemos cerca de 500 das funções embutidas do R em MQL5 puro. É essa a base matemática básica do sistema R. Todo o resto são pacotes de terceiros.

Nós reescrevemos estas funções mais rapidamente e as distribuímos no código fonte /include/math/stat. Isto mostra a qualidade do nosso idioma e dos nossos desenvolvedores.

Fizemos a nossa escolha quanto a quem e como apoiá-los:

  • desenvolver MQL5
  • Ter integração com Python.


Quando você está lançando perguntas e reclamações, eu recomendo que olhe para o seu oponente quem:

  • tem sido incansável a escrever código há 30 anos.
  • passou metade da sua vida para o desenvolvimento de 5 plataformas de negociação
  • criou, dirige e mantém esta comunidade comercial durante 15 anos.
  • ...procure por si mesmo à sua vontade.

Se você vem aqui para consumir (ninguém viu os seus resultados em público), então comporte-se decentemente e observe a sua linguagem.
 
Renat Fatkhullin:
Se você veio para consumir (ninguém aqui viu seus resultados em público), comporte-se e observe seu idioma.

Eu não consumo nada aqui, só estou a comunicar no fórum, se me banirem só me vão fazer sentir melhor... por isso...

Não entendo o que estás a fazer e o que estás a tentar tirar disso. Mas estas 500 funções que reescreveste estão mortas no sentido em que são como uma régua para medir algo e este "algo" é exactamente os pacotes externos aos quais bloqueaste o acesso.

 
Renat Fatkhullin:

Faria sentido tornar o suporte do ZeroMQ nativo?