Tudo sobre Linguagens de Programação para Machine Learning e integração com o MetaTrader

 
Decidi criar esse tópico para concentrar tudo (perguntas, respostas, cases, informações, etc.) sobre linguagens de programação para Machine Learning (AI/ML) ou Deep Learning (ML/DL) e integração com as plataformas MT4 e/ou MT5 e todos seus recursos como strategy tester, contas demonstração e real, etc.

Na verdade, vejo que aumentou bastante a comunidade e aceitação do uso de inteligência artificial no fórum, e a ideia é continuar contribuindo com tópicos nessa área, que acredito bastante e é meu foco principal de projeto, pelo seu potencial diferenciado. 

A ideia da thread é ser agnóstica, ou seja, qualquer linguagem de programação para AI/ML é bem-vinda. Isso é importante, pois você pode utilizar o MQL (nativo) para isso, ou ainda integrar com linguagens externas, tipicamente Python, R, Matlab, etc.

Pessoalmente, vejo o MQL como a linguagem ideal em termos de compatibilidade, por ser nativa e por motivos óbvios, mas em termos de linguagem de programação para Machine Learning, em ambiente externo, minha linguagem preferida é a Julia, desenvolvida nos laboratórios do MIT, principalmente por ser uma linguagem tão simples como o Python mas com a vantagem de ser compilada e tão rápida como o C++ e o próprio MQL. Na verdade, em alguns casos, ela é até mais rápida que essas linguagens, o que é muito importante em projetos de Deep Learning, já que outra de suas vantagens é que foi desenvolvida para processamento paralelo, aproveitando recursos de máquina como GPUs, etc.

Quem quiser conhecer mais sobre Julia recomendo os links abaixo, já com exemplos de modelos na área de trading:


Seja como for, seja MQL, Julia, Python, ou outra linguagem que você desejar, como Fortran (muitos cientistas ainda preferem essa linguagem para esse objetivo) o importante é não perder o foco no objetivo principal desse tópico: linguagens de programação para Machine Learning e integração com o MetaTrader.

Algumas regras básicas:

1. Por favor não faça perguntas sobre outros assuntos aqui.
2. Por favor não faça perguntas se não postar seu código fonte exemplo relacionado à dúvida.
3. Por favor utilize Alt+S para editar e apresentar seu código fonte nesse tópico.
4. Não publique nenhum código fonte nesse tópico se não for de sua autoria ou público, como por exemplo os existentes no CodeBase.
4. Se você já criou ou vai criar um tópico especificamente com sua pergunta coloque aqui apenas uma referência para ele para evitar redundância.
5. Por favor siga as regras do fórum (https://www.mql5.com/pt/about/rules)

Obrigado e boa discussão a todos!

Rogério Figurelli

 
GitHub: The top 10 programming languages for machine learning
GitHub: The top 10 programming languages for machine learning
  • Nick Heath
  • www.techrepublic.com
While you might think that machine learning is reserved for developers well-versed in languages like R and Python, you'd be wrong. Online code repository GitHub has pulled together the 10 most popular programming languages used for machine learning hosted on its service, and, while Python tops the list, there's a few surprises on there...
 

Fórum de negociação, sistemas de negociação automatizados e testes de estratégias de negociação

MetaTrader 5 - Grupo de usuários de Python

Rogerio Figurelli, 2019.07.23 06:18

Olá  BrenoToledo, seu problema parece simples, você provavelmente está conectado, por default, em um servidor nacional utilizando um código que tenta acessar um ativo FX (EUR/USD).
Dessa forma, recomendo executar manualmente os seguintes comandos diretamente no ambiente Python, esperando o MT5 abrir, e ajustando o servidor:

from MetaTrader5 import *
MT5Initialize()

Fiz um teste forçando um ambiente com erro de servidor e o problema e mensagem de erro foi exatamente essa, portanto se esse é realmente seu caso, por favor refaça o teste logando em MetaQuotes-Demo, e se for isso mesmo, você deve conseguir rodar todo código e obter uma imagem como abaixo.


Sds.,
Rogério Figurelli


 

Olá pessoal. Espero que estejam todos bem.

Eu estou começando no Meta Trader 5 e pretendo fazer uma integração com Python para usar suas features de Machine Learning.

Entretanto, após seguis os passos de 1 a 5 das figuras em anexo, eu tento rodar umas simples linhas de comando em Python e nada acontece.

Alguém sabe o que pode ser?

Desde já, obrigado.

Arquivos anexados:
 
AfonsPiresFeitoza:

Olá pessoal. Espero que estejam todos bem.

Eu estou começando no Meta Trader 5 e pretendo fazer uma integração com Python para usar suas features de Machine Learning.

Entretanto, após seguis os passos de 1 a 5 das figuras em anexo, eu tento rodar umas simples linhas de comando em Python e nada acontece.

Alguém sabe o que pode ser?

Desde já, obrigado.

Execute num terminal o script em python e ele devera apresentar erros. Dai tu pode resolve-los sozinho ou colar a imagem aqui para mais ajuda.
 
Ricardo Rodrigues Lucca:
Execute num terminal o script em python e ele devera apresentar erros. Dai tu pode resolve-los sozinho ou colar a imagem aqui para mais ajuda.

o script dele não tem erros.

Da maneira que está ou roda pelo terminal de alguma IDE ou simplesmente vai na pasta scripts do MetaTrader e joga no gráfico.

 
Jonathan Pereira:

o script dele não tem erros.

Da maneira que está ou roda pelo terminal de alguma IDE ou simplesmente vai na pasta scripts do MetaTrader e joga no gráfico.

Tem sim, possivelmente nao esta instalado o pandas ou alguma coisa que ele deu import.
 
Ricardo Rodrigues Lucca:
Tem sim, possivelmente nao esta instalado o pandas ou alguma coisa que ele deu import.

Onde está o erro ?

Pq ate onde eu vi, ele apenas não rodou, pois o botão de compilar apenas salva o script e não executa o mesmo!

 
AfonsPiresFeitoza:

Olá pessoal. Espero que estejam todos bem.

Eu estou começando no Meta Trader 5 e pretendo fazer uma integração com Python para usar suas features de Machine Learning.

Entretanto, após seguis os passos de 1 a 5 das figuras em anexo, eu tento rodar umas simples linhas de comando em Python e nada acontece.

Alguém sabe o que pode ser?

Desde já, obrigado.

Bom dia, na documentação do Metatrader está perfeito a explicação, segue o link, acredito que por ela vc vai saber todos os detalhes

https://www.mql5.com/pt/docs/integration/python_metatrader5

Documentação sobre MQL5: Integração / MetaTrader para Python
Documentação sobre MQL5: Integração / MetaTrader para Python
  • www.mql5.com
MetaTrader para Python - Integração - Referência MQL5 - Referência sobre algorítimo/automatização de negociação na linguagem para MetaTrader 5