![Reversão: reduzindo o rebaixamento máximo e testando outros mercados](https://c.mql5.com/2/34/Graal.png)
![Reversão: reduzindo o rebaixamento máximo e testando outros mercados](https://c.mql5.com/i/articles/overlay.png)
Reversão: reduzindo o rebaixamento máximo e testando outros mercados
Nesse artigo, continuaremos falando sobre reversão; tentaremos reduzir o rebaixamento máximo para um nível aceitável em instrumentos já discutidos; verificaremos, enquanto isso, quão afectado fica o lucro obtido. Adicionalmente, checaremos como funciona a reversão em outros mercados, como o de ações, commodities, índices e ETF, agrário. Atenção, esse artigo tem muitas imagens.
![Gap - estratégia rentável ou 50/50?](https://c.mql5.com/2/34/GapDown.png)
![Gap - estratégia rentável ou 50/50?](https://c.mql5.com/i/articles/overlay.png)
Gap - estratégia rentável ou 50/50?
Esse artigo considera o fenômeno gap - situação em que a diferença entre o preço de fechamento do timeframe anterior e o preço de abertura do próximo é significativa. Adicionalmente, toca a questão da direção tomada pela barra diária. Aqui é implementada a DLL de sistema da função GetOpenFileName.
![Implementando Take Profit na forma de ordens limitadas sem alterar o código original do EA](https://c.mql5.com/2/34/Limit_TP.png)
![Implementando Take Profit na forma de ordens limitadas sem alterar o código original do EA](https://c.mql5.com/i/articles/overlay.png)
Implementando Take Profit na forma de ordens limitadas sem alterar o código original do EA
No fórum já foi amplamente discutido o uso de ordens limitadas, em vez de colocar take-profit padrão. Qual é a vantagem dessa abordagem e como ela pode ser implementada em nossa negociação? Nesse artigo, quero contar a vocês minha opinião sobre as respostas a essas perguntas.
![Otimização automática de EAs no MetaTrader 5](https://c.mql5.com/2/33/process-accept-icon.png)
![Otimização automática de EAs no MetaTrader 5](https://c.mql5.com/i/articles/overlay.png)
Otimização automática de EAs no MetaTrader 5
Este artigo descreve um mecanismo de auto-otimização de um EA para o MetaTrader 5.
![Métodos de controle remoto de EAs](https://c.mql5.com/2/34/RemoteControl_EA.png)
![Métodos de controle remoto de EAs](https://c.mql5.com/i/articles/overlay.png)
Métodos de controle remoto de EAs
A principal vantagem dos robôs de negociação é o fato de poderem trabalhar 24 horas por dia em servidores VPS remotos. Ás vezes, é necessário intervir em seu trabalho manualmente, porém, pode não haver acesso direto ao servidor. Será que é possível gerenciar o trabalho de EAs remotamente? Esse artigo propõe uma das maneiras para controlar robôs por meio de comandos externos.
![Os 100 melhores passes de otimização (parte 1). Desenvolvimento de um analisador de otimizações](https://c.mql5.com/2/34/TOP100passes.png)
![Os 100 melhores passes de otimização (parte 1). Desenvolvimento de um analisador de otimizações](https://c.mql5.com/i/articles/overlay.png)
Os 100 melhores passes de otimização (parte 1). Desenvolvimento de um analisador de otimizações
O artigo trata do desenvolvimento de um aplicativo para selecionar os melhores passes de otimização usando várias opções possíveis. O aplicativo é capaz de ordenar os resultados de otimização por diversos fatores. Os passes de cada otimização são sempre gravadas em um banco de dados, portanto, você sempre poderá selecionar os novos parâmetros do robô sem realizar a re-otimização. Além disso, você pode ver todos os passes de otimização em um único gráfico, calcular a métrica do VaR paramétrico e construir o gráfico de distribuição normal de passes e resultados da negociação de um determinado conjunto de métricas. Além disso, os gráficos de algumas taxas calculadas são construídos dinamicamente, começando com o início da otimização (ou de uma data selecionada para outra data selecionada).
![Receitas MQL5 – Obtendo as propriedades de uma posição de cobertura aberta](https://c.mql5.com/2/34/position.png)
![Receitas MQL5 – Obtendo as propriedades de uma posição de cobertura aberta](https://c.mql5.com/i/articles/overlay.png)
Receitas MQL5 – Obtendo as propriedades de uma posição de cobertura aberta
A plataforma MetaTrader 5 não é apenas multimercado, pois ela também permite que utilizar diferentes sistemas de registro de posição. Esses recursos expandem significativamente as ferramentas para a implementação e formalização de ideias de negociação. O artigo trata de como processar e levar em conta as propriedades das posições quando elas são registradas independentemente (cobertura - 'hedge'). Além disso, é proposta uma classe derivada, é exemplificado como processar e obter as propriedades de uma posição de cobertura.
![Modelo de continuação de movimento - estatísticas de desempenho e pesquisa em gráficos](https://c.mql5.com/2/34/wave_movie.png)
![Modelo de continuação de movimento - estatísticas de desempenho e pesquisa em gráficos](https://c.mql5.com/i/articles/overlay.png)
Modelo de continuação de movimento - estatísticas de desempenho e pesquisa em gráficos
Nesse artigo, quero descrever como funciona um dos modelos de continuação de movimento. O trabalho é baseado na definição de duas ondas — uma principal e outra corretiva. Como extremos serão usados fractais e, como eu os chamo, potenciais fractais - extremos que ainda não se formaram como fractais.
![Usando indicadores para otimização RealTime de EAs](https://c.mql5.com/2/34/indicator_RealTime_optimaze.png)
![Usando indicadores para otimização RealTime de EAs](https://c.mql5.com/i/articles/overlay.png)
Usando indicadores para otimização RealTime de EAs
Não é segredo que o sucesso de qualquer robô de negociação depende da seleção correta de parâmetros (otimização). Mas os parâmetros que são ótimos para um intervalo de tempo nem sempre são os melhores em outros períodos. Muitas vezes, os EAs que são lucrativos nos testes se revelam não lucrativos em tempo real. Nesse momento, surge a necessidade de estar otimizando continuamente, o que se torna uma rotina, porém, sempre há alguém que procura maneiras de automatizar o trabalho. Nesse artigo, proponho uma abordagem não padrão para resolver esse problema.
![Modelando séries temporais usando símbolos personalizados de acordo com as leis de distribuição especificadas](https://c.mql5.com/2/33/Custom_series_modelling.png)
![Modelando séries temporais usando símbolos personalizados de acordo com as leis de distribuição especificadas](https://c.mql5.com/i/articles/overlay.png)
Modelando séries temporais usando símbolos personalizados de acordo com as leis de distribuição especificadas
O artigo fornece uma visão geral das capacidades do terminal para criar e trabalhar com símbolos personalizados, oferece opções para modelar um histórico de negociação usando símbolos personalizados, tendências e vários padrões gráficos.
![Reversão: o Santo Graal ou um equívoco perigoso?](https://c.mql5.com/2/33/avatar5008.png)
![Reversão: o Santo Graal ou um equívoco perigoso?](https://c.mql5.com/i/articles/overlay.png)
Reversão: o Santo Graal ou um equívoco perigoso?
Neste artigo, tentaremos entender, além do conceito de reversão, se vale a pena implementá-la para melhorar nossas estratégias de negociação. Após criarmos um Expert Advisor, usaremos dados históricos a fim de não só ver quais indicadores são mais indicados para reversão, mas também saber se é possível utilizar o EA sem indicadores como um sistema de negociação independente. Consideraremos se é possível converter um sistema de negociação desfavorável num lucrativo com a ajuda de reversões.
![Raios Elder (Bulls Power e Bears Power)](https://c.mql5.com/2/33/Elder-Ray-las1su67-2niearv.png)
![Raios Elder (Bulls Power e Bears Power)](https://c.mql5.com/i/articles/overlay.png)
Raios Elder (Bulls Power e Bears Power)
Sistema de negociação Raios Elder (em inglês, 'Elder-ray') baseado nos indicadores Bulls Power, Bears Power e Moving Average (EMA — MME, média móvel exponencial). Este sistema foi descrito por Alexander Elder em seu livro "Como se transformar em um operador e investidor de sucesso" (na versão original em inglês, 'Trading for a Living').
![Combinando uma estratégia de tendência com outra de fase de correção](https://c.mql5.com/2/33/Trend_Flat__1.png)
![Combinando uma estratégia de tendência com outra de fase de correção](https://c.mql5.com/i/articles/overlay.png)
Combinando uma estratégia de tendência com outra de fase de correção
Existem diversas estratégias de negociação - algumas procuram movimentos direcionais e operam com a tendência, já outras identificam faixas de preço e negociam dentro desses corredores. Neste ponto, surge a pergunta: é possível combinar as duas abordagens para aumentar a rentabilidade da negociação?
![Gráfico PairPlot baseado em CGraphic para analisar correlações entre arrays de dados (séries temporais)](https://c.mql5.com/2/33/PairPlot_Graphic.png)
![Gráfico PairPlot baseado em CGraphic para analisar correlações entre arrays de dados (séries temporais)](https://c.mql5.com/i/articles/overlay.png)
Gráfico PairPlot baseado em CGraphic para analisar correlações entre arrays de dados (séries temporais)
Comparar várias séries temporais durante uma análise técnica é uma tarefa bastante comum que requer ferramentas apropriadas. Neste artigo, eu sugiro o desenvolvimento de uma ferramenta para análise gráfica e a detecção de correlações entre duas ou mais séries temporais.
![Escrita de indicadores de bolsa com controle de volume usando o indicador delta como exemplo](https://c.mql5.com/2/33/StockVolumeIndicators.png)
![Escrita de indicadores de bolsa com controle de volume usando o indicador delta como exemplo](https://c.mql5.com/i/articles/overlay.png)
Escrita de indicadores de bolsa com controle de volume usando o indicador delta como exemplo
Este artigo descreve um algoritmo para construir indicadores de bolsa com base em volumes reais usando as funções CopyTicks() e CopyTicksRange(). Também apresenta as particularidades de construção desses indicadores, bem como seus aspetos de funcionamento tanto em tempo real quanto no testador de estratégias.
![Redes Neurais Profundas (Parte VIII). Melhorando a qualidade de classificação dos bagging de ensembles](https://c.mql5.com/2/48/Deep_Neural_Networks_08.png)
![Redes Neurais Profundas (Parte VIII). Melhorando a qualidade de classificação dos bagging de ensembles](https://c.mql5.com/i/articles/overlay.png)
Redes Neurais Profundas (Parte VIII). Melhorando a qualidade de classificação dos bagging de ensembles
O artigo considera três métodos que podem ser usados para aumentar a qualidade de classificação do bagging de ensembles, e a estimação de sua eficiência. Os efeitos da otimização dos hiperparâmetros da rede neural ELM e dos parâmetros de pós-processamento são avaliados.
![Integração de um EA em MQL e bancos de dados (SQL Server, .NET e C#)](https://c.mql5.com/2/25/ForArticle.png)
![Integração de um EA em MQL e bancos de dados (SQL Server, .NET e C#)](https://c.mql5.com/i/articles/overlay.png)
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.
![Negociação social. Sera que um sinal lucrativo pode ainda ser melhorado?](https://c.mql5.com/2/33/Social_Trading_avatar.png)
![Negociação social. Sera que um sinal lucrativo pode ainda ser melhorado?](https://c.mql5.com/i/articles/overlay.png)
Negociação social. Sera que um sinal lucrativo pode ainda ser melhorado?
A maioria dos assinantes escolhe sinais de negociação pela aparência da curva de saldo e pelo número de assinantes. Daí que muitos provedores hoje se preocupam mais com estatísticas bonitas do que com a qualidade real do sinal, muitas vezes testando diversos volumes de transação e melhorando artificialmente a aparência da curva de saldo. Este artigo aborda critérios de confiabilidade e maneiras pelas quais um provedor pode melhorar a qualidade de seu sinal. São exemplificadas a análise do histórico de um determinado sinal e as maneiras que podem ajudar o provedor a torná-lo mais lucrativo e menos arriscado.
![50 000 encomendas atendidas no Freelance MQL5.com](https://c.mql5.com/2/34/freelance-icon.png)
![50 000 encomendas atendidas no Freelance MQL5.com](https://c.mql5.com/i/articles/overlay.png)
50 000 encomendas atendidas no Freelance MQL5.com
Mais de 50 000 pedidos foram concluídos até outubro de 2018 pelos membros do serviço oficial Freelance MetaTrader — o maior site freelance do mundo para programadores MQL, contando com mais de mil desenvolvedores, com dezenas encomendas diárias e com localização em 7 idiomas.
![Indicador universal RSI para operação simultânea em dois sentidos](https://c.mql5.com/2/32/Double_RSI.png)
![Indicador universal RSI para operação simultânea em dois sentidos](https://c.mql5.com/i/articles/overlay.png)
Indicador universal RSI para operação simultânea em dois sentidos
Ao desenvolver algoritmos de negociação, muitas vezes enfrentamos o desafio de como determinar onde começa e termina a tendência/fase de correção. Neste artigo, tentaremos criar um indicador universal compatível com sinais para diferentes tipos de estratégias. Procuraremos simplificar ao máximo o recebimento de sinais para operações de negociação no EA. Exemplificaremos como combinar diferentes indicadores num único indicador.
![Redes Neurais Profundas (Parte VII). Ensemble de redes neurais: stacking](https://c.mql5.com/2/48/Deep_Neural_Networks_07.png)
![Redes Neurais Profundas (Parte VII). Ensemble de redes neurais: stacking](https://c.mql5.com/i/articles/overlay.png)
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](https://c.mql5.com/2/34/calendar_icon.png)
![950 sites transmitindo o calendário econômico da MetaQuotes](https://c.mql5.com/i/articles/overlay.png)
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.
![Apresentação personalizada do histórico de negociação e criação de gráficos para relatórios](https://c.mql5.com/2/32/CreateCustomeReport.png)
![Apresentação personalizada do histórico de negociação e criação de gráficos para relatórios](https://c.mql5.com/i/articles/overlay.png)
Apresentação personalizada do histórico de negociação e criação de gráficos para relatórios
O artigo descreve métodos personalizados, a fim de avaliar o histórico de negociação. Para fazer isso, são descritas duas classes para seu carregamento e análise. A primeira recolhe o histórico de negociação numa pequena tabela. Já a segunda está encarregada das estatísticas, uma vez que calcula vários indicadores e plota gráficos que ajudam a tornar mais conveniente a avaliação da eficácia da negociação.
![14 000 robôs de negociação no Mercado MetaTrader](https://c.mql5.com/2/34/market-avatar.png)
![14 000 robôs de negociação no Mercado MetaTrader](https://c.mql5.com/i/articles/overlay.png)
14 000 robôs de negociação no Mercado MetaTrader
A maior loja de aplicativos prontos para algotrading já possui 13 970 produtos — entre eles 4 800 robôs, 6 500 indicadores, 2.400 utilitários e outras soluções. Quase metade dos aplicativos (6 000) não podem ser comprados, mas, sim, alugados. Um quarto dos produtos (3 800) é totalmente gratuito.
![Teste de padrões de pares de moedas: Aplicação prática e perspectivas reais de negociação. Parte IV](https://c.mql5.com/2/31/LOGO.png)
![Teste de padrões de pares de moedas: Aplicação prática e perspectivas reais de negociação. Parte IV](https://c.mql5.com/i/articles/overlay.png)
Teste de padrões de pares de moedas: Aplicação prática e perspectivas reais de negociação. Parte IV
Este artigo conclui a série dedicada à negociação de cestas de pares de moedas. Aqui nós testamos o padrão restante e discutimos a aplicação de todo o método na negociação real. Serão considerados as entradas e saídas no mercado, busca e análise de padrões e a aplicação de indicadores combinados.
![Análise comparativa de 10 estratégias de fase de correção](https://c.mql5.com/2/32/10_flat.png)
![Análise comparativa de 10 estratégias de fase de correção](https://c.mql5.com/i/articles/overlay.png)
Análise comparativa de 10 estratégias de fase de correção
O artigo explora as vantagens e desvantagens de negociar durante movimentos laterais. São criadas e testadas 10 estratégias que se baseiam no acompanhamento do movimento de preços dentro do canal. Cada estratégia possui um mecanismo de filtragem para eliminar sinais falsos de entrada no mercado.
![O monitoramento da conta de negociação é uma ferramenta essencial do trader](https://c.mql5.com/2/34/monitoring_logo.png)
![O monitoramento da conta de negociação é uma ferramenta essencial do trader](https://c.mql5.com/i/articles/overlay.png)
O monitoramento da conta de negociação é uma ferramenta essencial do trader
O monitoramento da conta de negociação é um relatório detalhado de todas as transações concluídas. Todas as estatísticas de negociação são coletadas automaticamente e fornecidas a você na forma de diagramas e gráficos amigáveis.
![Como criar uma Especificação de Requisitos para solicitar um robô de negociação](https://c.mql5.com/2/32/HowCreateExpertSpecification.png)
![Como criar uma Especificação de Requisitos para solicitar um robô de negociação](https://c.mql5.com/i/articles/overlay.png)
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.
![Aplicação do método de Monte Carlo para otimizar estratégias de negociação](https://c.mql5.com/2/32/Monte_Carlo.png)
![Aplicação do método de Monte Carlo para otimizar estratégias de negociação](https://c.mql5.com/i/articles/overlay.png)
Aplicação do método de Monte Carlo para otimizar estratégias de negociação
Antes de lançar um robô em uma conta de negociação, geralmente nós realizamos testes e otimizações no histórico das cotações. No entanto, surge uma pergunta razoável: como os resultados passados podem nos ajudar no futuro? O artigo descreve a aplicação do método de Monte Carlo para construir critérios personalizados para a otimização da estratégia de negociação. Além disso, são considerados os critérios de estabilidade do EA.
![Redes Neurais Profundas (Parte VI). Ensemble de classificadores de redes neurais: bagging](https://c.mql5.com/2/48/Deep_Neural_Networks_06.png)
![Redes Neurais Profundas (Parte VI). Ensemble de classificadores de redes neurais: bagging](https://c.mql5.com/i/articles/overlay.png)
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.
![Construtor de estratégia visual. Criação de robôs de negociação sem programação](https://c.mql5.com/2/33/ava2.png)
![Construtor de estratégia visual. Criação de robôs de negociação sem programação](https://c.mql5.com/i/articles/overlay.png)
Construtor de estratégia visual. Criação de robôs de negociação sem programação
Este artigo apresenta um construtor de estratégia visual. É mostrado como qualquer usuário pode criar robôs de negociação e utilitários sem programação. Os Expert Advisors criados são totalmente funcionais e podem ser testados no testador de estratégias, otimizados na nuvem ou executados ao vivo em gráficos em tempo real.
![EA com interface gráfica: Fornecendo funcionalidade (Parte II)](https://c.mql5.com/2/32/avatar_expert_Graph_panel71p__1.png)
![EA com interface gráfica: Fornecendo funcionalidade (Parte II)](https://c.mql5.com/i/articles/overlay.png)
EA com interface gráfica: Fornecendo funcionalidade (Parte II)
Esta é a segunda parte do artigo sobre criação de um EA multissímbolo de sinal para negociação manual. Nós já criamos uma interface gráfica. Neste artigo, vamos falar sobre como vinculá-la à funcionalidade do programa.
![Floresta de Decisão Aleatória na Aprendizagem por Reforço](https://c.mql5.com/2/31/family-eco.png)
![Floresta de Decisão Aleatória na Aprendizagem por Reforço](https://c.mql5.com/i/articles/overlay.png)
Floresta de Decisão Aleatória na Aprendizagem por Reforço
A Floresta Aleatória (RF), com o uso de bagging, é um dos métodos mais poderosos de aprendizado de máquina, o que é ligeiramente inferior ao gradient boosting. Este artigo tenta desenvolver um sistema de negociação de autoaprendizagem que toma decisões com base na experiência adquirida com a interação com o mercado.
![EA com interface gráfica: Criação do painel (Parte I)](https://c.mql5.com/2/32/avatar_expert_Graph_panel71p.png)
![EA com interface gráfica: Criação do painel (Parte I)](https://c.mql5.com/i/articles/overlay.png)
EA com interface gráfica: Criação do painel (Parte I)
Apesar de muitos traders ainda preferirem negociar manualmente, há poucas hipóteses de fazer o trabalho sem automatizar as operações de rotina. O artigo mostra um exemplo em que é criado um EA multissímbolo de sinal para negociação manual.
![Como analisar os trades do Sinal selecionado no gráfico](https://c.mql5.com/2/32/bv8-az2zxypg7t6xs-7r9h1l-nlm87q3q35-vvyg13n-gv-dcau99f.png)
![Como analisar os trades do Sinal selecionado no gráfico](https://c.mql5.com/i/articles/overlay.png)
Como analisar os trades do Sinal selecionado no gráfico
O serviço Sinais de negociação se desenvolve rapidamente. E como você está confiando seu dinheiro a um provedor do sinais, seria bom minimizar o risco de perder o depósito. Como lidar com essa selva de sinais de negociação? Como encontrar esse sinal que trará o lucro para você? O artigo propõe a criação de uma ferramenta para analisar visualmente o histórico de trades de sinais de negociação no gráfico do instrumento.
![Como transferir a parte de cálculo de qualquer indicador para o código do EA](https://c.mql5.com/2/32/expert_indicator.png)
![Como transferir a parte de cálculo de qualquer indicador para o código do EA](https://c.mql5.com/i/articles/overlay.png)
Como transferir a parte de cálculo de qualquer indicador para o código do EA
Existem vários motivos que justificam a transferência do código do indicador para o EA. Mas como avaliar os prós e contras desta abordagem? Este artigo propõe uma maneira de transferir o código do indicador para um EA. Além disso, são realizados vários experimentos para avaliar a velocidade de funcionamento do EA.
![Melhoramos o trabalho com Painéis, adicionando transparência, alterando a cor do plano de fundo e herdando da CAppDialog/CWndClient](https://c.mql5.com/2/32/Advanced_Pane.png)
![Melhoramos o trabalho com Painéis, adicionando transparência, alterando a cor do plano de fundo e herdando da CAppDialog/CWndClient](https://c.mql5.com/i/articles/overlay.png)
Melhoramos o trabalho com Painéis, adicionando transparência, alterando a cor do plano de fundo e herdando da CAppDialog/CWndClient
Continuamos a estudar o trabalho com a CAppDialog. Agora, aprenderemos a como definir a cor de fundo, de borda e de barra de título para o painel gráfico. Consideraremos passo a passo como adicionar transparência à janela do aplicativo ao movê-la no gráfico. Em seguida, analisaremos a criação de descendentes da CAppDialog ou da CWndClient e veremos novas sutilezas ao trabalhar com controles. Finalmente, olharemos de uma nova perspectiva os novos Projetos.
![Visualização dos resultados de otimização pelo critério selecionado](https://c.mql5.com/2/32/VisualizeBest100.png)
![Visualização dos resultados de otimização pelo critério selecionado](https://c.mql5.com/i/articles/overlay.png)
Visualização dos resultados de otimização pelo critério selecionado
No artigo, continuamos a desenvolver o aplicativo MQL para trabalhar com resultados de otimização que foi iniciado em artigos anteriores. Desta vez, veremos um exemplo em que podemos gerar uma tabela de melhores resultados após a otimização de parâmetros, especificando através da interface gráfica outro critério.
![Construímos um ZigZag de osciladores. Exemplo de execução do trabalho segundo os termos de referência](https://c.mql5.com/2/31/Avatar_ZigZag__1.png)
![Construímos um ZigZag de osciladores. Exemplo de execução do trabalho segundo os termos de referência](https://c.mql5.com/i/articles/overlay.png)
Construímos um ZigZag de osciladores. Exemplo de execução do trabalho segundo os termos de referência
O artigo apresenta a criação do indicador ZigZag de acordo com os termos de referência para um dos exercícios descritos no artigo "Como criar uma especificação de requisitos para solicitar um indicador". O indicador é construído com base em extremos determinados com a ajuda de um oscilador. O indicador suporta o uso de um dos seguintes osciladores: WPR, CCI, Chaikin, RSI, Stochastic Oscillator.
![Como criar um painel gráfico de qualquer nível de complexidade](https://c.mql5.com/2/68/graphic-panel_600x314.jpg)
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.