English Русский 中文 Español Deutsch 日本語
Combinando uma estratégia de tendência com outra de fase de correção

Combinando uma estratégia de tendência com outra de fase de correção

MetaTrader 5Sistemas de negociação | 29 outubro 2018, 09:54
4 242 0
Dmitriy Gizlyk
Dmitriy Gizlyk

Sumário

Introduçã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. O mercado está sempre mudando, entre movimentos de tendência podem ser observados movimentos laterais, permitindo ganhar dinheiro graças a esses dois momentos separadamente. Porém, quando uns ganham, outros perdem ou ficam à espera do momento certo, e vice-versa.

Neste ponto, surge a pergunta: é possível combinar as duas abordagens para aumentar a rentabilidade da negociação? Será que duas estratégias podem se complementar? Tentemos combinar modelos de negociação, pelos vistos, completamente diferentes e ver o resultado desse tipo de combinação de estratégias.

1. Princípios da combinação de estratégias

No gráfico de preços, há uma constante mudança de tendências. Fortes movimentos de tendência são substituídos por movimentos laterais, quando o preço fica parado numa faixa estreita. Ao mesmo tempo, o trader deve escolher uma estratégia baseada nas condições atuais do mercado. Mas como determinar qual estratégia escolher nesse momento? Será melhor uma de tendência ou uma de fase de correção? 

Gráfico

Os artigos [1] e [2] consideraram diferentes estratégias de negociação abrangendo as de tendência e as de fase de correção. Não é difícil perceber que a aplicação de uma estratégia começa com a definição da situação no mercado. Ambos os tipos de estratégias usam diferentes indicadores de tendência para determinar a situação atual. No entanto, as estratégias de tendência entram no mercado se houver uma tendência, enquanto as de fase de correção esperam que ela diminua para abrir uma posição. Esse é o princípio da primeira abordagem ao combinar dois tipos de estratégias num único EA: se houver uma tendência, é usado o algoritmo de negociação de tendência e, se não houver, é usado o algoritmo de negociação de fase de correção.

Olhando mais de perto os gráficos de preços, pode-se observar que nem os movimentos de tendência nem os laterais ocorrem unidirecionalmente. Todos os movimentos são acompanhados por flutuações de preços. Na fase de correção, essas flutuações têm faixas estreitas, já durante a tendência umas flutuações prevalecem sobre outras. Essa propriedade pode ser usada ao combinar estratégias de tendência com estratégias de fase de correção. O princípio é negociar com a tendência, mas o ponto de entrada deve ser confirmado pelos osciladores usados ao negociar na fase de correção. Essa abordagem ajuda a entrar na correção concluída, o que reduz os rebaixamentos e aumenta o potencial do movimento dos preços em direção ao trade.

2. Programemos o EA

Para demonstrar os princípios de combinação de estratégias, foram escolhidas a estratégia 1 do artigo [1] e a estratégia 6 do artigo [2]. Para determinar a tendência, ambas as estratégias selecionadas usam o indicador ADX. Preliminarmente, os EAs foram otimizados no período de 1º de janeiro de 2017 a 1º de agosto de 2018. Foram selecionados os seguintes parâmetros de acordo com os resultados da otimização dessas estratégias.

Estratégia de tendência 1.

Parâmetros de estratégia de tendência

Estratégia de fase de correção 6.

Parâmetros de estratégia de fase de correção

As capturas de tela apresentam os resultados de um EA com parâmetros otimizados.

Estratégia de tendência 1.

Resultados de teste da estratégia de tendênciaResultados de teste da estratégia de tendência

Estratégia de fase de correção 6.

Resultados de teste da estratégia de fase de correçãoResultados de teste da estratégia de fase de correção

Ambos os EAs utilizados são construídos de acordo com o esquema de abertura de ordens pelos sinais dos indicadores na ausência de posições abertas no momento do recebimento do sinal. O fechamento da posição ocorre com base nos valores predefinidos de take-profit e de stop-loss.

Essa abordagem permite excluir do EA o módulo de acompanhamento de posição, o que simplifica bastante a lógica do EA. Ao combinar EAs, eu deliberadamente não mudarei sua lógica de funcionamento, a fim de demonstrar o efeito no resultado dos métodos de combinação, em vez de explicar a alteração de EAs.

