0 beğenilme 0 beğenilmeme
312 kez görüntülendi
selamlar bu kodu matrik içn çevirebilirmiyiz

#@version = 1
study("VIDYA",overlay=True)
src = input(defval=close, title="Source", type="source")
Period = input(9, "Period", "int")

mom = change(src,1)
upSum = sum(max(mom, 0), 9)
downSum = sum(-min(mom, 0), 9)
out = (upSum - downSum) / (upSum + downSum)
cmo = abs(out)
alpha = 2 / (Period + 1)
vidya = 0.0
vidya = nz(src * alpha * cmo) + nz(prev(vidya,1)) * (1 - alpha * cmo)
Grafik kategorisinde (47 puan) tarafından | 312 kez görüntülendi

1 cevap

0 beğenilme 0 beğenilmeme
Merhabalar,

Variable Index Dynamic Average - VIDYA

Matriks Indicator Builder Formülü:
pds:=input("Vidya Period",1,500,9);
cmopds:=input("CMO Period",1,500,9);
secim:=input("1=CMO 2=StandartSapma",1,2,1);
alpha:=2/(pds+1);
VIDYA1:=alpha*abs(CMO(c,cmopds))/100*c+(1-alpha*abs(CMO(c,cmopds))/100)*PREV;
VIDYA2:=alpha*STDEV(c,pds)*c+(1-alpha*STDEV(c,pds))*PREV;
VIDYA:=IF(secim=1,VIDYA1,VIDYA2);
VIDYA

BİLGİ:
Vidya aslında Matriks'te gömülü olan VAR yani değişken hreketli ortalamadır, Matriks gömülü versiyonda, VIDYA hesaplamasında kullanılan Chande Momentum Oscillator periodu sabitlenerek 9 alınmıştır.
Bu alternatifte ise CMO periodu hareketli ortalama periodu ile aynıdır.
Ayrıca varsayılan olarak seçilen 1 değeri CMO kullanılarak değişken ortalama hesaplar
Bu değer 2 olarak seçildiğinde Tushar Chande'ın 1992 yılındaki ilk makalesine göre Standart Sapma kullanılarak VIDYA hesaplanır.
Kıvanç Özbilgiç

 

Matriks Explorer Formülleri:

AL: Vidya Kırmızıdan Yeşile dönünce

pds:=9;
cmopds:=9;
secim:=1;
alpha:=2/(pds+1);
VIDYA1:=alpha*abs(CMO(c,cmopds))/100*c+(1-alpha*abs(CMO(c,cmopds))/100)*PREV;
VIDYA2:=alpha*STDEV(c,pds)*c+(1-alpha*STDEV(c,pds))*PREV;
VIDYA:=IF(secim=1,VIDYA1,VIDYA2);
cross(VIDYA,ref(VIDYA,-1))

SAT: Vidya Yeşilden Kırmızıya dönünce

pds:=9;
cmopds:=9;
secim:=1;
alpha:=2/(pds+1);
VIDYA1:=alpha*abs(CMO(c,cmopds))/100*c+(1-alpha*abs(CMO(c,cmopds))/100)*PREV;
VIDYA2:=alpha*STDEV(c,pds)*c+(1-alpha*STDEV(c,pds))*PREV;
VIDYA:=IF(secim=1,VIDYA1,VIDYA2);
cross(ref(VIDYA,-1),VIDYA)

AL: Fiyat VIDYAyı yukarı kestiğinde

pds:=9;
cmopds:=9;
secim:=1;
alpha:=2/(pds+1);
VIDYA1:=alpha*abs(CMO(c,cmopds))/100*c+(1-alpha*abs(CMO(c,cmopds))/100)*PREV;
VIDYA2:=alpha*STDEV(c,pds)*c+(1-alpha*STDEV(c,pds))*PREV;
VIDYA:=IF(secim=1,VIDYA1,VIDYA2);
cross(C,VIDYA)

SAT: Fiyat VIDYAyı aşağı kestiğinde

pds:=9;
cmopds:=9;
secim:=1;
alpha:=2/(pds+1);
VIDYA1:=alpha*abs(CMO(c,cmopds))/100*c+(1-alpha*abs(CMO(c,cmopds))/100)*PREV;
VIDYA2:=alpha*STDEV(c,pds)*c+(1-alpha*STDEV(c,pds))*PREV;
VIDYA:=IF(secim=1,VIDYA1,VIDYA2);
cross(VIDYA,C)

iyi çalışmalar
(32,448 puan) tarafından
VİDYA TARAMA
Hoş geldiniz, Matriks Destek Platformu sizlere sorularınızın hızlıca cevaplanması için bir ortam sağlar. Sorduğunuz ve cevapladığınız soruların ve yorumlarınızın aldığı oylar üzerinden puan kazanırsınız. Puan sistemine bağlı kampanyamızla ücretsiz kullanım avantajlarından faydalanabilirsiniz.



9,015 soru
8,970 cevap
4,995 yorum
24,085 kullanıcı