Início Indicador técnico Postagem

Indicador Theil-Sen Grátis para MetaTrader 4: Simplificando sua Análise de Tendências

Anexo
30810.zip (8.56 KB, Baixar 0 vezes)

Se você está em busca de uma ferramenta que possa te ajudar a entender melhor a trajetória de uma linha desenhada a partir de um conjunto de pontos de dados, o Indicador Theil-Sen é uma excelente opção. Esse indicador basicamente faz a estimativa da linha de tendência, utilizando a regressão sobre uma série de valores, e calcula a inclinação dessa linha resultante.

A seleção do conjunto de dados pode ser feita a partir de médias móveis simples, médias móveis exponenciais, preços de fechamento, ou preços máximos/mínimos, que são coletados automaticamente do gráfico do MetaTrader. Você só precisa escolher um tipo de dado para coletar, e o melhor: ele suporta múltiplas moedas simultaneamente.

iTSlope(asymbol,timeframe,regperiod,adataset,rmp,rtc,slope,line_nickname,enable_text,ashift);
// Esta é a função principal para usar no seu EA. Apenas insira seus próprios parâmetros.
// Traders manuais podem usar isso ou utilizar o indicador diretamente.

indicador theil sen

Como de costume, esse indicador suporta múltiplas moedas ao mesmo tempo. Estou incluindo a ferramenta "BreakPoint" aqui, mas vale ressaltar que ela não é necessária para o funcionamento do indicador.


Veja como a linha de tendência se comporta em um mercado lateral:

mercado lateral


mercado lateral com tendência


Agora, veja como a linha de tendência aparece em um mercado em tendência:

tendência de mercado


Para aqueles que estão curiosos, aqui está um exemplo de um Expert Advisor para usar com o Indicador Theil-Sen:

//+------------------------------------------------------------------+
//| demo.mq4 |
//| Copyright 2020, Everybody Software Corp. |
//| https://anywhere.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, Everybody Software Corp."
#property link      "https://anywhere.com"
#property version   "1.00"
#property strict
#include <TheilSen_Indicator.mqh>
#include <BreakPoint.mqh>//<--- não requerido
//+------------------------------------------------------------------+
//| Função de inicialização do Expert |
//+------------------------------------------------------------------+
int OnInit()
  {
   return(INIT_SUCCEEDED);
  }
  
//+------------------------------------------------------------------+
//| Função de desinicialização do Expert |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  { 
  }
  
//+------------------------------------------------------------------+
//| Função Tick do Expert |
//+------------------------------------------------------------------+
void OnTick()
  {
   //--------- essas variáveis são criadas vazias, mas elas conterão dados após o uso do iTSlop() abaixo. ------//
   double slope=0;// a inclinação da linha de regressão.
   
   ENUM_TIMEFRAMES timeframe=0;// este é o timeframe para o símbolo. 0 significa timeframe do gráfico atual.
   
   int 
   regperiod=20,// o período de regressão. quantas barras você quer usar para a regressão.
   ashift=1;// o deslocamento da barra onde você deseja que a linha de regressão seja desenhada.
   
   string 
   asymbol="",// este é o símbolo/par de moedas que você deseja usar para os cálculos. "" significa símbolo atual.
   adataset="ema_close",// o tipo de dado que você deseja usar para a regressão.
   line_nickname="qualquer_coisa_aqui",
   rmp,// a "fase do mercado" calculada, que é uma descrição específica do mercado 
   rtc;// a "tendência do mercado" calculada, que é uma descrição geral do mercado.
   
   bool enable_text=true;// quando definido como true, os dados textuais são exibidos no gráfico atual.
     
   iTSlope(asymbol,timeframe,regperiod,adataset,rmp,rtc,slope,line_nickname,enable_text,ashift);// moeda única
   // if(rmp == "trending")BreakPoint("","",true,"rmp",rmp,"rtc",rtc,"asymbol",asymbol);
  }
//+------------------------------------------------------------------+

Agradeço especialmente ao whroeder e aos demais que ajudaram a esclarecer o conceito.

    Publicações relacionadas

    Comentário (0)