2.1. Método 1

O primeiro método consiste em verificar sucessivamente os sinais de ambas as estratégias e abrir uma posição quando qualquer um deles se apresentar. Além disso, cada estratégia tem seus próprios parâmetros de indicador, bem como níveis de stop-loss e take-profit. Com essa abordagem, ter uma posição aberta com base numa estratégia exclui a abertura de uma posição com base numa segunda estratégia. Assim, sempre haverá mais de uma posição no mercado, o que limita os riscos.

Uma das desvantagens dessa abordagem inclui a possível omissão de transações lucrativas com base numa das estratégias quando se apresentar no mercado uma posição aberta baseada em outra estratégia. No entanto, como, ao usar esta abordagem, as estratégias utilizadas devem operar em mercados diferentes, a influência deste fator deve ser mínima.

Para implementar o método, copiamos o código de ambos os EA para um arquivo, combinando o código de funções idênticas. Para evitar a duplicação de nomes, adicionamos o prefixo Trend às variáveis e às funções da estratégia de tendência, e o prefixo Flat — às variáveis ​​e às funções da estratégia de fase de correção.

//--- Parâmetros gerais
input double               Inp_Lot=0.01;                          //Lot
input MarginMode           Inp_MMode=LOT;                         //MM
input int                  Inp_MagicNum=1111;                     //Magic number
input int                  Inp_Deviation = 2;                     //Deviation(points)
//---
input string               Trend_EaComment="Trend Strategy";      //Strategy Comment
input int                  Trend_StopLoss=25;                     //Stop Loss(points)
input int                  Trend_TakeProfit=90;                   //Take Profit(points)
//--- Parâmetros do indicador RSI_Color
input int                  Trend_RSIPeriod=28;                    //RSI Period
input double               Trend_Overbuying=70;                   //Overbuying zone
input double               Trend_Overselling=30;                  //Overselling zone
//--- Parâmetros do indicador ADX_Cloud
input int                  Trend_ADXPeriod=11;                    //ADX Period
input double               Trend_alpha1 = 0.25;                   //alpha1
input double               Trend_alpha2 = 0.25;                   //alpha2
//---
input string               Flat_EaComment="Flat Strategy";        //Strategy Comment
input int                  Flat_StopLoss=50;                      //Stop Loss(points)
input int                  Flat_TakeProfit=50;                    //Take Profit(points)
//--- Parâmetros do indicador WPR
input int                  Flat_WPRPeriod=7;                      //Period WPR
//--- Parâmetros do indicador ADX
input int                  Flat_ADXPeriod=11;                     //Period ADX
input int                  Flat_FlatLevel=40;                     //Flat Level ADX

No começo da função Ontick, verificamos a posição aberta. Se não houver uma posição aberta, atualizaremos os dados dos indicadores e verificaremos sucessivamente os sinais de entrada primeiro pela estratégia de tendência e depois pela estratégia de fase de correção. No caso de surgimento de algum dos sinais, abrimos uma posição com base na estratégia correspondente.

void OnTick()
  {
//--- Verificação de ordens abertas anteriormente pelo EA
   if(!Trade.IsOpenedBySymbol(_Symbol,Inp_MagicNum))
     {
      //--- Obtenção de dados para cálculo
      if(!GetIndValue())
         return;
      //--- Abertura de ordens pelo algoritmo de tendência
      //--- Abertura de ordem se houver um sinal de compra
      if(TrendBuySignal())
         Trade.BuyPositionOpen(Symbol(),Inp_Lot,Trend_StopLoss,Trend_TakeProfit,Inp_MagicNum,Trend_EaComment);
      else
      //--- Abertura de ordem se houver um sinal de venda
      if(TrendSellSignal())
         Trade.SellPositionOpen(Symbol(),Inp_Lot,Trend_StopLoss,Trend_TakeProfit,Inp_MagicNum,Trend_EaComment);
      else
      //--- Abertura de ordens pelo algoritmo de fase de correção
      //--- Abertura de ordem se houver um sinal de compra
      if(FlatBuySignal())
         Trade.BuyPositionOpen(Symbol(),Inp_Lot,Flat_StopLoss,Flat_TakeProfit,Inp_MagicNum,Flat_EaComment);
      else
      //--- Abertura de ordem se houver um sinal de venda
      if(FlatSellSignal())
         Trade.SellPositionOpen(Symbol(),Inp_Lot,Flat_StopLoss,Flat_TakeProfit,Inp_MagicNum,Flat_EaComment);
     }
  }

