Obrigado. É uma pena que não haja fundição.
Como farei - com certeza carregarei um exemplo aqui, mas é que não tinha essa tarefa antes.
Além disso, se os soquetes forem desenvolvidos no testador, isso será muito relevante.
Para o histórico, há uma grande biblioteca de matemática padrão em MQL5 nos códigos-fonte, diretamente no terminal:
- Distribuições estatísticas em MQL5 - pegando o melhor do R e tornando-o mais rápido
Vamos considerar as funções para trabalhar com distribuições estatísticas básicas implementadas na linguagem R.
São elas: Cauchy, Weibull, normal, lognormal, logística, exponencial, uniforme, distribuição gama, distribuições Beta central e não central, qui-quadrado, distribuições F de Fisher, distribuições t de Student, bem como distribuições binomiais discretas e binomiais negativas, distribuições geométricas, hipergeométricas e de Poisson. Além disso, há funções para calcular os momentos teóricos das distribuições, o que nos permite avaliar o grau em que a distribuição real corresponde à distribuição do modelo.
Incluímos um grande número de funções matemáticas do R na biblioteca MQL5 padrão. Além disso, conseguimos que sua operação fosse mais rápida de 3 a 7 vezes em comparação com as versões originais na linguagem R. - Guia de Referência MQL5 / Biblioteca Padrão / Matemática / Estatística
Essas são várias centenas de funções nas seções: Características estatísticas, Distribuição normal, Distribuição lognormal, Distribuição beta, Distribuição beta não central, Distribuição gama, Distribuição qui-quadrado, Distribuição qui-quadrado não central, Distribuição exponencial, Distribuição F, Distribuição F não central, Distribuição T, Distribuição T não central, Distribuição logística, Distribuição de Cauchy, Distribuição uniforme, Distribuição de Weibull, Distribuição binomial, Distribuição binomial negativa, Distribuição geométrica, Distribuição hipergeométrica, Distribuição de Poisson, Funções auxiliares
Sempre leio os artigos de @Maxim Dmitrievsky com prazer, gosto de sua abordagem para escrever artigos - a implementação da ideia em si é descrita de forma concisa, não gosto de "carretéis quilométricos" de código ultimamente e de mastigar cada linha para "e agora nomearemos a variável XY, onde armazenaremos...".
Obrigado!
É com prazer que sempre leio os artigos de @Maxim Dmitrievsky, pois gosto de sua abordagem para escrever artigos - a implementação da ideia é descrita de forma concisa, não gosto de "trechos quilométricos" de código ultimamente e de mastigar cada linha para "e agora nomearemos a variável XY, onde armazenaremos...".
Obrigado!
Portanto, há diferentes tipos de leitores, tanto experientes quanto novatos.
A atenção humana é um recurso muito limitado, e até mesmo um leitor experiente, para compreender a essência do artigo, precisa ler "na diagonal", caso contrário, ao final do artigo, simplesmente não conseguirá digerir o material.
Se não me engano, uma pessoa pode digerir um novo material somente nos primeiros 15 minutos, depois a atenção diminui e o efeito do novo conhecimento será nulo - como dizem "menos é melhor".
É possível, é claro, esticar a leitura de um artigo grande, como ler uma revista ou um livro por vários dias, mas essa não é minha opção
socketclientEA (Si-6.19,M15) Conexão localhost:9090 erro 4014
https://www.mql5.com/pt/docs/network/socketconnect
Quando chamado a partir do indicador,GetLastError() retornará o erro 4014 - "Função do sistema que não pode ser chamada".
Solução:
O endereço para conexão deve ser adicionado à lista de endereços permitidos no lado do terminal do cliente (seção Tools \ Settings \ Expert Advisors).
Permitir Webrequest para a seguinte url:
http://localhost
Foi publicado o novo artigo Integração entre MetaTrader 5 e Python: recebendo e enviando dados:
Autor: Maxim Dmitrievsky
Obrigado finalmente... :)
Por favor, publique mais... Muito mais... Eu adoro isso...- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Novo artigo Integração da MetaTrader 5 e Python: recebendo e enviando dados foi publicado:
O vasto processamento de dados requer ferramentas extensas e muitas vezes está além do ambiente seguro de um único aplicativo. Linguagens de programação especializadas são usadas para processar e analisar dados, estatísticas e aprendizado de máquina. Uma das principais linguagens de programação para processamento de dados é o Python. O artigo fornece uma descrição de como conectar a MetaTrader 5 e o Python usando sockets, além de como receber cotações por meio da API do terminal.
Nós vamos escrever um programa simples que irá criar um servidor socket e receber as informações necessárias do cliente (o programa em MQL5), manipulá-lo e enviar o resultado de volta. Esse parece ser o método de interação mais eficiente. Suponha que nós precisamos usar uma biblioteca de aprendizado de máquina, como por exemplo scikit learn, que calculará a regressão linear usando preços e retornar as coordenadas, com base nos quais uma linha pode ser desenhada no terminal MetaTrader 5. Este é um exemplo simples. No entanto, essa interação também pode ser usada para treinar uma rede neural, para enviar à ela dados do terminal (cotações), aprender e retornar o resultado para o terminal.
Agora nós podemos continuar a criação de uma classe responsável pela manipulação do socket:Autor: Maxim Dmitrievsky