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
Nós também usamos radianos
Pode ser uma explicação: No código MT4 multiplicamos alfa com preço
Suponho que este seja o preço, i périods before, no ?
E assim precisamos acrescentar, por exemplo, com um len de 5
alfa*close[4]+alfa*close[3]+alfa*close[2]+alfa*close[1] and alfa*close
ou
alfa[4]*close[4]+alfa[3]*close[3]+alfa[2]*close[2]+alfa[1]*close[1]*close[1] e alfa*close ?
E é estranho, porque com um comprimento de 1 o len é igual a 4 (4*1+0) e assim o nonlagma não pode ser igual a fechar porque adicionamos o preço alfa* dos últimos 4 períodos
Obrigado por seus próximos comentários
Zilliq
É usar seu código, mas para entender melhor uso o código mais simples do NonlagMav3
pi duplo = 3,1415926535;
duplo Coeff = 3*pi;
int Fase = Length-1;
duplo Len = Comprimento*Ciclo + Fase;
se ( Barras_contadas > 0 ) limite=Barras_contadas_bars;
se ( barras_contadas < 0 ) retorno(0);
se ( barras_contadas ==0 ) limite=barras-len-1;
for(shift=limite;shift>=0;shift--)
{
Peso=0; Soma=0; t=0;
para (i=0;i<=Len-1;i++)
{
g = 1,0/(Coeff*t+1);
se (t <= 0,5 ) g = 1;
beta = MathCos(pi*t);
alfa = g * beta;
preço = iMA(NULL,0,1,0,MODE_SMA,Price,shift+i);
Soma += alfa*preço;
Peso += alfa;
se ( t < 1 ) t += 1,0/(Fasese-1);
caso contrário se ( t < Len-1 ) t += (2*Ciclo-1)/(Ciclo*Comprimento-1);
}
se (Peso > 0) MABuffer[shift] = Soma/Peso;Você deve usar a forma alfa[4]*close[4]+alfa[3]*close[3]+alfa[2]*close[2]+alfa[1]*close[1] e alfa*close (alfa é diferente para cada elemento)
Por que você não faz uma versão simples que exibe valores de alfas e os compara com valores de alfas no metatrader 4?
Obrigado, Mladen,
Vou tentar isto
Na verdade, na MT4, tenho o preço cfd do meu corretor (Activtrade), e na Prorealtime este é outro fluxo em dinheiro, então há uma grande diferença
Muito obrigado e Veja U mais tarde
Zilliq
Bem, eu tento muitas coisas diferentes, mas não funciona e definitivamente não sei porquê.
Meu código parece estar bem:
****************************
peso=0
soma=0
para i=0 a Len
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
sum=sum+alfa*close
peso=peso+alfa
próximo
nonlagma=sum/peso
***************************
E semelhante ao seu, mas como você vê no meu gráfico, o nonlagma está muito longe do close.
Você tem uma idéia do porquê, e você tem o código NonlagMa em linguagem fácil (muitas vezes mais fácil de transcriptar) ????
Muito obrigado Mladen, estou cansado...
Veja U
Zilliq
Bem, eu tento muitas coisas diferentes, mas não funciona e definitivamente não sei por que
Meu código parece estar bem:
****************************
peso=0
soma=0
para i=0 a Len
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
sum=sum+alfa*close
peso=peso+alfa
próximo
nonlagma=sum/peso
***************************
E semelhante ao seu, mas como você vê no meu gráfico, o nonlagma está muito longe do close.
Você tem uma idéia do porquê, e você tem o código NonlagMa em linguagem fácil (muitas vezes mais fácil de transcriptar) ????
Muito obrigado Mladen, estou cansado...
Veja U
Zilliq
Aqui está uma versão que calcula apenas o alfabeto : _nonlag_ma_alphas.mq4
Faça algo assim em protrader. Uma vez que sejam iguais, depois disso deve ser fácil fazer com que os não-latras também sejam iguais. O exemplo é para o período 50
Muito obrigado, Mladen,
Vou testar com este primeiro passo
Ver U
Zilliq
Bem,
Primeiro: boas notícias tenho o mesmo EUR/USD que você, pois será mais fácil de comparar
Mas eu não tenho sucesso na verdade
Seu código t ocalculate alfa é:
ciclo duplo = 4,0;
duplo Coeff = 3,0*Pi;
int Fase = NlmPeriod-1;
int len = NlmPeriod*4 + Fase;
if (ArraySize(alphas) != len) ArrayResize(alphas,len);
for (int k=0; k<len; k++)
{
se (k<=Fase-1)
duplo t = 1,0 * k/(Phase-1);
senão t = 1,0 + (k-Phase+1)*(2,0*Ciclo-1,0)/(Ciclo*NlmPeriod-1,0);
duplo beta = MathCos(Pi*t);
duplo g = 1,0/(Coeff*t+1); se (t <= 0,5 ) g = 1;
alphas[k] = g * beta;
}
for(int i=len-1; i>=0; i--) nlm = alphas;
Então, se eu entendi bem:
1/ Primeira letra: Calcula todos os alfas de 0 a len-1
Isto é:
alphas[k] = g * beta;
2/ Segundo passo, adiciona todos os alfas de 0 a len-1
Isto é
for(int i=len-1; i>=0; i--) nlm = alphas;
O problema é que eu tenho sempre o mesmo alfa no meu gráfico ? Como você pode ter um alfa diferente em cada vela como k, t e assim por diante são sempre os mesmos em cada vela ?, e não depende do fechamento ?
O código que eu tenho no Prorealtime parece ser o mesmo:
Pi=3.14159265358979323846264338327950288
Ciclo = 4,0
Coeff = 3.0*Pi
Fase = NlmPeriod-1
len = NlmPeriod*4 + Fase
alph=0
para k=0 a len-1
t=0
se (k<=Fase-1) então
t = 1,0 * k/(Phase-1)
senão
t = 1,0 + (k-Phase+1)*(2,0*Ciclo-1,0)/(Ciclo*NlmPeriod-1,0)
endif
beta = Cos(Pi*t)
g = 1.0/(Coeff*t+1)
se (t <= 0,5 ) então
g = 1
endif
alphas= g * beta
alph=alph+alphas
próximo
Bem,
Primeiro: boas notícias tenho o mesmo EUR/USD que você, pois será mais fácil de comparar
Mas eu não tenho sucesso na verdade
Seu código t ocalculate alfa é:
ciclo duplo = 4,0;
duplo Coeff = 3,0*Pi;
int Fase = NlmPeriod-1;
int len = NlmPeriod*4 + Fase;
if (ArraySize(alphas) != len) ArrayResize(alphas,len);
for (int k=0; k<len; k++)
{
se (k<=Fase-1)
duplo t = 1,0 * k/(Phase-1);
senão t = 1,0 + (k-Phase+1)*(2,0*Ciclo-1,0)/(Ciclo*NlmPeriod-1,0);
duplo beta = MathCos(Pi*t);
duplo g = 1,0/(Coeff*t+1); se (t <= 0,5 ) g = 1;
alphas[k] = g * beta;
}
for(int i=len-1; i>=0; i--) nlm = alphas;
Então, se eu entendi bem:
1/ Primeira letra: Calcula todos os alfas de 0 a len-1
Isto é:
alphas[k] = g * beta;
2/ Segundo passo, adiciona todos os alfas de 0 a len-1
Isto é
for(int i=len-1; i>=0; i--) nlm = alphas;
O problema é que eu tenho sempre o mesmo alfa no meu gráfico ? Como você pode ter um alfa diferente em cada vela como k, t e assim por diante são sempre os mesmos em cada vela ?, e não depende do fechamento ?
O código que eu tenho no Prorealtime parece ser o mesmo:
Pi=3.14159265358979323846264338327950288
Ciclo = 4,0
Coeff = 3.0*Pi
Fase = NlmPeriod-1
len = NlmPeriod*4 + Fase
alph=0
para k=0 a len-1
t=0
se (k<=Fase-1) então
t = 1,0 * k/(Phase-1)
senão
t = 1,0 + (k-Phase+1)*(2,0*Ciclo-1,0)/(Ciclo*NlmPeriod-1,0)
endif
beta = Cos(Pi*t)
g = 1.0/(Coeff*t+1)
se (t <= 0,5 ) então
g = 1
endif
alphas= g * beta
alph=alph+alphas
próximoZilliq
Como eu disse: há uma série de aplhas
O que eu exibi ali é um conjunto de alfas - desconsiderar o componente tempo. Esses são os valores de cada valor alfa da matriz de alfas, Esses são os pesos que são aplicados a cada elemento de preço que você usa para o cálculo.
Eu provavelmente não entendo o que você chama de matriz de alfas (entendo diferentes alfas em cada vela), desculpe
Vou tentar mais uma vez...
Eu provavelmente não entendo o que você chama de matriz de alfas (entendo diferentes alfas em cada vela), desculpe
Vou tentar mais uma vez...Zilliq
Coeficiente (alfa) para preço 0 == 1
Coeficiente (alfa) para preço 1 == 0,9nnnnn
e assim por diante (como é mostrado pelo indicador non lag ma alphas) e tudo o que é usado para os preços do len para obter o valor atual non lag ma
Ok, acho que entendi suas explicações (você é ótimo ) e fiz testes diferentes no MT4 com seu código
o alfa que como um valor diferente de 1 a len-1 pondera o preço e no final dividimos pela soma dos alfas
É por isso que o primeiro valor de alfas à direita é sempre 1 e é por isso que, mesmo que mudemos de valor, o aspecto dos alfas no gráfico é sempre o mesmo tipo de cobra)
Bem, saiba que preciso procurar como posso fazer isso na Prorealtime...