O código completo do EA pode ser encontrado no anexo (projeto Combination1).

2.2. Método 2

O segundo método complica um pouco o processo de fusão e, além do primeiro método, é criado um certo conglomerado de sinais de duas estratégias.

No exemplo mencionado sobre a estratégia de tendência, para determinar a tendência é usado o indicador ADX cloud exibindo a diferença entre as linhas DI+ e DI-, enquanto isso, não é verificada a força da tendência. Ao mesmo tempo, a estratégia de fase de correção, antes da abertura da posição, verifica a força da tendência pelo valor limite do ADX. Consequentemente, podemos introduzir um filtro adicional para abrir uma transação de acordo com a estratégia de tendência, levando em consideração a força da tendência.

bool TrendBuySignal()
  {
   return(trend_adx[0]>trend_adx[1] && trend_rsi1[0]==1 && trend_rsi1[1]==1 &&  flat_adx[0]>=Flat_FlatLevel)?true:false;
  }

Neste caso, na estratégia de tendência, as transações são filtradas pelo indicador RSI, portanto, podemos reduzir o número de transações desfavoráveis baseadas na estratégia de fase de correção, excluindo a abertura de posições contra os sinais do RSI.

bool FlatBuySignal()
  {
   return(flat_wpr[0]<-80 && flat_adx[0]<Flat_FlatLevel && trend_rsi2[0]!=1)?true:false;
  }

O código completo do EA pode ser encontrado no anexo do projeto (Combination2).

2.3. Método 3

O terceiro método é aplicável em contas de cobertura e consiste em usar duas estratégias num EA de forma totalmente independente. Às ordens de cada estratégia é atribuído seu próprio número mágico. A abertura de posições por estratégias ocorre de acordo com seus sinais, independentemente da presença de uma posição aberta baseada em outra estratégia.

Essa abordagem imita completamente o uso de dois EA numa conta, mantendo todos os prós e contras dessas abordagens. Em particular, os riscos aumentam como resultado da possível abertura de duas posições em diferentes estratégias simultaneamente.

//--- Parâmetros gerais
input double               Inp_Lot=0.01;                             //Lot
input MarginMode           Inp_MMode=LOT;                            //MM
input int                  Inp_Deviation = 2;                        //Deviation(points)
//---
input string               Trend_EaComment="Trend Strategy";         //Strategy Comment
input int                  Trend_StopLoss=25;                        //Stop Loss(points)
input int                  Trend_TakeProfit=90;                      //Take Profit(points)
input int                  Trend_MagicNum=1111;                      //Magic number
//--- Parâmetros do indicador RSI_Color
input int                  Trend_RSIPeriod=28;                       //RSI Period
input double               Trend_Overbuying=70;                      //Overbuying zone
input double               Trend_Overselling=30;                     //Overselling zone
//--- Parâmetros do indicador ADX_Cloud
input int                  Trend_ADXPeriod=11;                       //ADX Period
input double               Trend_alpha1 = 0.25;                      //alpha1
input double               Trend_alpha2 = 0.25;                      //alpha2
//---
input string               Flat_EaComment="Flat Strategy";           //Strategy Comment
input int                  Flat_StopLoss=50;                         //Stop Loss(points)
input int                  Flat_TakeProfit=50;                       //Take Profit(points)
input int                  Flat_MagicNum=1112;                       //Magic number
//--- Parâmetros do indicador WPR
input int                  Flat_WPRPeriod=7;                         //Period WPR
//--- Parâmetros do indicador ADX
input int                  Flat_ADXPeriod=11;                        //Period ADX
input int                  Flat_FlatLevel=40;                        //Flat Level ADX

Na função OnTick, verificamos separadamente tanto as posições abertas com número mágico de tendência quanto — com o número mágico de fase de correção.

