Ferramentas não deslizantes - página 46

 

Eu não entendo onde está meu erro

pi = 3,1415926535

Ciclo=4

Comprimento=9

Coeff = 3*pi

Fase = Comprimento-1

Len = Comprimento*Ciclo + Fase

para i=0 a Len-1

se i<=Fase-1 então

t = 1,0*i/(Phase-1)

senão

t = 1,0 + (i-Phase+1)*(2,0*Ciclo-1,0)/(Ciclo*Comprimento-1,0)

endif

beta = Cos(pi*t)

g = 1.0/(Coeff*t+1)

se t <= 0,5 então

g = 1

endif

alfa = g * beta

próximo

 
zilliq:
Eu não entendo onde está meu erro

pi = 3,1415926535

Ciclo=4

Comprimento=9

Coeff = 3*pi

Fase = Comprimento-1

Len = Comprimento*Ciclo + Fase

para i=0 a Len-1

se i<=Fase-1 então

t = 1,0*i/(Phase-1)

senão

t = 1,0 + (i-Phase+1)*(2,0*Ciclo-1,0)/(Ciclo*Comprimento-1,0)

endif

beta = Cos(pi*t)

g = 1.0/(Coeff*t+1)

se t <= 0,5 então

g = 1

endif

alfa = g * beta

próximo

zilliq

Você deve ter um conjunto de alfas

 

Obrigado, Mladen,

Mas o que significa um "conjunto de alfas"?

Algo curioso que eu não vejo onde eu incluo o preço

Obrigado por sua próxima resposta

Zilliq

 
zilliq:
Obrigado, Mladen,

Mas o que significa um "conjunto de alfas"?

Algo curioso que eu não vejo onde eu incluo o preço

Obrigado por sua próxima resposta

Zilliq

Zilliq

Dê uma olhada nesta parte do código :

double sum = 0, sumw = 0;

for (k=0; k =0; k++) { sum += nlmalphas[k]*nlmprices[r-k]; sumw += nlmalphas[k]; }

if (sumw!=0)

return(sum/sumw);

else return(price);

É aí que os preços são utilizados (cada um com seu próprio alhpa - cada preço na matriz len é aplicado seu próprio alfa como coeficiente de ponderação - é por isso que você está armazenando uma matriz de valores diferentes alfas em uma matriz - para poder aplicá-la ao preço correspondente)

 

Sempre tão rápido para responder

Ok, eu acho que vou entender, não será fácil codificar, mas vou tentar

Obrigado a todos e tenha um bom dia

Zilliq

 
zilliq:
Sempre tão rápido para responder

Ok, eu acho que vou entender, não será fácil codificar, mas vou tentar

Obrigado a todos e tenha um bom dia

Zilliq

Feliz codificação

 

Envelopes de ma sem folga.

Versão atualizada postada aqui : https://www.mql5.com/en/forum/general

Arquivos anexados:
 

Esta versão do NonLag MA histo com alertas atualizados também para usar a nova forma de cálculo NonLag ma : nonlag_ma_histo_mtfalerts-1_nmc.mq4

Originalmente foi publicado aqui : https://www.mql5.com/en/forum/general

Arquivos anexados:
 

Olá, Mladen,

Parece estar tudo bem, mas você pode confirmar que no final do código

1/ Precisamos adicionar todos os preços alfa*.

e

2/ Dividimos esta soma pela soma de todos os alfa ?

com i=0 a Len-1

Muito obrigado e tenha um bom dia

Zilliq

mladen:
Feliz codificação
Arquivos anexados:
cac40_index.png  30 kb
 
zilliq:
Olá, Mladen,

Parece estar tudo bem, mas você pode confirmar que no final do código

1/ Precisamos adicionar todos os preços alfa*.

e

2/ Dividimos esta soma pela soma de todos os alfa ?

com i=0 a Len-1

Muito obrigado e tenha um bom dia

Zilliq

Sim, dividimos essa soma pela soma dos alfas usados (dessa forma os mais antigos também têm valores lógicos - uma espécie de escala no indicador).

NonLag ma é simplesmente uma espécie de filtro digital com coeficientes para cada preço em uma determinada posição (como o SMA é um filtro digital com todos os coeficientes definidos para 1). Se você se lembra disso, então é mais fácil saber o que está fazendo

Razão: