Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Bom dia a todos.
Já vi muitas versões deste indicador e velas vermelhas que nunca apareço, poderia corrigir o erro ????.
Muito obrigado.
#Janela_do_indicador_de_propriedade
#property indicator_buffers 2
#indicador de propriedade_color1 LimeGreen
#indicador de propriedade_color2 Vermelho
//---- buffers indicadores
duplo ind_buffer1[];
duplo ind_buffer2[];
duplo ind_buffer3[];
//----
duplo CB = 0, valorh1 = 0, valuel = 0, valorh = 0, valor = 0, preço = 0, hi = 1, lo = 1;
resh duplo = 0, resl = 0, deltah = 0, deltah = 0, deltal = 0;
int CurrentBar=0;
//+------------------------------------------------------------------+
//| Função de inicialização do indicador personalizado |
//+------------------------------------------------------------------+
int init()
{
//---- 1 buffer adicional utilizado para a contagem.
IndicatorBuffers(3);
//---- definições de desenho
SetIndexStyle(0, DRAW_HISTOGRAM, STYLE_SOLID, 2);
SetIndexStyle(1, DRAW_HISTOGRAM, STYLE_SOLID, 2);
IndicatorDigits(MarketInfo(Symbol(), MODE_DIGITS) + 1);
SetIndexDrawBegin(0, 34);
SetIndexDrawBegin(1, 34);
//---- 3 mapeamento de buffers indicadores
if(!SetIndexBuffer(0, ind_buffer1) &&
SetIndexBuffer(1, ind_buffer2) &&
SetIndexBuffer(2, ind_buffer3))
Imprimir("não pode definir buffers indicadores!");
//---- nome para DataWindow e subwindow do indicador
IndicatorShortName("DeltaForce");
SetIndexLabel(0, "DF1");
SetIndexLabel(1, "DF2");
//---- inicialização feita
retorno(0);
}
//+------------------------------------------------------------------+
//| Delta Force |
//+------------------------------------------------------------------+
int start()
{
for(CB = 0 ; CB <= Barras ; CB++)
{
Barra atual = Barras - CB;
if(Fechar[Barra de Corrente] > Fechar[Barra de Corrente+1])
{
resl = 0;
if(resh == 0)
deltah = 0;
deltah = deltah + (Fechar[Barra atual] - Fechar[Barra atual+1]);
// valorh = Alto[Barra de Corrente];
resh= 1;
}
if(resh == 0)
deltah = 0;
ind_buffer1[CurrentBar] = deltah;
if(Fechar[Barra de Corrente] < Fechar[Barra de Corrente+1] )
{
resh = 0;
if(resl == 0)
deltal = 0;
deltal = deltal + (Fechar[Barra atual+1] - Fechar[Barra atual]);
//valuel = Baixo[Barra de Corrente];
resl= 1;
}
if(resl == 0 )
deltal=0;
ind_buffer2[CurrentBar] = deltal;
}
//---- feito
retorno(0);
}
//+------------------------------------------------------------------+
Bom dia a todos.
Já vi muitas versões deste indicador e velas vermelhas que nunca apareço, poderia corrigir o erro ????.
Muito obrigado.
#Janela_do_indicador_de_propriedade
#property indicator_buffers 2
#indicador de propriedade_color1 LimeGreen
#indicador de propriedade_color2 Vermelho
//---- buffers indicadores
duplo ind_buffer1[];
duplo ind_buffer2[];
duplo ind_buffer3[];
//----
duplo CB = 0, valorh1 = 0, valuel = 0, valorh = 0, valor = 0, preço = 0, hi = 1, lo = 1;
resh duplo = 0, resl = 0, deltah = 0, deltah = 0, deltal = 0;
int CurrentBar=0;
//+------------------------------------------------------------------+
//| Função de inicialização do indicador personalizado |
//+------------------------------------------------------------------+
int init()
{
//---- 1 buffer adicional utilizado para a contagem.
IndicatorBuffers(3);
//---- definições de desenho
SetIndexStyle(0, DRAW_HISTOGRAM, STYLE_SOLID, 2);
SetIndexStyle(1, DRAW_HISTOGRAM, STYLE_SOLID, 2);
IndicatorDigits(MarketInfo(Symbol(), MODE_DIGITS) + 1);
SetIndexDrawBegin(0, 34);
SetIndexDrawBegin(1, 34);
//---- 3 mapeamento de buffers indicadores
if(!SetIndexBuffer(0, ind_buffer1) &&
SetIndexBuffer(1, ind_buffer2) &&
SetIndexBuffer(2, ind_buffer3))
Imprimir("não pode definir buffers indicadores!");
//---- nome para DataWindow e subwindow do indicador
IndicatorShortName("DeltaForce");
SetIndexLabel(0, "DF1");
SetIndexLabel(1, "DF2");
//---- inicialização feita
retorno(0);
}
//+------------------------------------------------------------------+
//| Delta Force |
//+------------------------------------------------------------------+
int start()
{
for(CB = 0 ; CB <= Barras ; CB++)
{
Barra atual = Barras - CB;
if(Fechar[Barra de Corrente] > Fechar[Barra de Corrente+1])
{
resl = 0;
if(resh == 0)
deltah = 0;
deltah = deltah + (Fechar[Barra de corrente] - Fechar[Barra de corrente+1]);
// valorh = Alto[Barra de Corrente];
resh= 1;
}
if(resh == 0)
deltah = 0;
ind_buffer1[CurrentBar] = deltah;
if(Fechar[Barra de Corrente] < Fechar[Barra de Corrente+1] )
{
resh = 0;
if(resl == 0)
deltal = 0;
deltal = deltal + (Fechar[Barra atual+1] - Fechar[Barra atual]);
//valuel = Baixo[Barra de Corrente];
resl= 1;
}
if(resl == 0 )
deltal=0;
ind_buffer2[CurrentBar] = deltal;
}
//---- feito
retorno(0);
}
//+------------------------------------------------------------------+Experimente agora : _test.mq4
Stanwell,
Um par de fotos mostrando tudo o que ajudaria.
Grande SejaOi Big Be,
Bem visto, amanhã vou postar alguns gráficos.
cheers,
Stan
Aqui está o gráfico AUD que marquei manualmente. As caixas vermelhas são as barras sobrepostas. À esquerda, há um quadrado que mostra apenas três barras dentro dele, portanto, não se encaixa na definição. Entretanto, se esta perna for significativa, digamos maior que 6 X ATR, eu as contaria também como um balanço (apenas difícil de trocar com apenas três barras), mas achei que esta exigência complicaria a codificação para que possamos deixá-la de fora por enquanto.
thx.
Stan
Olá Mladen e Mrtools !
Preciso novamente de sua ajuda, você pode adicionar um alerta visual/acústico a este indicador, por favor ?
Obrigado de antemão,saúde!
MLADEN, bom dia.
Muito obrigado, tentaram seu _teste e a direita aparece.
Qualquer ajuda que eu tenha aqui, embora seu domínio seja muito maior que o meu, embora em ProRealTime / VISUALCHART sim eu possa ajudar mais.
Com os melhores cumprimentos.
Hi,
tenho um indicador e quero limitar o cálculo das barras.
O código original era:
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(Bars-counted_bars,Bars-1);[/CODE]
i changed it with this:
[CODE]int start()
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(NBars-counted_bars,NBars-1);Está correto? O indicador parece funcionar bem, mas tenho dúvidas se realmente limitei o cálculo das barras.
Hi,
tenho um indicador e quero limitar o cálculo das barras.
O código original era:
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(Bars-counted_bars,Bars-1);[/CODE]
i changed it with this:
[CODE]int start()
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(NBars-counted_bars,NBars-1);thefxpros
Não. Faça-o assim :
int limit = MathMin(MathMin(Bars-counted_bars,Bars-1),NBars);
Mas nesse caso você sempre tem que ter certeza de que NBars é sempre > 0
Oi mladen
se você puder me ajudar, acrescente os eixos X e Y, então eu posso colocá-lo no corner,
e pode ajustar o tamanho da fonte, desculpe pelo meu inglês.
!X2014-PIPSv2
de muito.
Oi mladen
se você puder me ajudar, acrescente os eixos X e Y, então eu posso colocá-lo no corner,
e pode ajustar o tamanho da fonte, desculpe pelo meu inglês.
!X2014-PIPSv2
de muito.blueface
Você já as tem: variáveis posX e posY no código