Como criar gráficos 3D usando o DirectX no MetaTrader 5

Como criar gráficos 3D usando o DirectX no MetaTrader 5

Os gráficos 3D fornecem excelentes meios para analisar grandes quantidades de dados, pois permitem a visualização de padrões ocultos. Essas tarefas podem ser resolvidas diretamente em MQL5, enquanto as funções do DireсtX permitem a criação de objetos tridimensionais. Assim, é ainda possível criar programas de qualquer complexidade, até jogos 3D para a MetaTrader 5. Comece a aprender gráficos 3D desenhando formas tridimensionais simples.
Otimização Walk Forward Contínua (Parte 3): Método de Adaptação de um Robô ao Otimizador Automático

Otimização Walk Forward Contínua (Parte 3): Método de Adaptação de um Robô ao Otimizador Automático

A terceira parte serve como uma ponte entre as duas partes anteriores: Ele descreve o mecanismo de interação com a DLL considerada no primeiro artigo e os objetos para download de relatórios, descritos no segundo artigo. Nós analisaremos o processo de criação de um wrapper para uma classe que é importada da DLL e que forma um arquivo XML com o histórico de negociação. Nós também consideraremos um método para interagir com este wrapper.
SQLite: trabalho nativo com bancos de dados SQL em MQL5

SQLite: trabalho nativo com bancos de dados SQL em MQL5

O desenvolvimento de estratégias de negociação está associado ao processamento de grandes quantidades de dados. Agora, em MQL5, você pode trabalhar com bancos de dados usando consultas SQL baseadas no SQLite. Uma vantagem importante desse mecanismo é que todo o banco de dados está contido em um único arquivo, localizado no computador do usuário.
Gerenciando otimizações (Parte 2): Cirando a lógica do aplicativo e objetos chave

Gerenciando otimizações (Parte 2): Cirando a lógica do aplicativo e objetos chave

Este artigo é uma continuação da publicação anterior sobre a criação de uma interface gráfica para gerenciar otimizações. Nele, abordaremos a lógica do robô para o complemento a ser criado. Criaremos um wrapper que permitirá iniciar o terminal MetaTrader 5 como um processo gerenciado através do C#. Também consideraremos o trabalho com arquivos de configuração. Dividiremos a lógica do programa em duas partes, a primeira descreverá os métodos chamados após pressionar uma tecla específica e a segunda, a parte da inicialização e do gerenciamento de otimizações.
Gerenciando otimizações (Parte I): Criando uma interface gráfica do usuário

Gerenciando otimizações (Parte I): Criando uma interface gráfica do usuário

Este artigo descreve um processo para criar uma extensão projetada para o terminal MetaTrader. Essa solução ajuda a automatizar o processo de otimização através de sua execução em outros terminais. Outros artigos serão escritos com base neste artigo para desenvolver este tópico. A extensão será escrita usando linguagem C# e modelos de programação, o que, além do objetivo principal deste artigo, mostrará não apenas a capacidade do terminal de expandir os recursos originalmente criados através da escrita de templates próprios, mas também como criar facilmente gráficos personalizados numa linguagem com os recursos mais convenientes para isso.
Estimando o índice de funcionalidade, o expoente de Hurst e a possibilidade de prever séries temporais financeiras

Estimando o índice de funcionalidade, o expoente de Hurst e a possibilidade de prever séries temporais financeiras

A busca e o estudo do comportamento fractal de dados financeiros implica que, por trás do comportamento aparentemente caótico de séries temporais econômicas, estão ocultos e operam mecanismos estáveis que governam a conduta coletiva dos participantes. Na bolsa de valores, essa mecânica pode levar ao surgimento de uma dinâmica de preços que determina e descreve as propriedades específicas das séries de preços. Na negociação, seria interessante ter indicadores que pudessem estimar os parâmetros de fractalidade de maneira efetiva e estável, numa escala e num intervalo de tempo que fossem uteis na prática.
Como escrever uma biblioteca DLL em MQL5 (Parte II) em 10 minutos: escrevendo no ambiente do Visual Studio 2017

Como escrever uma biblioteca DLL em MQL5 (Parte II) em 10 minutos: escrevendo no ambiente do Visual Studio 2017

O artigo básico inicial não perdeu sua importância e todos os interessados neste tópico simplesmente devem lê-lo. Mas já se passou muito tempo desde então, e agora o Visual Studio 2017 com uma nova interface está à frente, também a própria plataforma MetaTrader 5 vem se desenvolvendo e segue em frente. O artigo descreve as etapas de criação de um projeto dll, abrangendo configurações e colaboração com as ferramentas do terminal MetaTrader 5.
Usando os recursos computacionais do MATLAB 2018 no MetaTrader 5