void OnTick()
  {
//--- Verificação das ordens abertas anteriormente pelo EA de acordo com a estratégia de tendência
   if(!Trade.IsOpenedBySymbol(_Symbol,Trend_MagicNum))
     {
      //--- Obtenção de dados para cálculo
      if(!GetIndValue())
         return;
      //--- Abertura de ordem se houver um sinal de compra
      if(TrendBuySignal())
         Trade.BuyPositionOpen(Symbol(),Inp_Lot,Trend_StopLoss,Trend_TakeProfit,Trend_MagicNum,Trend_EaComment);
      else
      //--- Abertura de ordem se houver um sinal de venda
      if(TrendSellSignal())
         Trade.SellPositionOpen(Symbol(),Inp_Lot,Trend_StopLoss,Trend_TakeProfit,Trend_MagicNum,Trend_EaComment);
     }
//--- Verificação das ordens abertas anteriormente pelo EA de acordo com a estratégia de fase de correção
   if(!Trade.IsOpenedBySymbol(_Symbol,Flat_MagicNum))
     {
      //--- Obtenção de dados para cálculo
      if(!GetIndValue())
         return;
      //--- Abertura de ordem se houver um sinal de compra
      if(FlatBuySignal())
         Trade.BuyPositionOpen(Symbol(),Inp_Lot,Flat_StopLoss,Flat_TakeProfit,Flat_MagicNum,Flat_EaComment);
      else
      //--- Abertura de ordem se houver um sinal de venda
      if(FlatSellSignal())
         Trade.SellPositionOpen(Symbol(),Inp_Lot,Flat_StopLoss,Flat_TakeProfit,Flat_MagicNum,Flat_EaComment);
     }
  }

O código completo do EA pode ser encontrado no anexo (projeto Combination3).

3. Testando EAs

Após o provisionamento dos três EAs em diferentes métodos de combinação de estratégias, testaremos e compararemos os resultados dos EAs. Para comparar os resultados, realizaremos testes sem alterar os parâmetros dos EAs.

3.1. Teste do método 1

O primeiro teste mostrou um lucro. O lucro total e o fator de recuperação foram maiores que os dos EAs originais. Em comparação com a estratégia de fase de correção, a linha de saldo se tornou visualmente mais suave, o número de transações aumentou e o rebaixamento máximo do saldo e dos fundos diminuiu. Ao mesmo tempo, o fator de lucro diminuiu ligeiramente e a soma do lucro total foi ainda menor que o lucro total das estratégias inciais.

Resultados de teste "Método 1"Resultados de teste "Método 1"

3.2. Teste do método 2

O uso do segundo método permitiu aumentar ainda mais o lucro total em comparação com o método 1 com o mesmo número de transações, embora ainda seja menor que o lucro total dos EAs iniciais. O crescimento do lucro permitiu aumentar o fator de recuperação, o fator de lucro (que se tornou igual à estratégia de fase de correção) e a cota de transações lucrativas. Ao mesmo tempo, diminuiu o rebaixamento máximo no saldo.

Resultados de teste "Método 2"Resultados de teste "Método 2"

3.3. Teste do método 3

O uso do terceiro método permitiu aumentar ainda mais o lucro total ao nível do lucro total dos EAs iniciais. O aumento do lucro foi possível graças a um aumento no número de transações. Ao acontecer isso, aumentaram a carga no depósito e o rebaixamento máximo no saldo.

Resultados de teste "Método 3"Resultados de teste "Método 3"

4. Estratégias de otimização

O teste de EAs realizado na seção anterior demonstrou as vantagens de combinar estratégias em EAs. Todos os três métodos mostraram um aumento do lucro em comparação com as estratégias iniciais. Mas quero lembrar que as estratégias iniciais foram otimizadas para o intervalo de tempo testado, enquanto para testar EAs complexos foram usados os mesmos parâmetros iniciais.

No entanto, acho que para ninguém será algo novo que qualquer interferência na lógica do EA requer ajustes adicionais de parâmetros. Tentemos otimizar os EAs coletados usando os dois primeiros métodos de combinação de estratégias, e vejamos o que podemos conseguir.

