Ist die Cauchy-Differenz ein Vorläufer für eine Umkehrung und/oder Korrektur? - Seite 3
![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Ich füge den gewünschten Indikator bei.
Es basiert auf dem Custom Moving Average aus dem Ordner mit Beispielen von Indikatoren.
SMA-Berechnungsfunktion ohne Änderungen.
Die GMA wird in einer separaten Funktion berechnet.
Am Ende berechnen wir ihre Differenz.
Ich füge den gewünschten Indikator bei.
Es basiert auf dem Custom Moving Average aus dem Ordner mit Beispielen von Indikatoren.
SMA-Berechnungsfunktion ohne Änderungen.
Die GMA wird in einer separaten Funktion berechnet.
Am Ende berechnen wir ihre Differenz.
Ich füge den gewünschten Indikator bei.
Er basiert auf dem Custom Moving Average aus dem Ordner mit den Indikatorbeispielen.
Die SMA-Berechnungsfunktion wurde nicht geändert.
Der GMA wird in einer separaten Funktion berechnet.
Am Ende berechnen wir ihre Differenz.
Ich danke Ihnen! Aus der obigen Grafik können Sie ersehen, dass der Indikator seine Funktion erfüllt. Oder ist es nicht so? Ich muss noch viel daran arbeiten, um es besser zu verstehen.
Frage: Welcher Zeitraum wird verwendet?
Man kann nichts sehen, außer dem, was man ohne Indikatoren sehen kann.
M1-Zeitraum. Es steht in der linken Ecke).
Ich sehe nichts, außer dem, was man ohne Indikatoren sehen kann.
Ich danke Ihnen! Anhand des obigen Diagramms können Sie sehen, dass der Indikator seine Funktion erfüllt. Oder doch?
Übrigens, überprüfen Sie bitte, ob der GMA richtig zählt?
void CalculateGeometricalMA(int rates_total,int prev_calculated,int begin,const double &price[])
{
int i,limit;
//--- first calculation or number of bars was changed
double powr=1/(double)InpMAPeriod;
if(prev_calculated==0)// first calculation
{
limit=InpMAPeriod+begin;
//--- set empty value for first limit bars
for(i=0;i<limit-1;i++) gma[i]=1.0;
//--- calculate first visible value
double firstValue=1;
for(i=begin;i<limit;i++)
firstValue*=price[i];
firstValue=MathPow(firstValue, powr);
gma[limit-1]=firstValue;
}
else limit=prev_calculated-1;
//--- main loop
for(i=limit;i<rates_total && !IsStopped();i++){
gma[i]=gma[i-1] * (MathPow(price[i], powr) / MathPow(price[i-InpMAPeriod], powr));
}
//---
}
Man kann nichts sehen, außer dem, was man ohne Indikatoren sehen kann.
M1-Zeitraum. Es steht in der linken Ecke).
Weil Sie das nicht sehen wollen. Ich sehe, dass der Indikator eindeutig einen Rückgang vorausgesagt hat, und zwar sogar früher (nach oben) als der Kurs tatsächlich gesunken ist.
Ist es das?
Ich habe es mir sogar noch einmal angesehen.
Zy Ein Derivat von MA hätte dasselbe Ergebnis gebracht. Auch die Richtung wurde noch vorhergesagt).
Der Indikator zählt, was in der Formel angegeben ist. Die Interpretation der Ergebnisse ist jedoch eine weitaus schwierigere Aufgabe.
Übrigens, überprüfen Sie bitte, ob die GMA korrekt ist?
void CalculateGeometricalMA(int rates_total,int prev_calculated,int begin,const double &price[])
{
int i,limit;
//--- first calculation or number of bars was changed
double powr=1/(double)InpMAPeriod;
if(prev_calculated==0)// first calculation
{
limit=InpMAPeriod+begin;
//--- set empty value for first limit bars
for(i=0;i<limit-1;i++) gma[i]=1.0;
//--- calculate first visible value
double firstValue=1;
for(i=begin;i<limit;i++)
firstValue*=price[i];
firstValue=MathPow(firstValue, powr);
gma[limit-1]=firstValue;
}
else limit=prev_calculated-1;
//--- main loop
for(i=limit;i<rates_total && !IsStopped();i++){
gma[i]=gma[i-1] * (MathPow(price[i], powr) / MathPow(price[i-InpMAPeriod], powr));
}
//---
}