Explorar as classes de estratégia de negociação da biblioteca padrão - Personalização de estratégias
Explorar as classes de estratégia de negociação da biblioteca padrão - Personalização de estratégias
Neste artigo, mostraremos como explorar a biblioteca padrão de classes de estratégia de negociação e como adicionar estratégias personalizadas e filtros/sinais utilizando a lógica de padrões e modelos do Assistente MQL5. No final, você será capaz de adicionar facilmente as suas próprias estratégias utilizando os indicadores padrão do MetaTrader 5 e o Assistente do MQL5 criará um código limpo e poderoso bem como um Expert Advisor totalmente funcional.
Criação e teste de símbolos personalizados na MetaTrader 5
Criação e teste de símbolos personalizados na MetaTrader 5
A criação de símbolos personalizados empurra os limites no desenvolvimento de sistemas de negociação e análise do mercado financeiro. Agora, os traders são capazes de desenhar gráficos e testar estratégias de negociação em um número ilimitado de instrumentos financeiros.
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.
MQL5 Cookbook: Implementando seu próprio Depth of Market (Book de Ofertas)
MQL5 Cookbook: Implementando seu próprio Depth of Market (Book de Ofertas)
Este artigo demonstra como utilizar o Depth of Market de forma programática e descreve o princípio de funcionamento da classe CMarketBook, que pode expandir a biblioteca padrão de classes de MQL5 e oferecer métodos convenientes para usar o Depth of Market (DOM). No Brasil o Livro de Ofertas faz o papel do DOM e registra todas as ordens por nível de preço.
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.
Expert Advisor Universal: Estratégias Personalizadas e Classes Auxiliares de Negociação (Parte 3)
Expert Advisor Universal: Estratégias Personalizadas e Classes Auxiliares de Negociação (Parte 3)
Neste artigo, vamos continuar a análise dos algoritmos do motor de negociação CStrategy. A terceira parte da série contém uma análise detalhada com exemplos de como desenvolver estratégias de negociação específicas usando esta abordagem. É dada uma atenção especial aos algoritmos auxiliares - sistema de registro Expert Advisor e acesso a dados usando um indexador convencional (Close[1], Open[0], etc).
Criação e publicação de relatórios de negócios e notificação SMS
Criação e publicação de relatórios de negócios e notificação SMS
Os negociantes nem sempre têm a habilidade e desejam ficar sentados na frente do terminal de negócio por horas. Especialmente se o sistema de negócio for mais ou menos formalizado e puder automaticamente identificar alguns dos estados do mercado. Este artigo descreve como gerar um relatório de resultados de negócios (utilizando o Consultor Especialista, o indicador ou o script) como um arquivo HTML e carregá-lo por FTP para o servidor WWW. Também levaremos em consideração o envio de notificações de eventos de negócios por SMS para o celular.
MetaTrader 5: A publicação de previsões comerciais e declarações de negociação ao vivo via e-mail em blogs, redes sociais e sites dedicados
MetaTrader 5: A publicação de previsões comerciais e declarações de negociação ao vivo via e-mail em blogs, redes sociais e sites dedicados
Este artigo tem como objetivo apresentar as soluções prontas para as previsões de publicação usando o MetaTrader 5. Ele cobre uma gama de ideias: a partir do uso de sites dedicados à publicação das declarações do MetaTrader, através da criação de seu próprio site com praticamente nenhuma experiência em programação web necessária e, finalmente, a integração com um serviço de microblogging e rede social que permite que muitos leitores participem e sigam as previsões. Todas as soluções apresentadas aqui são 100% gratuitas e possíveis de instalar por qualquer pessoa com um conhecimento básico de e-mail e serviços FTP. Não existem obstáculos para usar as mesmas técnicas para hospedagem profissional e serviços de previsões de negociação comercial.
Manipulação de Arquivos ZIP em Linguagem MQL5 Pura
Manipulação de Arquivos ZIP em Linguagem MQL5 Pura
A linguagem MQL5 se mantém em evolução e novos recursos para trabalhar com dados estão constantemente sendo adicionados. Devido as inovações recentes, se tornou possível manipular arquivos ZIP usando ferramentas MQL5 nativas, sem envolver bibliotecas DLL de terceiros. Este artigo foca em como isso é realizado e implementa a classe CZip, que é uma ferramenta universal para ler, criar e modificar arquivos ZIP, como um exemplo.
Migrando do MQL4 para o MQL5
Migrando do MQL4 para o MQL5
Este artigo é um guia rápido para as funções da linguagem MQL4, ele o ajudará a migrar seus programas do MQL4 para MQL5. Para cada função do MQL4 (exceto funções de negociação), são apresentadas a implementação do MQL5 e descrição, isso permite a redução do tempo de conversão significativamente. Para conveniência, as funções do MQL4 são divididas em grupos, similar à referência MQL4.
Trabalhando com as funções de rede ou MySQL sem DLL: Parte II - Programa para monitorar as alterações nas propriedades do sinal
Trabalhando com as funções de rede ou MySQL sem DLL: Parte II - Programa para monitorar as alterações nas propriedades do sinal
Na parte anterior, nós consideramos a implementação do conector MySQL. Neste artigo, nós consideraremos sua aplicação implementando o serviço para coletar as propriedades do sinal e o programa para visualizar suas alterações ao longo do tempo. O exemplo implementado tem sentido prático se os usuários precisarem observar alterações nas propriedades que não são exibidas na página da web do sinal.
Trabalhando com as funções de rede ou MySQL sem DLL: Parte I - Conector
Trabalhando com as funções de rede ou MySQL sem DLL: Parte I - Conector
A MetaTrader 5 recebeu algumas funções de rede recentemente. Isso abriu grandes oportunidades para os programadores que desenvolvem produtos para o Mercado. Agora eles podem implementar coisas que antes exigiam bibliotecas dinâmicas. Neste artigo, nós vamos considerá-los usando a implementação do MySQL como exemplo.
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.
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.
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.
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.
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.