Participe de nossa página de fãs
Coloque um link para ele, e permita que outras pessoas também o avaliem
Avalie seu funcionamento no terminal MetaTrader 5

Assistente MQL5 - Sinais de negociação baseado em Padrões de vela + Estocástico - expert para MetaTrader 5
- Visualizações:
- 3111
- Avaliação:
- Publicado:
- 2014.01.14 12:45
- Atualizado:
- 2016.11.22 07:34
-
Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance
Descrição:
Com o Assistente MQL5, os traders agora podem gerar automaticamente códigos do Expert Advisor baseado em classes de sinais de negociação, rastreio de posições e de gerenciamento do dinheiro. Juntamente com as classe de sinais de negociação da Biblioteca Padrão, você pode desenvolver e testar seus próprios sistemas de negociação. Para fazer isso, basta escrever um módulo de sinais de negociação.
No livro "As Estratégias dos melhores Traders do mundo" (em Russo) descreve indicadores e estratégias de negociação para a análise técnica envolvendo o pacote de software MetaStock. Juntamente com os sinais de negociação convencionais, o livro trata os baseado na utilização combinada de padrões de vela de reversão com confirmações do Estocástico, CCI, MFI e RSI.
Utilizando os padrões de velas de reversão em conjunto com os sinais de osciladores permitem reduzir o número de sinais falso positivos e aumentar a eficiência do sistema de negociação.
Em publicações anteriores, nós havíamos considerado os sinais de negociação baseado nos padrões de vela e confirmado pelo indicador Estocástico:
- 3 Corvos Negros/3 Soldados Brancos
- Nuvem Negra/Linha perfurante
- Engolfo de Alta/Engolfo de Baixa
- Harami de Alta/Harami de Baixa
- Martelo/Enforcado
- Linhas de Contra-Ataque de Alta/Baixa
- Estrela da Manhã/Noite
Nesta publicação, vamos considerar os resultados do uso combinado de todos esses modelos, juntamente com os sinais do indicador Estocástico.
1. Modelos de velas altistas/baixistas e sua detecção
A classe CandlePattern também possui as funções para detectar a formação de alguns dos padrões de vela de alta e baixa (com exceção da combinação Martelo/Enforcado).
A formação do padrão de vela altista é verificado pela função CheckPatternAllBullish():
//+------------------------------------------------------------------+ //| Verifica a formação de padrões altistas | //+------------------------------------------------------------------+ bool CCandlePattern::CheckPatternAllBullish() { return(CheckPatternThreeWhiteSoldiers() || CheckPatternPiercingLine() || CheckPatternMorningDoji() || CheckPatternBullishEngulfing() || CheckPatternBullishHarami() || CheckPatternMorningStar() || CheckPatternBullishMeetingLines()); }
A formação do padrão de vela baixista é verificado pela função CheckPatternAllBearish():
//+------------------------------------------------------------------+ //| Verifica a formação de padrões baixistas | //+------------------------------------------------------------------+ bool CCandlePattern::CheckPatternAllBearish() { return(CheckPatternThreeBlackCrows() || CheckPatternDarkCloudCover() || CheckPatternEveningDoji() || CheckPatternBearishEngulfing() || CheckPatternBearishHarami() || CheckPatternEveningStar() || CheckPatternBearishMeetingLines()); }
2. Sinais de negociação combinado com o indicador Estocástico
A abertura de posição comprada/vendida é realizada quando ocorre a formação de um dos modelos de vela altista/baixista e há uma confirmação do oscilador Estocástico. A linha do sinal %D deve ser maior/menor que os níveis críticos correspondentes (30 ou 70).
Um sinal e fechamento é formado em dois casos:
- Quando é formado um padrão de vela oposto (um altista para a posição comprada e um baixista para a posição vendida).
- De acordo com o comportamento subsequente de %D. Se a linha %D atingiu o nível crítico oposto (80 para posição comprada e 20 para posição vendida) ou se a linha %D não confirma o sinal reverso e atinge o nível crítico (20 para posição comprada e 80 para posição vendida).
Verifica as condições de entrada e saída do mercado realizado pelos seguintes métodos:
- int CCP_Stoch::LongCondition() - verifica as condições de abertura de posição comprada (m_pattern_0) e o fechamento de uma posição vendida (m_pattern_1);
- int CCP_Stoch::ShortCondition() - verifica as condições de abertura de posição vendida (m_pattern_0) e o fechamento de uma posição comprada (m_pattern_1).
2.1. Abertura de posição comprada e fechamento de posição vendida
-
O sinal para abrir uma posição comprada se produz quando se combinam um padrão de vela altista e a confirmação da condição StochSignal(1)<30 (o valor da linha de sinal do indicador Estocástico da última barra completa deve ser inferior a 30):
-
O sinal para fechar uma posição vendida se produz quando ocorre um padrão de vela altista ou caso a linha do indicador Estocástico cruzar para cima os níveis críticos (20 ou 80).
//+------------------------------------------------------------------+ //| Método para verificar a formação dos modelos de mercado | //| Verifica as condições de | //| entrada (abertura de posição comprada, m_pattern_0) | //| saída (fechamento de posição vendida, m_pattern_1) | //+------------------------------------------------------------------+ int CCP_Stoch::LongCondition() { int res=0; //---- verificando as condições de abertura de posição comprada //---- formação do padrão altista e a linha de sinal do indicador Estocástico<30 if(CheckPatternAllBullish() && (StochSignal(1)<30)) res=m_pattern_0; // sinal para abrir uma posição comprada //--- verifica as condições para fechar uma posição vendida //--- formação do padrão altista ou cruzamento da linha de sinal (acima de 20, acima de 80) if(CheckPatternAllBullish() || ((StochSignal(1)>20) && (StochSignal(2)<20)) || ((StochSignal(1)>80) && (StochSignal(2)<80))) res=m_pattern_1; // sinal para fechar posição vendida //--- return(res); }
2.2. Abertura de posição vendida e fechamento de posição comprada
-
O sinal para abrir uma posição comprada se produz quando se combinam um padrão de vela altista e a confirmação da condição StochSignal(1)>70 (o valor da linha de sinal do indicador Estocástico da última barra completa deve ser superior a 70):
-
O sinal para fechar uma posição comprada se produz quando ocorre um padrão de vela baixista ou caso a linha do indicador Estocástico cruzar para baixo os níveis críticos (80 ou 20).
//+------------------------------------------------------------------+ //| Método para verificar a formação dos modelos de mercado | //| Verifica as condições de | //| entrada (abertura de posição vendida, m_pattern_0) | //| saída (fechamento de posição comprada, m_pattern_1) | //+------------------------------------------------------------------+ int CCP_Stoch::ShortCondition() { int res=0; //--- verificando as condições de abertura de posição vendida //---- formação do padrão baixista e linha de sinal do indicador Estocástico>70 if(CheckPatternAllBearish() && (StochSignal(1)>70)) res=m_pattern_0; // sinal para abrir uma posição vendida //--- verifica as condições para fechar uma posição comprada //---- formação do padrão baixista ou cruzamento da linha de sinal (abaixo de 80, abaixo de 20) if(CheckPatternAllBearish() || ((StochSignal(1)<80) && (StochSignal(2)>80)) || ((StochSignal(1)<20) && (StochSignal(2)>20))) res=m_pattern_1; // sinal para fechar uma posição comprada //--- return(res); }
2.3. Criando um Expert Advisor baseado nos sinais de negociação "Padrões de velas + Estocástico" usando o Assistente MQL5
A classe CCP_Stoch não está incluída na Biblioteca Padrão de sinais de negociação. Portanto, baixe o arquivo ccp_stoch.mqh (em anexo) e salve-o no diretório \terminal_folder\Include\Expert\Signal\MySignals para usá-lo. O arquivo candlepatterns.mqh deve ser copiado para o mesmo diretório de ccp_stoch.mqh. Em seguida, reinicie o MetaEditor para ser possível utilizá-lo no Assistente MQL5.
Para criar um robô de negociação seguindo esta estratégia via Assistente MQL5, selecione o tipo de sinal "Sinais baseado em Padrões de vela + Estocástico" no segundo passo:
Fig. 1. Selecionando o gerador de sinais de negociação "Sinais baseado em Padrões de vela + Estocástico" no Assistente MQL5
Nos passos seguintes, você deve especificar o tipo de trailing stop e o sistema de gerenciamento do dinheiro. O código do Expert Advisor é gerado automaticamente. Agora, ele deve ser compilado para começar os testes.
2.4. Resultados do teste
Resultados do teste do Expert Advisor com dados históricos (EURUSD H1, período de teste: 1.1.2000-02.02.2011, PeriodK=33, PeriodD=37, PeriodSlow=30, MA_period=25).
Este Expert Advisor usa o módulo de volume de negociação fixo de 0.1 lote (Negociação com lote fixo). Trailing stop não é utlizado (Trailing não utilizado).
Fig. 2. Resultados do teste com o Expert Advisor, baseado em "Sinais baseado em Padrões de vela + Estocástico"
O melhor conjunto dos parâmetros de entrada podem ser encontrado utilizando o Strategy Tester do terminal cliente MetaTrader 5.
O código do Expert Advisor, criado pelo Assistente MQL5 se encontra em anexo em expert_cp_stoch.mq5.
Traduzido do russo pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/ru/code/327

Script simples para embaralhar todas as cores do seu gráfico. Basta clicar sobre ele e veja os resultados você mesmo!

O Expert Advisor mostra o uso da biblioteca LibCustomChart para a ligação automática dos indicadores para gráficos personalizados iCustomChart criados com base em arquivos do histórico customizado.

IREA é um algoritmo de negociação automatizado baseado na idéia de que um impacto incomum nas alterações de preços serão ajustados por um movimento inverso.

Este indicador irá traçar linhas de divergência sobre o indicador Awesome_Oscillator, dando sinais de compra e venda por meio da exibição de flechas.