O indicador não funciona corretamente. Os níveis são refletidos corretamente apenas no histórico; quando novas barras aparecem, elas não são rastreadas.
Na figura: a linha vermelha, o momento em que o indicador foi anexado ao gráfico. Tudo está correto à esquerda dela e errado à direita.

O indicador não funciona corretamente. Os níveis são refletidos corretamente apenas no histórico; quando novas barras aparecem, elas não são rastreadas.
Na figura: a linha vermelha, o momento em que o indicador foi anexado ao gráfico. Tudo está correto à esquerda dela e errado à direita.
Desde a última atualização do MT5, esse indicador está quebrado. Ele apenas imprime pontos na alta e na baixa de cada vela.
O que há de errado?
Desde a última atualização do MT5, esse indicador está quebrado. Ele apenas imprime pontos na alta e na baixa de cada vela.
O que há de errado?
Sim, tenho o Build 1016. Baixei o indicador novamente e o recompilei com 0 erro(s) e 0 aviso(s). Ainda não funciona, apenas mostra os pontos na alta e na baixa.
Mas tudo bem, estou usando a retração Fibo ou desenhando níveis s/r por conta própria agora.
Sim, tenho o Build 1016. Baixei o indicador novamente e o recompilei com 0 erro(s) e 0 aviso(s). Ainda não funciona, apenas mostra os pontos na alta e na baixa.
Mas tudo bem, estou usando o Fibo Retracement ou desenhando níveis de s/r por conta própria agora.
Você pode carregar o gráfico?
Claro, aqui está ele:
Capturas de tela da plataforma de negociação MetaTrader
MetaQuotes Software Corp., MetaTrader 5, Demonstração
temp_file_screenshot_27398.png

Tente isso
//+------------------------------------------------------------------+ //|Suporte e resistência.mq5 //|Direitos autorais © 2005, Dmitry | //|Atualização em dezembro de 2014 //+------------------------------------------------------------------+ #property copyright "Copyright © 2006, MetaQuotes Software Corp." #property link "http://www.metaquotes.net/" Versão //---- #property version "1.01" //---- indicador na janela do gráfico #property indicator_chart_window //---- 2 buffers indicadores são usados #property indicator_buffers 2 //---- 2 gráficos são usados #property indicator_plots 2 //+----------------------------------------------+ //| Opções de indicadores de baixa //+----------------------------------------------+ //---- tipo de desenho como seta #property indicator_type1 DRAW_ARROW //---- Cor magenta #property indicator_color1 Magenta //---- Largura da linha #property indicator_width1 1 //---- Etiqueta de suporte #property indicator_label1 "Support" //+----------------------------------------------+ //| Opções de indicadores de alta //+----------------------------------------------+ //---- tipo de desenho como seta #property indicator_type2 DRAW_ARROW //---- Lime color #property indicator_color2 Lime //---- Largura da linha #property indicator_width2 1 //---- Etiqueta de resistência #property indicator_label2 "Resistance" //+----------------------------------------------+ //| Parâmetros de entrada do indicador //+----------------------------------------------+ //entrada int iPeriod=70; //período ATR //+----------------------------------------------+ //---- declaração de matrizes dinâmicas, usadas como buffers de indicadores double SellBuffer[]; double BuyBuffer[]; //--- int StartBars; int FRA_Handle; //+------------------------------------------------------------------+ //| Função de inicialização do indicador personalizado //+------------------------------------------------------------------+ void OnInit() { //---- inicialização de variáveis globais StartBars=6; //---- obter o identificador do indicador iFractals FRA_Handle=iFractals(NULL,0); if(FRA_Handle==INVALID_HANDLE)Print(" INVALID_HANDLE FRA"); //---- definir SellBuffer como buffer do indicador SetIndexBuffer(0,SellBuffer,INDICATOR_DATA); //---- definir indxex da barra inicial para plotar PlotIndexSetInteger(0,PLOT_DRAW_BEGIN,StartBars); //---- definir rótulo para suporte PlotIndexSetString(0,PLOT_LABEL,"Support"); //---- define o código do caractere de seta PlotIndexSetInteger(0,PLOT_ARROW,159); //---- definir a indexação como série temporal ArraySetAsSeries(SellBuffer,true); //---- definir BuyBuffer como um buffer de indicador SetIndexBuffer(1,BuyBuffer,INDICATOR_DATA); //---- definir o índice da barra inicial a ser plotada PlotIndexSetInteger(1,PLOT_DRAW_BEGIN,StartBars); //--- definir rótulo para resistência PlotIndexSetString(1,PLOT_LABEL,"Resistance"); //---- define o código do caractere de seta PlotIndexSetInteger(1,PLOT_ARROW,159); //---- definir a indexação como série temporal ArraySetAsSeries(BuyBuffer,true); //---- set precision IndicatorSetInteger(INDICATOR_DIGITS,_Digits); //---- nome curto do indicador string short_name="Support & Resistance"; IndicatorSetString(INDICATOR_SHORTNAME,short_name); //---- } //+------------------------------------------------------------------+ //| Função de iteração de indicador personalizado| //+------------------------------------------------------------------+ int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[] ) { //---- verificação de barras if(BarsCalculated(FRA_Handle)<rates_total || rates_total<StartBars) return(0); //---- declaração de variáveis locais int to_copy,limit,bar; double FRAUp[],FRALo[]; //---- cálculo das barras a serem copiadas //---- e índice inicial (limite) para o loop de recálculo de barras if(prev_calculated>rates_total || prev_calculated<=0)// verificação da primeira chamada { to_copy=rates_total; // barras para copiar limit=rates_total-StartBars-1; // índice inicial } else { to_copy=rates_total-prev_calculated+3; // barras para copiar limit=rates_total-prev_calculated+2; // índice inicial } //---- definir a indexação como série temporal ArraySetAsSeries(FRAUp,true); ArraySetAsSeries(FRALo,true); ArraySetAsSeries(high,true); ArraySetAsSeries(low,true); //---- copiar dados do indicador para matrizes if(CopyBuffer(FRA_Handle,0,0,to_copy,FRAUp)<=0) return(0); if(CopyBuffer(FRA_Handle,1,0,to_copy,FRALo)<=0) return(0); //---- loop principal for(bar=limit; bar>=0; bar--) { BuyBuffer[bar] = 0.0; SellBuffer[bar] = 0.0; if(FRAUp[bar] != DBL_MAX) BuyBuffer[bar] = high[bar]; else BuyBuffer[bar] = BuyBuffer[bar+1]; if(FRALo[bar] != DBL_MAX) SellBuffer[bar] = low[bar]; else SellBuffer[bar] = SellBuffer[bar+1]; } //---- return(rates_total); } //+------------------------------------------------------------------+
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Support and Resistance:
O indicador "Suporte e Resistência" mostra os níveis de suporte e resistência utilizando os indicadores Fractals.
Os cálculos dos níveis de suporte baseiam-se nos "Fractals de baixa (down)" e os cálculos dos níveis de resistência baseiam-se nos "Fractals de alta (up)" dos indicadores Fractals por Bill Williams.
Autor: Nikolay Kositsin