|
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 |
|
|||
So, dann präge Dir jetzt endlich ein:
Division = / Multiplikation = * Und jetzt frage hier nie! wieder wegen Division bzw. Multiplikation. Wenn Du das o.g. nun immer noch nicht verstanden hast, rate ich Dir, gehe zur Nachhilfe. Evtl. bedarf das jedoch ärztlicher Hilfe. traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
* und / sind eigentlich klar. Nur scheint der MT4 damit nicht umgehn zu können. Mach ich das Ganze nicht so, wie im folgenden Code/Indikator, kommen "unlogische" Ergebnisse im MT4 raus. Nicht nur in diesem Indi, auch in Anderen und in EAs. Vermutlich ist er, bzw. seine Art zu rechnen, nicht gerade die Neueste... Nebenbei: Weiß Jemand was Neues über MQL 6 / MT 6 ?
Jedenfalls kommen hier nen paar schöne - ähm - nennen wir es Übungsaufgaben. Aufgabe: Der automatische Multi soll das Ergebnis der anderen Berechnungen so umrechnen, dass dieses an den Kurs-Verlauf angepasst und seinem Verhältnis zu diesem entsprechend korrekt im Chart angezeigt wird. Wie berechnet man den Auto-Multi korrekt? Brauch Jemand Mathe-Nachhilfe? Ich auf jeden Fall. Sollten andere Fehler ausser den Mathe-(un-)Logischen drin sein, dann sorry. Code:
//============================================================================================================= // M A s + M A s //============================================================================================================= double MAs_pl_MAs=MA_one+MA_two+MA_thr+MA_fou+MA_fiv+MA_six+MA_sev; //============================================================================================================= // ( M A s + M A s ) / D I V //============================================================================================================= // Wert links (zwischen -1 und 1)... if( MAs_pl_MAs > -1.0 && MAs_pl_MAs < 1.0 ){ // ...soll durch Wert geteilt werden, der ebenfalls zwischen -1 und 1 ist. if( Div > -1.0 && Div < 1.0 )MAplMA_Div = MAs_pl_MAs * Div ; // ...soll durch Wert geteilt werden, der nicht zwischen zwischen -1 und 1 ist. if( Div <= -1.0 || Div >= 1.0 )MAplMA_Div = MAs_pl_MAs / Div ; } // Wert links (nicht zwischen -1 und 1)... if( MAs_pl_MAs < -1.0 || MAs_pl_MAs > 1.0 ){ // ...soll durch Wert geteilt werden, der zwischen -1 und 1 ist. if( Div > -1.0 && Div < 1.0 )MAplMA_Div = MAs_pl_MAs * Div ; // ...soll durch Wert geteilt werden, der nicht zwischen -1 und 1 ist. if( Div <= -1.0 || Div >= 1.0 )MAplMA_Div = MAs_pl_MAs / Div ; } //============================================================================================================= // A U T O M U L T I //============================================================================================================= if(AutoMulti==true){ if( Div > -1.0 && Div < 1.0 )Multi = Div * MAcount; if( Div <= -1.0 || Div >= 1.0 )Multi = Div / MAcount; } //============================================================================================================= // B U F F E R Z U W E I S U N G //============================================================================================================= // Wert links, der zwischen -1 und 1 ist... if( MAplMA_Div > -1.0 && MAplMA_Div < 1.0 ){ // ...soll multipliziert werden mit Wert, der auch zwischen -1 und 1 ist. if( Multi > -1.0 && Multi < 1.0 )BUF_SevMAdVxAutoV_CHA[i] = MAplMA_Div / Multi ; // if( Multi <= -1.0 || Multi >= 1.0 )BUF_SevMAdVxAutoV_CHA[i] = MAplMA_Div * Multi ; } // if( MAplMA_Div <= -1.0 || MAplMA_Div >= 1.0 ){ // if( Multi > -1.0 && Multi < 1.0 )BUF_SevMAdVxAutoV_CHA[i] = MAplMA_Div / Multi ; // if( Multi <= -1.0 || Multi >= 1.0 )BUF_SevMAdVxAutoV_CHA[i] = MAplMA_Div * Multi ; } |
|
|||
Das mach ich halt der Vollständigkeit halber.
Ich versuch mal, es anders zu formulieren: Man hat bis zu 7 Werte. Die sollen zusammen addiert und durch einen einstellbaren Wert geteilt werden. Jetzt z.B. mal durch 3,5. Danach soll das Ergebnis so angepasst werden, dass es so aussieht, als wäre die Summe der 7 Werte auch durch 7 geteilt worden. Wie z.B. bei nem MA auf 7 Perioden, die Summe der 7 Kerzen wird aber nur durch 3,5 geteilt. Wie rechnet man das Ergebnis dann wieder so um, dass es im Chart so aussieht, als wäre die Summe der 7 Kerzen doch durch ihre Anzahl von 7 geteilt worden? Der (Un-)Sinn dahinter ist, dass man sozusagen einen nach eigenen Werten gewichteten MA (oder vielleicht Price) im Chart hat. Z.B. High, Close und Low zusammen rechnen, aber nur durch 2 teilen, um z.B. zu sehn, wie sich das Ding gegenüber dem Median Price oder gegenüber dem Mittelwert High+Close verhält. Weiß selber noch nicht so richtig, was das bringen soll, aber für die Mathe-Experten wärs doch bestimmt interessant. Dann könnte man bestimmte Bewegungen/Verhältnisse (raus)filtern oder verstärken oder wie auch immer. Siehe exponentielle oder smoothed MAs oder so. |
Lesezeichen |
Themen-Optionen | Thema durchsuchen |
Ansicht | |
|
|