Usando os recursos computacionais do MATLAB 2018 no MetaTrader 5

Depois da atualizar o pacote MATLAB em 2015, é necessário considerar a maneira moderna de criar bibliotecas DLL. Como o exemplo de um indicador preditivo, o artigo ilustra os recursos de vinculação do MetaTrader 5 e do MATLAB usando versões modernas de plataformas de 64 bits. Ao analisar toda a sequência de conexão do MATLAB, o desenvolvedor MQL5 criará rapidamente aplicativos com recursos computacionais avançados, evitando riscos.
Extraindo dados estruturados de páginas HTML através de seletores CSS

Extraindo dados estruturados de páginas HTML através de seletores CSS

O artigo descreve um método universal para analisar e converter dados de documentos HTML com base em seletores CSS. Em MQL estão disponíveis relatórios de negociação e de teste, calendários econômicos, sinais públicos e monitoramento de contas, fontes de cotações on-line adicionais.
Integração da MetaTrader 5 e Python: recebendo e enviando dados

Integração da MetaTrader 5 e Python: recebendo e enviando dados

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.
Como criar e testar símbolos de ativos MOEX personalizados no MetaTrader 5

Como criar e testar símbolos de ativos MOEX personalizados no MetaTrader 5

O artigo descreve a criação de um símbolo de ativo personalizado da bolsa de valores usando a linguagem MQL5, em particular, descreve o uso de cotações no popular site "Finam". Outra opção considerada neste artigo é a possibilidade de trabalhar com um formato arbitrário de arquivos de texto, usados na criação do símbolo personalizado. Isso permite trabalhar com quaisquer símbolos financeiros e fontes de dados, depois de criar um símbolo personalizado, podemos usar todos os recursos do Testador de Estratégia do MetaTrader 5 a fim de testarmos os algoritmos de negociação para os instrumentos da bolsa.
Usando OpenCL para testar padrões de candles

Usando OpenCL para testar padrões de candles

