10$ para atualização do indicador - página 3

 
Svinozavr >>:
Алексей, а чем тебя предложенный мной расчет не устраивает? Тебе индикатор написать, чтоб пояснить? )))

você está mudando incorretamente. tome um período de 3.33333, por exemplo.

 
Posso fazer isso?

   for(int i=limit; i>=0; i--)
   {
      MA[i]=(iMA(NULL,0,MathCeil(DMA),0,0,PRICE_CLOSE,i)-iMA(NULL,0,MathFloor(DMA),0,0,PRICE_CLOSE,i))*(DMA-MathFloor(DMA))+ iMA(NULL,0,MathFloor(DMA),0,0,PRICE_CLOSE,i);
   }
 
avatara >>:

вы сдвигаете неверно. возьмите период 3.33333 например.


??? Eu não mudo absolutamente nada. E se você escrevê-lo na forma Inteira, ao invés da forma usual do FIR, ele funciona assim:

(0,33333*Fechar[3] + Fechar[2] + Fechar[1] + Fechar[0])/3,33333

 
Svinozavr >>:

??? Я вообще ничего не сдвигаю.

voltar. Não contamos apenas o valor 0 do tampão indicador, mas também o N-1 dos outros.
Proponho avaliar a exatidão da fórmula para outros índices

 
Svinozavr >>:
Алексей, а чем тебя предложенный мной расчет не устраивает? Тебе индикатор написать, чтоб пояснить? )))

Você não precisa de um indexador, a fórmula é suficiente. Sua fórmula é assimétrica nos preços, isso é o que me incomoda.

Por exemplo, por um período de 3,5 SMA pode ser escrito da seguinte forma:
a1*Fechar[3] + a2*Fechar[2] + a2*Fechar[1] + a2*Fechar[0], onde a2=1/3,5, a1=1-3/3,5;

A propósito, há algo errado com sua fórmula. Você provavelmente quis dizer a2=1/3,5, a1=0,5/3,5 ? E por que exatamente um1 é tão especial e não algum outro? Por que não sugerir o contrário, tornando o valor k em Close[0] menor?

Bem, você provavelmente sabe o que é uma função gama. É uma continuação natural de um fatorial para a região não-inteira. Esta continuação não viola nenhuma propriedade do fatorial dos inteiros e é simultaneamente "mais suave" em algum sentido (havia algo sobre convexidade, não me lembro, foi estudada há muito tempo).

Em princípio, o cara provavelmente queria que a menor mudança no período (não-inteiro) fosse de alguma forma refletida no muve. Mas isso pode ser feito de mil maneiras.

2 avatara: Bem, a mesma situação. Sua versão eu gosto mais, na verdade. Mas também há um obstáculo: a contribuição dos pontos extremos difere da contribuição dos demais. Esta não é uma propriedade de uma simples máquina onduladora.

Talvez eu esteja sendo categórico demais. É melhor quando você tem um exemplo na sua frente - digamos, em linguagem fácil. Você já pode ver o algoritmo ali.

 
Mathemat >>:
Лучше всего, когда видишь перед собой пример - скажем, на Easy Language.

Eu dei uma dica. /* como me parece - você precisa resolver o problema geométrico com um deslocamento. então, no índice 0, a fórmula de Peter está correta. E depois alterar os coeficientes marginais. */

------

É uma mini provocação de teste ;)

 
Que tal esta fórmula

Por exemplo, por um período de 3.3333333 SMA pode ser escrito como
iMA(...,3.3333333,...)=a1*iMa(...,3,...)+a2*iMa(...,4,...). onde a1+a2=1. a1=0,666666, a2=1-a1=0,333333333. E se colocarmos 0 e 1 na fórmula, é o que obtemos.
 
grell >>:
Как вам такая формула

Например, для периода 3.3333333 SMA можно записать так:
iMA(...,3.5,...)=a1*iMa(...,3,...)+a2*iMa(...,4,...). где а1+а2=1. а1=0.6666666, а2=1-а1=0.3333333. И если в формулу подставить 0 и 1, то то на то и выйдет.

+5)

 
Na minha opinião, uma solução muito elegante. grell, bravo!
Fórmula simples:
2/3*(C0+C1+C2)/3 + 1/3*(C0+C1+C2+C3)/4 = (2/9+1/12)*C0+(2/9+1/12)*C1+(2/9+1/12)*C2+1/12*C3= 11/36*(C0+C1+C2)+1/12*C3
Sim, os k's são assimétricos de qualquer forma. Mas é lindo!
 
Obrigado, a solução veio apenas dos casos individuais.