![Desenhando e implementando novos widgets GUI com base no objeto CChartObject](https://c.mql5.com/2/0/Design_Widgets_MQL5.png)
![Desenhando e implementando novos widgets GUI com base no objeto CChartObject](https://c.mql5.com/i/articles/overlay.png)
Desenhando e implementando novos widgets GUI com base no objeto CChartObject
Depois que escrevi um artigo anterior sobre um Expert Advisor semiautomático com interface GUI, descobri que seria desejável aprimorar a interface com algumas novas funcionalidades para Expert Advisors e indicadores mais complexos. Após familiarizar-me com as classes da Biblioteca Padrão do MQL5, implementei novos widgets. Este artigo descreve um processo de planejamento e implementação de novos widgets GUI MQL5 que podem ser usados em indicadores e Expert Advisors. Os widgets apresentados no artigo são CChartObjectSpinner, CChartObjectProgressBar e CChartObjectEditTable.
![Indicadores de William Blau e sistemas de comércio no MQL5. Parte 1: Indicadores](https://c.mql5.com/2/0/MQL5_Willam_Blau_1.png)
![Indicadores de William Blau e sistemas de comércio no MQL5. Parte 1: Indicadores](https://c.mql5.com/i/articles/overlay.png)
Indicadores de William Blau e sistemas de comércio no MQL5. Parte 1: Indicadores
O artigo apresenta os indicadores descritos no livro de William Blau "Momentum, Direction, and Divergence". A abordagem de William Blau nos permite prontamente e precisamente aproximar as flutuações da curva de preço, para determinar a tendência de movimentos de preço e os pontos de virada e eliminar o ruído de preço. Entretanto, também somos capazes de detectar estados de excesso de compra ou venda do mercado e sinais indicando o fim da tendência e reverso do movimento de preço.
![Série de preço médio para cálculos intermediários sem utilizar buffers adicionais](https://c.mql5.com/2/0/averages_MQL5__1.png)
![Série de preço médio para cálculos intermediários sem utilizar buffers adicionais](https://c.mql5.com/i/articles/overlay.png)
Série de preço médio para cálculos intermediários sem utilizar buffers adicionais
Este artigo é sobre algorítimos tradicionais e incomuns de média comprimidos em classes de tipo único e simples. Eles são destinados à utilização universal em quase todos os desenvolvimentos de indicadores. Espero que as classes sugeridas sejam uma boa alternativa para chamadas 'volumosas' e indicadores personalizados e técnicos.
![Handler de evento "nova barra"](https://c.mql5.com/2/0/new_bar_born.png)
![Handler de evento "nova barra"](https://c.mql5.com/i/articles/overlay.png)
Handler de evento "nova barra"
A linguagem de programação é capaz de resolver problemas em um nível completamente novo. Mesmo as tarefas que já tenham soluções, graças à programação orientada a objeto elas podem atingir um nível ainda maior. Neste artigo, consideramos um exemplo especialmente simples de verificação de uma nova barra em um gráfico, que foi transformado em uma ferramenta bastante poderosa e versátil. Qual ferramenta? Descubra neste artigo.
![Uma solução livre de DLL para comunicação entre os terminais MetaTrader utilizando pipes nomeados](https://c.mql5.com/2/0/Named_Pipes_MetaTrader5.png)
![Uma solução livre de DLL para comunicação entre os terminais MetaTrader utilizando pipes nomeados](https://c.mql5.com/i/articles/overlay.png)
Uma solução livre de DLL para comunicação entre os terminais MetaTrader utilizando pipes nomeados
O artigo descreve como implementar a Comunicação Interprocesso entre os terminais do cliente MetaTrader 5 usando pipes nomeados. Para o uso de pipes nomeados, a classe CNamedPipes é desenvolvida. Para o teste de seu uso e medir a conexão por ele, o indicador de tick, o servidor e os scripts do cliente são apresentados. O uso de pipes nomeados é suficiente para cotas em tempo real.
![Testando o desempenho do cálculo das médias móveis no MQL5](https://c.mql5.com/2/0/moving_averages_performance_MQL5__1.png)
![Testando o desempenho do cálculo das médias móveis no MQL5](https://c.mql5.com/i/articles/overlay.png)
Testando o desempenho do cálculo das médias móveis no MQL5
Uma série de indicadores apareceu desde o momento da criação do primeiro indicador de média móvel. Muitos deles usam métodos de suavização similares, mas os desempenhos de diferentes algorítimos de médias móveis não foram estudados. Neste artigo, considerarei meios possíveis de uso de Média móveis no MQL5 e comparar seus desempenhos.
![Criando um indicador de várias moedas utilizando um número de buffers indicadores intermediários](https://c.mql5.com/2/0/Multicurrency_Indicator_MQL5.png)
![Criando um indicador de várias moedas utilizando um número de buffers indicadores intermediários](https://c.mql5.com/i/articles/overlay.png)
Criando um indicador de várias moedas utilizando um número de buffers indicadores intermediários
Houve um recente aumento de interesse em análises de cluster do mercado FOREX. O MQL5 abre novas possibilidades para pesquisa de tendências de movimento de pares de moeda. Um recurso chave do MQL5, diferenciando-o do MQL4 é a possibilidade de utilizar uma quantia ilimitada de buffers de indicador. Este artigo descreve um exemplo da criação de um indicador de diversas moedas.
![Abordagem orientada a objetos para construção de painéis de múltiplos períodos de tempo e múltiplas moedas](https://c.mql5.com/2/0/Multi-Currency-Panels_MQL5.png)
![Abordagem orientada a objetos para construção de painéis de múltiplos períodos de tempo e múltiplas moedas](https://c.mql5.com/i/articles/overlay.png)
Abordagem orientada a objetos para construção de painéis de múltiplos períodos de tempo e múltiplas moedas
Este artigo descreve como a programação orientada a objetos pode ser usada para criar painéis de múltiplos períodos de tempo múltiplas moedas para o MetaTrader 5. O principal objetivo é construir um painel universal, que pode ser utilizado para exibição de diversos tipos diferentes de dados, tal como preços, variação de preços, valores de indicador ou condições personalizadas de compra/venda, sem a necessidade de modificar o código do painel em si.
![Tratamento de eventos no MQL5: mudando período MA rapidamente](https://c.mql5.com/2/0/How_Change_Period_Moving_Average_on_the_fly_MQL5__1.png)
![Tratamento de eventos no MQL5: mudando período MA rapidamente](https://c.mql5.com/i/articles/overlay.png)
Tratamento de eventos no MQL5: mudando período MA rapidamente
Suponha que um simples indicador MA (média móvel) com período 13 seja aplicado ao gráfico. Queremos mudar o período para 20, mas não queremos ir até a caixa de diálogo de propriedades do indicador e editar o número 13 para 20: por simples cansaço destas ações tediosas com o mouse e teclado. E, especialmente, não queremos abrir o código do indicador e modificá-lo. Queremos fazer tudo isso simplesmente pressionando um botão - "setas para cima" próximas ao teclado numérico. Neste artigo, descreverei como fazer isso.
![Implementação prática dos filtros digitais no MQL5 para principiantes](https://c.mql5.com/2/0/Filter.png)
![Implementação prática dos filtros digitais no MQL5 para principiantes](https://c.mql5.com/i/articles/overlay.png)
Implementação prática dos filtros digitais no MQL5 para principiantes
A ideia da filtragem de sinal digital foi amplamente discutida em tópicos de fóruns sobre a construção dos sistemas de negócio. E seria imprudente não criar um código padrão de filtros digitais no MQL5. Neste artigo, o autor descreve a transformação de um simples código do indicador SMA em seu artigo "Indicadores personalizados no MQL5 para iniciantes" em um código do mais complicado e universal filtro digital. Este artigo é uma sequência lógica do artigo anterior. Ele também fala como substituir o texto no código e como corrigir erros de programação.
![Troca de dados entre indicadores: é fácil!](https://c.mql5.com/2/0/v5__1.png)
![Troca de dados entre indicadores: é fácil!](https://c.mql5.com/i/articles/overlay.png)
Troca de dados entre indicadores: é fácil!
Queremos criar um ambiente que fornecesse acesso aos dados de indicadores anexos ao gráfico e que teria as seguintes propriedades: ausência de cópia de dados; modificação mínima do código dos métodos disponíveis, se precisarmos usá-los; preferencialmente código MQL (claro, temos que usar o DLL, mas usaremos apenas algumas strings do código C++). O artigo descreve um método fácil para desenvolver um ambiente de programa para o terminal MetaTrader, que poderia fornecer meios para acessar os buffers dos indicadores de outros programas MQL.
![Diversas maneiras de se encontrar uma tendência no MQL5](https://c.mql5.com/2/0/Determine_Trend_MQL5.png)
![Diversas maneiras de se encontrar uma tendência no MQL5](https://c.mql5.com/i/articles/overlay.png)
Diversas maneiras de se encontrar uma tendência no MQL5
Qualquer comerciante daria muito pela oportunidade de detectar precisamente uma tendência em qualquer dado momento. Talvez, este seja o Santo Graal que todo mundo esteja procurando por. Este artigo considerará diversas maneiras de detectar uma tendência. Para ser mais preciso - como programar diversas maneiras clássicas para detectar uma tendência pelos meios do MQL5.
![Criando indicadores multicoloridos no MQL5](https://c.mql5.com/2/0/paint_indicator_MQL5__1.png)
![Criando indicadores multicoloridos no MQL5](https://c.mql5.com/i/articles/overlay.png)
Criando indicadores multicoloridos no MQL5
Neste artigo, consideraremos como criar indicadores multicoloridos ou converter os existentes para multicor. O MQL5 permite representar as informações de forma conveniente. Agora, não é necessário ver uma dúzia de gráficos com indicadores e realizar análises dos níveis RSI ou estocásticos, é melhor apenas pintar as velas com cores diferentes dependendo dos valores dos indicadores.
![Como criar o seu próprio limite móvel](https://c.mql5.com/2/0/Trailing_Stop_MQL5.png)
![Como criar o seu próprio limite móvel](https://c.mql5.com/i/articles/overlay.png)
Como criar o seu próprio limite móvel
A regra básica do negociante - aumente o lucro, corte as despesas! Este artigo considera uma das técnicas básicas, permitindo seguir esta regra - mover o nível de parada de proteção (nível Stop Loss) após aumentar o lucro da posição, ou seja - nível do Limite móvel. Você encontrará o procedimento passo-a-passo para criar uma classe para o limite móvel nos indicadores SAR e NRTR. Todos poderão inserir este limite móvel em seus experts ou usá-los independentemente para controlar posições em suas contas.
![20 sinais de negociação no MQL5](https://c.mql5.com/2/0/20_Trading_Signals_MQL5__1.png)
![20 sinais de negociação no MQL5](https://c.mql5.com/i/articles/overlay.png)
20 sinais de negociação no MQL5
Este artigo o ensinará a como receber os sinais de negócio que são necessários para um sistema de negócio funcionar. O exemplo de formação de 20 sinais de negócio é forncedio aqui como funções de personalização separadas que podem ser usadas ao desenvolver Expert Advisors. Para sua conveniência, todas as funções utilizadas no artigo são combinadas em um único arquivo mqh que pode ser facilmente conectado a um futuro Expert Advisor.
![Como escrever um indicador na base de um outro indicador](https://c.mql5.com/2/0/indicator_based_on_other_MQL5__1.png)
![Como escrever um indicador na base de um outro indicador](https://c.mql5.com/i/articles/overlay.png)
Como escrever um indicador na base de um outro indicador
No MQL5 você pode escrever um indicador tanto do zero como baseado em outro indicador já existente, embutido no terminal do cliente ou um personalizado. E aqui você também tem dois modos - melhorar um indicador adicionando novos cálculos e estilos gráficos a ele, ou utilizar um indicador no terminal do cliente embutido ou um personalizado através das funções iCustom() ou IndicatorCreate().
![Criando indicadores de ponto no MQL5](https://c.mql5.com/2/0/Untitled7.png)
![Criando indicadores de ponto no MQL5](https://c.mql5.com/i/articles/overlay.png)
Criando indicadores de ponto no MQL5
Neste artigo, consideraremos a criação de dois indicadores: o indicador de tick, que plota o gráfico de tick do indicador de vela de tick e preço, que plota velas com o número específico de ticks. Cada um dos indicadores escreve os preços de entrada em um arquivo e usa os dados salvos após o reinício do indicador (estes dados também podem ser usados por outros programas).
![Estilos de desenhos no MQL5](https://c.mql5.com/2/0/180x180LoongIndicator.png)
![Estilos de desenhos no MQL5](https://c.mql5.com/i/articles/overlay.png)
Estilos de desenhos no MQL5
Existem 6 estilos de desenho no MQL4 e 18 estilos de desenho no MQL5. Então pode valer a pena escrever um artigo para introduzir os estilos de desenhos do MQL5. Neste artigo consideraremos os detalhes de estilos de desenho no MQL5. Além disso, criaremos um indicador para demonstrar como usar esses estilos de desenhos e refinar a diagramação.
![Como chamar indicadores no MQL5](https://c.mql5.com/2/0/Calling_indicators_MQL5.png)
![Como chamar indicadores no MQL5](https://c.mql5.com/i/articles/overlay.png)
Como chamar indicadores no MQL5
Com a nova versão da linguagem de programação MQL disponível, não apenas a abordagem para lidar com indicadores mudou, mas também, existem novas formas de como criar indicadores. Além disso, você tem a flexibilidade adicional trabalhando com os buffers do indicador - agora você pode especificar a direção desejada de indexação e obter exatamente quantos valores de indicadores você quiser. Este artigo explica os métodos básicos de chamada de indicadores e recuperar dados dos buffers do indicador.
![Indicadores personalizados no MQL5 para novatos](https://c.mql5.com/2/0/s_002__1.png)
![Indicadores personalizados no MQL5 para novatos](https://c.mql5.com/i/articles/overlay.png)
Indicadores personalizados no MQL5 para novatos
Qualquer assunto novo parece complicado e difícil de aprender para um principiante. Os assuntos que conhecemos parecem muito simples e claros para nós. Mas, simplesmente não lembramos, que todos têm que estudar algo desde o início, até a nossa língua materna. O mesmo é com a linguagem de programação MQL5 que oferece amplas possibilidades para desenvolver estratégias próprias de negociação - você pode aprender a partir de noções básicas e dos exemplos mais simples. A interação de um indicador técnico com o terminal de cliente MetaTrader 5 é considerada neste artigo sobre o exemplo de um indicador personalizado simples SMA.
![MQL5 para Novatos: Guia para o Uso de Indicadores Técnicos em Expert Advisors](https://c.mql5.com/2/0/chainik__1.png)
![MQL5 para Novatos: Guia para o Uso de Indicadores Técnicos em Expert Advisors](https://c.mql5.com/i/articles/overlay.png)
MQL5 para Novatos: Guia para o Uso de Indicadores Técnicos em Expert Advisors
Para obter valores de um indicador interno ou personalizado em um Expert Advisor, primeiro seu manipulador deve ser criado usando a função correspondente. Exemplos no artigo mostram como usar este ou aquele indicador técnico durante a criação de seus próprios programas. O artigo descreve os indicadores que são construídos utilizando a linguagem MQL5. Ele é destinado para aqueles que não têm muita experiência no desenvolvimento de estratégias de negociação, oferecendo maneiras simples e claras de trabalhar com indicadores utilizando a biblioteca de funções oferecida.
![Mergulhe rapidamente na linguagem MQL5](https://c.mql5.com/2/68/dive_600x314.jpg)
Mergulhe rapidamente na linguagem MQL5
Você decidiu estudar a linguagem de programação das estratégias de negócio do MQL5, mas não sabe nada sobre isso? Tentamos examinar o MQL5 e o terminal MetaTrader 5 a partir do ponto de vista de iniciantes e escrevemos este pequeno artigo introdutório. Neste artigo, você pode ter uma breve ideia das possibilidades da linguagem, assim como dicas sobre como trabalhar com o MetaEditor 5 e o terminal.
![Aplicar um indicador a outro](https://c.mql5.com/2/0/indikators_001.png)
![Aplicar um indicador a outro](https://c.mql5.com/i/articles/overlay.png)
Aplicar um indicador a outro
Ao escrever um indicador que usa a forma curta da solicitação da função OnCalculate(), você pode deixar passar o fato de que um indicador pode ser calculado, não apenas pelos dados de preço, mas também pelos dados de algum outro indicador (não importando se for incorporado ou um personalizado). Você quer melhorar um indicador para sua aplicação correta a outros dados do indicador? Vamos analisar neste artigo todas as etapas necessárias para tal modificação.
![MQL5: Crie o seu próprio indicador](https://c.mql5.com/2/0/indikator__1.png)
![MQL5: Crie o seu próprio indicador](https://c.mql5.com/i/articles/overlay.png)
MQL5: Crie o seu próprio indicador
O que é um indicador? É um conjunto de valores calculados que deseja-se que sejam exibidos em uma tela de forma conveniente. Os conjuntos de valores são representados em programas como arrays. Deste modo, a criação de um indicador significa escrever um algorítimo que manuseia algumas séries (séries de preço) e registra os resultados do manuseamento para outras séries (valores de indicador). Descrevendo a criação do Force Index, o autor mostra como escrever indicadores no MQL5.