Neste artigo, estudaremos um algoritmo para criar um testador de modelos de candles, em linguagem OpenCL, no modo "OHLC em M1". Além disso, compararemos sua velocidade com a do testador de estratégia embutido, no modo de otimização rápida e lenta.
Integração de um EA em MQL e bancos de dados (SQL Server, .NET e C#)

Integração de um EA em MQL e bancos de dados (SQL Server, .NET e C#)

Este artigo descreve como adicionar a um EA um recurso para trabalhar com o servidor de banco de dados Microsoft SQL Server. São importadas funções de uma DLL. Para criar a DLL, é implementada a plataforma Microsoft .NET e a linguagem C#. Com pequenas alterações, os métodos usados no artigo também são adequados para EAs escritos em MQL4.
Redes Neurais Profundas (Parte VII). Ensemble de redes neurais: stacking

Redes Neurais Profundas (Parte VII). Ensemble de redes neurais: stacking

Nós continuamos a construir os ensembles. Desta vez, o bagging de ensemble criado anteriormente será complementado com um combinador treinável — uma rede neural profunda. Uma rede neural combina as 7 melhores saídas ensemble após a poda. A segunda obtém todas as 500 saídas do ensemble como entrada, realizando a poda e combinando elas. As redes neurais serão construídas usando o pacote keras/TensorFlow para Python. Os recursos do pacote serão brevemente considerados. Serão realizados os testes e a comparação da qualidade de classificação do bagging e stacking de ensembles.
950 sites transmitindo o calendário econômico da MetaQuotes

950 sites transmitindo o calendário econômico da MetaQuotes

A adição do widget fornece os sites com um cronograma detalhado de 500 indicadores das maiores economias do mundo. Assim, além do conteúdo principal do site, os traders recebem rapidamente informações atualizadas sobre todos os eventos importantes com explicações e gráficos.
Como criar uma Especificação de Requisitos para solicitar um robô de negociação

Como criar uma Especificação de Requisitos para solicitar um robô de negociação

Você está negociando usando sua própria estratégia? Se as regras do sistema puderem ser formalmente descritas como algoritmos de software, é melhor confiar a negociação a um Expert Advisor automatizado. Um robô não precisa de sono ou comida e não está sujeito as fraquezas humanas. Neste artigo, nós mostramos como criar uma Especificação de Requisitos ao solicitar um robô de negociação no serviço Freelance.
Redes Neurais Profundas (Parte VI). Ensemble de classificadores de redes neurais: bagging

Redes Neurais Profundas (Parte VI). Ensemble de classificadores de redes neurais: bagging

O artigo discute os métodos de construção e treinamento de ensembles de redes neurais com estrutura de bagging. Ele também determina as peculiaridades da otimização de hiperparâmetros para classificadores de redes neurais individuais que compõem o ensemble. A qualidade da rede neural otimizada obtida no artigo anterior da série é comparada com a qualidade do ensemble de redes neurais criado. São consideradas as possibilidades de melhorar ainda mais a qualidade da classificação do ensemble.
Como criar um painel gráfico de qualquer nível de complexidade

Como criar um painel gráfico de qualquer nível de complexidade

O artigo apresenta uma explicação detalhada de como criar um painel com base na classe CAppDialog e como adicionar controles ao painel. Ele fornece a descrição da estrutura do painel e um esquema, que exibe a herança de objetos. Neste artigo, você também aprenderá como os eventos são tratados e como eles são entregues aos controles dependentes. Exemplos adicionais mostram como editar os parâmetros do painel, como o tamanho e a cor do plano de fundo.
Redes Neurais Profundas (Parte V). Otimização Bayesiana de hiperparâmetros de uma DNN

Redes Neurais Profundas (Parte V). Otimização Bayesiana de hiperparâmetros de uma DNN

O artigo considera a possibilidade de aplicar a otimização Bayesiana para os hiperparâmetros das redes neurais profundas, obtidas por diversas variantes de treinamento. É realizado a comparação da qualidade de classificação de uma DNN com os hiperparâmetros ótimos em diferentes variantes de treinamento. O nível de eficácia dos hiperparâmetros ótimos da DNN foi verificado nos testes fora da amostra (forward tests). As direções possíveis para melhorar a qualidade da classificação foram determinadas.
Comparamos a velocidade de indicadores de armazenamento automático em cache

Comparamos a velocidade de indicadores de armazenamento automático em cache

O artigo compara o acesso MQL5 clássico a indicadores com métodos alternativos em estilo MQL4. São consideradas algumas variações de acesso - em estilo MQL4 - a indicadores, nomeadamente, o acesso com cache de identificadores e sem ele. É estudada a contabilização de identificadores de indicadores dentro do kernel MQL5.
Otimização Controlada: Recozimento Simulado

Otimização Controlada: Recozimento Simulado

O Testador de Estratégia da plataforma de negociação MetaTrader 5 fornece apenas duas opções de otimização: otimização completa dos parâmetros e o algoritmo genético. Este artigo propõe um novo método para otimizar as estratégias de negociação — Recozimento Simulado (Simulated Annealing). Será introduzido o algoritmo do método, sua implementação e integração em qualquer Expert Advisor. O algoritmo desenvolvido é testado no EA Moving Average (Média Móvel).
ZUP - ZigZag universal com padrões Pesavento. Pesquisa de padrões

ZUP - ZigZag universal com padrões Pesavento. Pesquisa de padrões

A plataforma-indicador do ZUP permite pesquisar padrões populares com parâmetros já definidos. Embora eles estejam definidos, você também pode ajustá-los de acordo com suas necessidades. Há também a possibilidade de criar novos padrões usando a interface gráfica do ZUP e salvar seus parâmetros num arquivo. Depois disso, você pode verificar rapidamente se há novos padrões nos gráficos.
LifeHack para traders: preparemos "fast-food" de indicadores

LifeHack para traders: preparemos "fast-food" de indicadores

Se você estiver mudando para MQL5 agora, você vai precisar deste artigo, porque, por um lado, o acesso aos dados dos indicadores e às séries é realizado na nossa conhecida linguagem MQL4, por outro lado, toda a realização é escrita em MQL5. Todas as funções são o mais claras quanto possível e são perfeitamente adequadas para a depuração passo a passo.
Seleção automática de sinais promissores

Seleção automática de sinais promissores

O artigo analisa os sinais de negociação, para o MetaTrader 5, com execução automática, nas contas dos assinantes. Também é estudado o desenvolvimento de ferramentas para procurar sinais de negociação promissores diretamente no terminal.
R quadrado como uma estimativa da qualidade da curva de saldo da estratégia

R quadrado como uma estimativa da qualidade da curva de saldo da estratégia

Este artigo descreve a construção do R² - critério de otimização personalizado. Esse critério pode ser usado para estimar a qualidade da curva de saldo de uma estratégia e para selecionar as estratégias mais consistentes e lucrativas. O trabalho discute os princípios de sua construção e os métodos estatísticos utilizados na estimativa de propriedades e qualidade desta métrica.
Expert Advisor Multiplataforma: Stops

Expert Advisor Multiplataforma: Stops

Este artigo discute uma implementação dos níveis de stop em um expert advisor para torná-lo compatível com as duas plataformas - MetaTrader 4 e MetaTrader 5.