Expert Advisor Universal: Um Trailing Stop Customizado (Parte 6)
A sexta parte do artigo sobre o Expert Advisor universal descreve o uso do recurso "Trailing Stop". O artigo irá guiá-lo através de como criar um módulo "Trailing Stop" personalizado com regras unificadas, bem como adicioná-lo ao motor de negociação para gerir automaticamente as posições.
Interfaces gráficas I: Biblioteca de Testes em Programas de Diferentes Tipos e no Terminal MetaTrader 4 (Capítulo 5)
No capítulo anterior da primeira parte da série sobre interfaces gráficas, a classe de formulário foi enriquecida por métodos que permitiram gerir o formulário através dos cliques em seus controles. Neste artigo, nós vamos testar nosso trabalho em diferentes tipos de programa MQL, como indicadores e scripts. Já que a biblioteca foi concebida para ser multi-plataforma para que ela pudesse ser utilizada em todas as plataformas MetaTrader, nós também vamos testá-la no MetaTrader 4.
Interfaces gráficas I: Funções para os Botões do Formulário e Remoção dos Elementos da Interface (Capítulo 4)
Neste artigo, nós vamos continuar desenvolvendo esta classe, adicionando os métodos que permitem gerir o formulário mediante os cliques em seus controles. Nós habilitaremos o fechamento do programa por um botão do formulário, bem como implementar a funcionalidade de minimização e maximização do mesmo.
Expert Advisor Universal: Ordens Pendentes e Suporte para Cobertura de Risco (Parte 5)
Este artigo fornece uma descrição mais detalhada do mecanismo de negociação CStrategy. Por demanda popular dos usuários, nós adicionamos funções de apoio as ordem pendente no mecanismo de negociação. Além disso, a versão mais recente do MetaTrader 5 agora oferece suporte a contas com a opção de cobertura (hedge). O mesmo suporte foi adicionado ao CStrategy. O artigo fornece uma descrição detalhada de algoritmos para o uso de ordens pendentes, bem como dos princípios de funcionamento da classe CStrategy nas contas com a opção de cobertura (hedge) habilitada.
Expert Advisor Universal: Negociação em Grupo e Gestão de uma Carteira de Estratégias (Parte 4)
Na última parte da série de artigos sobre o mecanismo de negociação CStrategy, vamos considerar a operação simultânea de vários algoritmos de negociação, aprenderemos a carregar estratégias de arquivos XML, e apresentaremos um painel simples para selecionar Expert Advisors partir de um único módulo executável e gerenciar os seus modos de negociação.
Interfaces Gráficas I: Animação na Interface Gráfica (Capítulo 3)
No artigo anterior, nós começamos a desenvolver uma classe de formulário para os controles. Neste artigo, nós vamos continuar a desenvolver esta classe e preenchê-la com os métodos para mover um formulário sobre a área do gráfico. Em seguida, integraremos este componente da interface para o núcleo da biblioteca. Além disso, nós vamos garantir que os controles do formulário mudem de cor quando o cursor do mouse estiver pairando sobre eles.
Interfaces Gráficas I: Formulário para os Controles (Capítulo 2)
Neste artigo, nós vamos criar o primeiro e o principal elemento da interface gráfica - o formulário para os controles. Vários controles podem ser anexados a este formulário, podendo ser de qualquer lugar e qualquer combinação.
Expert Advisor Universal: O Modelo de Evento e o Protótipo da Estratégia de Negociação (Parte 2)
Este artigo continua a série de publicações do modelo universal de um Expert Advisor. Esta parte descreve em detalhes o modelo de eventos original, baseado no processamento de dados centralizado e considera a estrutura da classe base CStrategy.
Interfaces Gráficas I: Preparação da Estrutura da Biblioteca (Capítulo 1)
Este artigo é o começo de uma outra série sobre o desenvolvimento de interfaces gráficas. Atualmente, não há uma única biblioteca de código que permite a criação rápida e fácil de interfaces gráficas de alta qualidade dentro das aplicações em MQL. Me refiro as interfaces gráficas que estamos acostumados nos sistemas operacionais comuns.
Expert Advisor Universal: Modos de Negociação das Estratégias (Parte 1)
Qualquer desenvolvedor de Expert Advisor, independentemente de suas habilidades de programação, diariamente é confrontado com as mesmas tarefas de negociação e problemas algorítmicos, que devem ser resolvidos para organizar um processo de negociação confiável. O artigo descreve as possibilidades do motor de negociação CStrategy que possibilita a solução destas tarefas e fornece ao usuário um mecanismo eficaz para descrever uma idéia de negociação personalizada.
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).
Guia Prático MQL5 - Programando os Canais Móveis
Este artigo apresenta um método de programação de um sistema de canais equidistantes. Alguns detalhes da construção de tais canais estarão sendo considerados aqui. É fornecido a tipificação do canal, propondo um método de canais móveis do tipo universal. Para implementar o código, foi utilizado a Programação Orientada a Objetos (POO).
Criamos um auxiliar na negociação manual
O número de robôs de negociação para trabalhar nos mercados de moedas ultimamente está crescendo como uma bola de neve. Neles estão compilados diversos conceitos e estratégias, mas vale a pena referir que ainda ninguém conseguiu criar um modelo de inteligência artificial que não esteja submetido a ricos de perda. Por isso, muitos traders continuam empenhados em negociar manualmente. E para esses especialistas são criados assistentes robóticos, chamados de painéis de negociação. Esse artigo é outro exemplo de como criar um painel de negociação "do zero".
Indicador Rope por Erik Naymanf
O artigo revela como o indicador "Rope" foi criado com base na "The Small Encyclopedia of Trader" (Pequena Enciclopédia do Trader), por Erik L. Nayman. Este indicador mostra a direção da tendência, usando cálculos dos valores das tendências de alta e de baixa durante um período de tempo determinado. O artigo também conta com os princípios do desenvolvimento e cálculos do indicador, bem como exemplos do código. Outros temas abordados incluem o desenvolvimento de um Expert Advisor com base no indicador, e também, a otimização dos parâmetros externos.
Usando Layouts e Containers para Controles da Interface Gráfica do Usuário (GUI): A Classe CGrid
Este artigo apresenta um método alternativo de criação da Interface Gráfica do Usuário (GUI) com base em layouts e containers, usando um gerenciador de layout - a classe CGrid. A classe CGrid é um comando auxiliar, atua como um container para outros containers e faz o controle usando um layout de grade.
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.
Desenhando Resistência e Níveis de Suporte Com MQL5
Este artigo descreve um método para encontrar quatro pontos extremos, onde baseado neles, se desenha os níveis de suporte e de resistência. Para encontrar o extremos num gráfico de um par de moedas, foi usado o indicador RSI. Para dar um exemplo, nós fornecemos um código de indicador que exibe os níveis de suporte e resistência.
Indicador para Gráfico de Spindles
O artigo apresenta a plotagem do gráfico de spindles e seu uso em estratégias de negociação e experts. Primeiro vamos discutir a aparência do gráfico, plotagem e conexão com o gráfico de velas japonesas. Em seguida, analisaremos a implementação do indicador no código fonte na linguagem MQL5. Vamos testar o expert com base no indicador e formular uma estratégia de negociação.
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.
Como Proteger Seu Expert Advisor Investindo na Bolsa de Moscou
O artigo explora os métodos de negociação que garantem a segurança das operações de investimentos nos mercados de ações e de baixa liquidez, tomando como exemplo o Mercado de Derivativos da Bolsa de Moscou. Ele traz uma abordagem prática da teoria de negociação descrita no artigo "Princípios da Precificação da Bolsa Tomando Como Exemplo o Mercado de Derivativos da Bolsa de Moscou".
Uma Introdução à Lógica Fuzzy
A lógica fuzzy expande nossos limites da lógica matemática e da teoria dos conjuntos. Este artigo revela os princípios básicos da lógica fuzzy, bem como a descrição de dois sistemas de inferência fuzzy usando os modelos do tipo Mamdani e Sugeno. Os exemplos fornecidos descreverão a implementação de modelos difusos (fuzzy) baseados nesses dois sistemas, que utilizam a biblioteca FuzzyNet para MQL5.
Usando Layouts e Containers para Controles de GUI: A Classe CBox
Este artigo apresenta um método alternativo de criação de GUI (Interface Gráfica do Usuário) baseado em layouts e containers, usando um gerenciador de layout - a classe CBox. A classe CBox é um controle auxiliar que atua como um container para controles essenciais em um painel de GUI. Ele pode gerar o design gráfico dos painéis facilmente, e, em alguns casos, reduzir o tempo de codificação.
Otimização. Algumas idéias simples
O processo de otimização pode exigir recursos significativos de seu computador ou mesmo dos agentes de teste da MQL5 Cloud Network. Este artigo compreende algumas idéias simples que eu uso para a facilitação do trabalho e a melhoria do Strategy Tester do MetaTrader 5. Eu tive essas idéias a partir da documentação, fórum e artigos.
Desenhando Medidores com Mostrador usando a classe CCanvas
Podemos encontrar medidores com mostrador em carros e aviões, na produção industrial e na vida cotidiana. Eles são utilizados em todos os domínios que requerem uma resposta rápida a um comportamento de valor controlado. Este artigo descreve a biblioteca de medidores com mostrador para o MetaTrader 5.
Programando os Modos do EA Usando a Abordagem Orientada a Objetos
Este artigo explica a idéia da programação multi-modo de um robô de negociação em MQL5. Cada modalidade é implementada com a abordagem orientada a objetos. São fornecidos as instâncias de ambos os modos de hierarquias de classe e das classes para testes. A programação multi-modo de robôs de negociação presumi-se levar em conta todas as peculiaridades de cada modo operacional de um EA escrito em MQL5. Funções e enumerações são criadas para identificar o modo.
Estudando a Classe CCanvas. Como Desenhar Objetos Transparentes
Você precisa mais do que os gráficos estranhos de médias móveis? Você quer desenhar algo mais bonito do que um retângulo preenchido simples em seu terminal? Gráficos atraentes podem ser desenhados no terminal. Isso pode ser implementado através da classe CСanvas, que é usada para criar gráficos personalizados. Com esta classe você pode implementar a transparência, misturar cores e produzir uma ilusão de transparência por meio da sobreposição e mistura de cores.
Guia Prático MQL5: Implementando um Array Associativo ou um Dicionário para Acesso Rápido ao Dados
Este artigo descreve um algoritmo especial que permite ter acesso aos elementos através de suas chaves únicas. Qualquer tipo de dados de base pode ser usado como uma chave. Por exemplo, ele pode ser representado como uma variável do tipo string ou inteiro. Tais contentores de dados são comumente referenciados a um dicionário ou um array associativo. Ele fornece uma maneira mais fácil e eficiente na resolução de problemas.
Guia Prático MQL5: Ordens ОСО
Qualquer atividade de negociação do trader envolve diversos mecanismos e inter-relações, incluindo as relações entre ordens. Este artigo sugere uma solução de processamento de ordens OCO. As classes da biblioteca padrão são amplamente envolvidas, bem como os novos tipos de dados que são criados aqui.
Assistente MQL5: Colocando Ordens, Stop Loss e Take Profits sobre os Preços Calculados. Extensão da Biblioteca Padrão
Este artigo descreve a extensão da Biblioteca Padrão MQL5, que permite criar Expert Advisors, colocar ordens, Stop Loss e Take Profits utilizando o Assistente MQL5 pelos preços que são recebidos dos módulos incluídos. Esta abordagem não aplicar quaisquer restrições adicionais sobre o número de módulos e eles não provocam conflitos quando trabalhado em conjunto.
Guia Prático MQL5: Processamento do Evento BookEvent
Este artigo estuda o BookEvent - o evento da Profundidade do Mercado, bem como o princípio de seu processamento. Um programa em MQL e o tratamento dos estados da Profundidade do Mercado servem de exemplo. Ele é escrito usando a abordagem orientada a objetos. Os resultados do tratamento são exibidos na tela como um painel com os níveis da Profundidade do Mercado.
Princípios de Programação em MQL5: Variáveis Globais do Terminal
Este artigo destaca as capacidades orientada a objeto da linguagem MQL5 em criar objetos que facilitam o trabalho com as variáveis globais do terminal. Como exemplo prático eu considero um caso em que as variáveis globais são usados como pontos de controle para a implementação das fases de um programa.
Porque a Hospedagem Virtual no MetaTrader 4 e no MetaTrader 5 são Melhores que os VPS Usuais
A rede de hospedagem virtual em nuvem foi desenvolvida especialmente para o MetaTrader 4 e o MetaTrader 5, possuindo todas as vantagens de uma solução nativa. Obtenha os benefícios de nossa oferta gratuita por 24 horas - teste um servidor virtual agora mesmo.
Guia Prático MQL5: Processamento de Eventos Personalizados do Gráfico
Este artigo considera os aspectos de design e desenvolvimento de eventos personalizados do gráfico no ambiente em MQL5. Um exemplo de uma abordagem para a classificação dos eventos também podem ser encontrados aqui, bem como um código de programação para uma classe de eventos e uma classe de tratamento de eventos personalizados.
Guia Prático MQL5 - Expert Advisor Multi-Moeda e Trabalhando com ordens pendentes em MQL5
Desta vez, vamos criar um Expert Advisor multi-moeda com um algoritmo de negociação baseado no envio de ordens pendentes do tipo Buy Stop e Sell Stop. Neste artigo veremos os seguintes tópicos: a negociação em um intervalo de tempo especificado, colocar/modificar/remover as ordens pendentes, verificar se a última posição foi fechada no Take Profit ou no Stop Loss e controlar o histórico de transações para cada símbolo.
Guia Prático MQL5: Processamento de Eventos Típicos do Gráfico
Este artigo considera os eventos típicos do gráfico e inclui exemplos de seu processamento. Iremos nos concentrar em eventos realizados pelo mouse, teclas, criação/alteração/remoção de um objeto gráfico, clique do mouse no gráfico e em um objeto gráfico, arrastamento de um objeto gráfico com o mouse, término da edição do texto em um campo de texto, bem como os eventos de modificação do gráfico. Será fornecido um exemplo de programa em MQL5 para cada tipo de evento aqui considerado.
Guia Prático do MQL5: Processamento do Evento TradeTransaction
Neste artigo estudaremos as capacidades da linguagem MQL5 do ponto de vista da programação orientada a eventos. A grande vantagem dessa abordagem está na possibilidade do programa receber informações por etapas sobre a implementação das operações de negociação. O artigo também contém um exemplo do recebimento e processamento de informações sobre as operações de negociação em curso usando o manipulador de eventos TradeTransaction. Em minha opinião, esta abordagem pode ser usada para copiar as ordens de um terminal para outro.
Como Preparar Sua Conta de Negociação para Migrar a Hospedagem Virtual
O terminal cliente MetaTrader é perfeito para a automação de estratégias de negociação. Ele possui todas as ferramentas que os desenvolvedores de robôs de negociação necessitam - Uma poderosa linguagem de programação em MQL4 / MQL5, baseada em C++, um conveniente ambiente de desenvolvimento chamado MetaEditor e um testador de estratégia multi segmentado (multi-threaded) que suporta a computação distribuída MQL5 Cloud Network. Neste artigo, você irá descobrir como mover o seu terminal cliente para o ambiente virtual com todos os elementos personalizados.
Indicador para Construção do Gráfico "Ruptura de Três Linhas"
Este artigo é dedicado ao gráfico "Ruptura de Três Linhas" sugerido por Steve Nison em seu livro "Beyond Candlesticks". A maior vantagem deste gráfico é que ele permite filtrar pequenas flutuações de preço, em relação ao movimento precedente. Nós vamos discutir os princípios da construção do gráfico, o código do indicador e alguns exemplos de estratégias de negociação baseadas nele.
Dicas para uma apresentação eficaz do produto no Mercado
Vender programas para os traders de forma eficiente não exigem apenas uma boa escrita e um produto útil e, logo em seguida, publicá-lo no Mercado. É vital o fornecimento de uma descrição detalhada e abrangente e de boas ilustrações. Um logotipo de qualidade e boas imagens são tão importantes como o código em si. Tenha em mente esta simples fórmula: sem downloads = sem vendas.
Fundamentos básicos da Programação MQL5: Lista
A nova versão da linguagem de programação MQL (MQL5) para o desenvolvimento de estratégias de negociação fornece recursos mais poderosos e eficazes em comparação com a versão anterior (MQL4). A vantagem reside essencialmente nos aspectos da programação orientada a objetos. Este artigo analisa a possibilidade de uso de tipos de dados personalizados complexos, como nós e listas. Ele também fornece um exemplo prático de como usar listas na linguagem MQL5.