Nicht-nacheilende Werkzeuge - Seite 46

 

Ich verstehe nicht, wo mein Fehler liegt

pi = 3.1415926535

Zyklus=4

Länge=9

Koeff = 3*pi

Phase = Länge-1

Len = Länge*Zykluse + Phase

für i=0 bis Len-1

wenn i<=Phase-1 dann

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

sonst

t = 1.0 + (i-Phase+1)*(2.0*Cyclee-1.0)/(Cyclee*Length-1.0)

endif

beta = Cos(pi*t)

g = 1,0/(Coeff*t+1)

wenn t <= 0,5 dann

g = 1

endif

alfa = g * beta

nächste

 
zilliq:
Ich verstehe nicht, wo mein Fehler liegt

pi = 3,1415926535

Zyklus=4

Länge=9

Koeff = 3*pi

Phase = Länge-1

Len = Länge*Zykluse + Phase

für i=0 bis Len-1

wenn i<=Phase-1 dann

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

sonst

t = 1.0 + (i-Phase+1)*(2.0*Cyclee-1.0)/(Cyclee*Length-1.0)

endif

beta = Cos(pi*t)

g = 1,0/(Coeff*t+1)

wenn t <= 0,5 dann

g = 1

endif

alfa = g * beta

nächste

zilliq

Sie müssen ein Array von alfas haben

 

Danke Mladen,

Aber was bedeutet eine "Reihe von Alfas"?

Etwas seltsam ich sehe nicht, wo ich den Preis enthalten

Vielen Dank für Ihre nächste Antwort

Zilliq

 
zilliq:
Danke Mladen,

Aber was bedeutet eine "Reihe von Alfas"?

Etwas neugierig Ich sehe nicht, wo ich den Preis enthalten

Danke für Ihre nächste Antwort

Zilliq

Zilliq

Werfen Sie einen Blick auf diesen Teil des Codes:

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);

Dort werden die Preise verwendet (jeder mit seinem eigenen Alpha - jeder Preis im Array der Preise wird mit seinem eigenen Alpha als Gewichtungskoeffizient versehen - das ist der Grund, warum Sie ein Array mit Alphas verschiedener Werte in einem Array speichern - um es auf den entsprechenden Preis anwenden zu können)

 

Immer so schnell mit der Antwort

Ok, ich denke, ich werde es verstehen, es wird nicht einfach sein, zu codieren, aber ich werde es versuchen.

Vielen Dank für alles und einen schönen Tag

Zilliq

 
zilliq:
Immer so schnell zu antworten

Ok, ich denke, ich werde verstehen, es wird nicht einfach sein, Code, aber ich werde versuchen

Vielen Dank für alles und einen schönen Tag

Zilliq

Viel Spaß beim Codieren

 

Nonlag ma Umschläge.

Aktualisierte Version hier veröffentlicht: https: //www.mql5.com/en/forum/general

Dateien:
 

Diese Version von NonLag MA histo mit Alarmen wurde ebenfalls aktualisiert, um die neue Art der NonLag ma Berechnung zu verwenden: nonlag_ma_histo_mtfalerts-1_nmc.mq4

Ursprünglich wurde sie hier veröffentlicht: https: //www.mql5.com/en/forum/general

 

Hallo Mladen,

Es scheint in Ordnung zu sein, aber können Sie bestätigen, dass am Ende des Codes

1/ Wir müssen alle alfa*Preise hinzufügen

und

2/ Wir teilen diese Summe durch die Summe aller alfa ?

mit i=0 bis Len-1

Vielen Dank und noch einen schönen Tag

Zilliq

mladen:
Viel Spaß beim Codieren
Dateien:
cac40_index.png  30 kb
 
zilliq:
Hallo Mladen,

Es scheint in Ordnung zu sein, aber können Sie bestätigen, dass am Ende des Codes

1/ Wir müssen alle alfa*Preise hinzufügen

und

2/ Wir teilen diese Summe durch die Summe aller alfa ?

mit i=0 bis Len-1

Vielen Dank und noch einen schönen Tag

Zilliq

Ja, wir teilen diese Summe durch die Summe der verwendeten Alphas (auf diese Weise haben die ältesten Alphas auch einen logischen Wert - eine Art Skalierung des Indikators).

NonLag ma ist einfach eine Art digitaler Filter mit Koeffizienten für jeden Preis an einer bestimmten Position (so wie SMA ein digitaler Filter ist, bei dem alle Koeffizienten auf 1 gesetzt sind). Wenn Sie sich das merken, dann ist es einfacher zu wissen, was Sie tun.

Grund der Beschwerde: