|
Startseite | Registrieren | Hilfe | Benutzerliste | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
ist das ein iMAOnArray?
Situation:
Ich habe ein Unterfenster mit einem Indi z.B. Momentum. Nun ziehe ich einen Moving Average (Tendenz - Moving Average) auf das Unterfenster. Unter "Anwenden auf" habe ich die letzten beiden Punkte: 1. Previous Indicator Data 2. First Indicator Data Frage: Was ist das programmiertechnisch? iMAOnArray? Und was ist dann der Unterschied zwischen 1. und 2.? Der Shiftvalue? Ich bin davon ausgegangen, daß es sich tatsächlich um ein iMAOnArray handelt, und versuche gerade, den mit in einem Indikator unterzubringen. Bisher aber ohne Erfolg, also muß ich erst mal die Annahme überprüfen. Danke. AVT |
|
|||
weightsum Wert für SmoothedMAOnBuffer
So einfach mit iMAOnArray geht das nicht.
Ich habe #include <MovingAverages.mqh> genommen und je nachdem welcher SMA/EMA/SMMA gewünscht wird, die entsprechende xxMAOnBuffer verwendet. Für diese 3 ist das Ergebnis identisch. Fehlt noch der LWMA - der verlangt aber als Argument die weightsum. Wenn ich einen normalen (Custom Moving Avarage) auf den Chart ziehe, dann fragt er doch auch nicht als Eingabe danach, also ist das doch was, was intern aus den Benutzerangaben berechnet wird. Wie komme ich jetzt an diesen Wert AVT |
|
|||
völlig verwirrende Doks
Da geht aber einiges durcheinander bei den MT Doks und Hilfen.
1. interne MT4 Hilfe: gar kein Index 2. Include\MovingAverages.mqh: Code:
int LinearWeightedMAOnBuffer(const int rates_total, const int prev_calculated, const int begin, const int period, const double& price[], double& buffer[], int &weightsum) Code:
... case MODE_SMMA: SmoothedMAOnBuffer(rates_total, prev_calculated, begin2, sp, TSIBuffer, TSISigBuffer);//nix Code:
int LinearWeightedMAOnBuffer(const int rates_total, const int prev_calculated, const int begin, const int period, const double& price[], double& buffer[])//nix sagt nur: LinearWeightedMAOnBuffer() - fills out the output array buffer[] by values of a linear weighted average from the price[] array, aber arbeitet mit anderen OnBuffer Beispielen. Im Source-Code* vom afl_winner.mq5 habe ich dann folgendes gefunden: Code:
int w1; // global intern // === in OnCalculate LinearWeightedMAOnBuffer(rates_total, prev_calculated, 0, average, rsv, pak, w1); Ist mir zwar völlig unklar, was hier wie warum funktionieren kann (und eigentlich hasse ich es, Code zu übernehmen, den ich nicht verstehe), aber nun ist auch der identisch zum Vergleichsfenster (mit reingezogenem Moving Average). Puhhh, schwierige Geburt - !! AVT |
|
|||
Ja die Doku zu iMAOnArray() ist katastrophal
und ich glaube auch die Funktion ist fehlerhaft. Habe deshalb im Endeffekt alles zu Fuß programmiert. traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
Zitat:
Verstehe ich Dich da richtig, daß es besser ist, mir im Indikator selber ne Funktion zu schreiben, die diese Berechnung macht anstatt in #include zu benutzen? Danke Dir. AVT |
|
|||
Na ja, der iMAOnArray() macht doch nichts anderes als eben einen
MA über einen z.B. RSI legen, d.h. der RSI wird als Basis genommen und darauf und nicht wie gewöhnlich auf Kurse, wird der MA gelegt - fertig. traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
Lesezeichen |
Themen-Optionen | Thema durchsuchen |
Ansicht | |
|
|