Não esqueçamos também que a própria ideia de construir EAs consiste em ganhar dinheiro no mercado e não em demonstrar suas capacidades em dados históricos. Portanto, sugiro que você divida o período de teste em duas seções. Anteriormente, realizamos testes para o período de 1º de janeiro de 2017 a 1º de agosto de 2018. Agora proponho levar a cabo a otimização no intervalo de tempo de 01/01/2017 a 1.06.2018, e realizar o teste 'forward' no período restante.

Período de otimização

4.1. Otimização do "Método 1"

Ao selecionar os parâmetros para otimização, é necessário lembrar que cada um dos nossos EAs inclui blocos de duas estratégias. Além disso, cada estratégia usa dois indicadores para entrada. Mas não vamos esquecer que ambas as estratégias usam o ADX para determinar a força e a direção da tendência. Assim, na lógica dos nossos EAs, para determinar os pontos de entrada são usados ​​três indicadores. Proponho otimizar os períodos desses três indicadores.

A otimização do período do indicador ADX mostrou lucro máximo e estabilidade frente às mudanças em outros parâmetros quando o período indicador estava na faixa de 12 a 14. Abaixo está um gráfico mostrando a dependência do lucro do EA em relação às mudanças nos períodos do ADX e do RSI num intervalo de tempo otimizado.

A realização do teste 'forward' confirmou a possibilidade de fazer um lucro no intervalo indicado de valores do indicador, adicionalmente, a estabilidade máxima se observa com o período de ADX igual a 13. Por sua vez, a similaridade dos resultados da otimização e do teste 'forward' demonstra a estabilidade do trabalho do EA num intervalo de tempo não otimizado.

Teste 'forward' do ADX

A otimização do período do indicador WPR mostrou resultados semelhantes. A estabilidade máxima do EA na área otimizada é alcançada quando o período do indicador é 7. Ao mesmo tempo, com o crescimento do período do indicador ADX, também é possível obter lucro na faixa de 3 a 5. Abaixo está um gráfico mostrando a dependência do lucro do EA em relação às mudanças nos períodos do WPR e do ARX num intervalo de tempo otimizado.

Otimização do WPR

O teste 'forward' confirmou essas zonas. Mas, ao mesmo tempo, há um aumento do lucro na faixa de 3 a 4 do período do indicador WPR, e no caso do WPR, de 7, é observada uma diminuição do lucro do EA quando aumentam os valores do indicador ADX. Isto pode ser devido a um intervalo de teste mais curto e sua especificidade.

Teste 'forward' do WPR

A otimização do período do indicador RSI confirmou tudo o mencionado acima. No intervalo de tempo otimizado, o intervalo de 27 a 32 se destaca pela lucratividade e estabilidade frente às mudanças em outros indicadores. Abaixo está um gráfico mostrando a dependência do lucro do EA em relação às mudanças nos períodos do RSI e do ADX num intervalo de tempo otimizado.

Otimização de RSI

No teste 'forward', a faixa de rentabilidade dos períodos do indicador RSI foi reduzida para 30-32.

Teste 'forward' do RSI

As tentativas de otimizar os valores de take-profit e de stop-loss não permitiram aumentar a lucratividade do EA e confirmaram os parâmetros previamente selecionados.

De acordo com os resultados de otimização, como parâmetros ideais foram escolhidos o período 13 do ADX, 30 — RSI, 7 — WPR. Com esses parâmetros, o EA no período otimizado recebeu US$ 202,33 de lucro e no período 'forward' — US$ 46,10, sendo todos os outros parâmetros iguais. Este rendimento excede o rendimento obtido ao combinar EAs pelo método 3 no mesmo período que foi testado acima. Deve-se notar que o uso de parâmetros semelhantes no EA combinado pelo método 3 também dá os piores resultados, US$ 166,29 e US$ 60,27, respectivamente.

Otimização "Método 1"Otimização "Método 1"Otimização "Método 1"

É necessário observar que a confirmação dos resultados da otimização por testes 'forward' é um bom sinal e demonstra a estabilidade do trabalho do EA num segmento de tempo não otimizado.

4.2. Otimização do "Método 2"

Um fato interessante é que a otimização do EA combinado pelo método 2 forneceu resultados semelhantes à otimização anterior, o que pode indicar a estabilidade do sistema de negociação. Como resultado da otimização, como na seção anterior foram escolhidos os mesmos períodos de indicadores. Apenas quando as outras condições eram iguais, o EA baseado no método 2 mostrou um rendimento menor devido a uma diminuição no número de transações. Os gráficos de otimização são apresentados abaixo.

Método 2. Otimização do ADXMétodo 2. Teste 'forward' do ADXMétodo 2. Otimização do WPRMétodo 2. Teste 'forward' do WPRMétodo 2. Otimização de RSIMétodo 2. Teste 'forward' do RSI

Ao mesmo tempo, melhorar a qualidade dos sinais da estratégia de tendência tornou possível otimizar os níveis de stop-loss e de take-profit. Como resultado da otimização, para a estratégia de tendência, o stop-loss foi reduzido de 25 para 20 pontos e o take-profit aumentou de 90 para 110 pontos. Isso permitiu aumentar a rentabilidade do trabalho do EA. Abaixo são apresentados os gráficos de otimização para os níveis de stop-loss e take-profit.

Método 2. Otimização do SLMétodo 2. Teste 'forward' do SLMétodo 2. Otimização do TPMétodo 2. Teste 'forward' do TP

De acordo com os resultados da otimização, a rentabilidade do EA combinado pelo método 2 ser tornou a máxima das três opções consideradas. A aplicação dos parâmetros obtidos no decorrer dessa otimização para outros EAs gerou retornos piores. Abaixo são apresentadas capturas de tela de teste do EA otimizado.

Otimização "Método 2"

Fim do artigo

O artigo apresentou três formas de combinar duas estratégias num único EA, mostrou como organizar tal união e também como testar EAs sem alterar os parâmetros após otimizá-los.

A tabela abaixo resume os resultados de teste de todas as estratégias. A otimização de EAs combinados mostrou um rendimento superior ao uso de dois EAs separados.

Gostaria de acrescentar que, em seus EAS, você pode combinar mais de duas estratégias, usando diferentes combinações dos métodos propostos ou adicionando suas próprias abordagens. Neste caso, é impossível dizer inequivocamente qual dos métodos será o melhor. Em cada caso, você precisa ser criativo na escolha do método de combinação de estratégias, com base nas estratégias em si e em sua lógica de funcionamento.

ParâmetrosEstratégia
de tendência
Estratégia
de fáse de correção
Método 1Método 2Método 3Método 1 otim.
Back/Forw. 
Método 2 otim.
Back/Forw. 
Lucro total51.56158.96160.52166.12210.40 202.33 / 46.10 206.40 / 43,10
Fator de lucro2.391.251.241.251.31 1.25 / 1.58 1.25 /1.54
Fator de recuperação3.653.553.733.864.904.08 / 1.94 4.17 / 1.82
Rebaixamento máximo no saldo8.4941.3036.4135.6739.2344.98 / 19.75 44.98 /19.75
Rebaixamento máximo nos fundos14.1444.7643.0443.0442.9649.53 / 23.72 49.53 / 23.72
Número de transações24290295295315
 371 / 41 373 / 40
Cota de transações lucrativas41.67%55.52%53.22%53.90%54.29%53.64 / 60.98 53.62 / 60

Links

  1. Análise comparativa de 10 estratégias de tendência
  2. Análise comparativa de 10 estratégias de fase de correção
  3. Quanto dura a tendência?

Programas utilizados no artigo:

#
 Nome
Tipo 
Descrição 
1 Trade.mqh Biblioteca de classe Classe de operações de negociação
2 Combination1.mq5 Expert Advisor EA combinando estratégias pelo método 1
3 Combination2.mq5 Expert Advisor EA combinando estratégias pelo método 2
4 Combination3.mq5 Expert Advisor EA combinando estratégias pelo método 3

Traduzido do russo pela MetaQuotes Ltd.
Artigo original: https://www.mql5.com/ru/articles/5022

Arquivos anexados |
MQL5.zip (180.6 KB)
Raios Elder (Bulls Power e Bears Power) 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').
Gráfico PairPlot baseado em CGraphic para analisar correlações entre arrays de dados (séries temporais) 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.
Reversão: o Santo Graal ou um equívoco perigoso? 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.
Escrita de indicadores de bolsa com controle de volume usando o indicador delta como exemplo 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.