|
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
Anzahl der Stellen eines Moving Average bei 5-stelligem Broker
Hi,
mein Broker ist 5-stellig und möchte mit einem Moving Average arbeiten. Ich habe das Problem, dass in FOREX (zB EUR/USD) Code:
double EMA15P10; EMA15P10=iMA(NULL,15,10,0,1,0,0); Gibt es einen Weg, das Ergebnis der iMA() 5-stellig ausgeben zu lassen? mit Code:
double EMA15P10; string EMA15P10GENAU; EMA15P10=iMA(NULL,15,10,0,1,0,0); EMA15P10GENAU=DoubleToStr(EMA15P10,5); Code:
if (EMA15P10>EMA15P16) {} Hat jemand eine Idee? Warum werden die iMA() eigentlich nur 4-stellig ausgegeben? Bid und Ask werden übrigens auch 4-stellig ausgegeben, obwohl ich 5-stellig kaufe / verkaufe - dies ist auch bei den Orders ersichtlich.
__________________
MQL4-Interessiert... und noch gaaaanz am Anfang Geändert von Angel (04.01.19 um 18:04 Uhr) |
|
|||
Das kann ich nicht ganz nachvollziehen, warum bei Dir nur 4 Stellen nach dem Komma angegeben werden.
In meinem Bild siehst Du links das Datenfenster, wo alle Kurswerte und auch der MA 5-stellig angegeben werden. Im rechten Fenster sieht man die direkte Alert()-Ausgabe der ermittelten MA-Werte auf Kerze 0 (aktuelle Kerze). Man kann sich die Werte aber auch über NormalizeDouble(Wert, Digits) normiert als double-Zahl auf die Anzahl Kiommastellen der Werte der Handelspaare, mit Alert() anzeigen lassen und damit dann auch rechnen. Das gilt ebenso für die Kurswerte Ask und Bid. traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
Danke für die rasche Antwort.
Im Datenfenster sehe ich auch alles 5-stellig... aber ich brauche die Werte ja im Programm. Ich lasse mir zur Kontrolle gerne die Werte mit Comment() im Chart ausgeben. Comment() aktualisiert sich dann ständig im Rahmen der OnTick-Funktion. Und dort ist alles 4-stellig, auch Ask und Bid. Mit Code:
EMA15P10GENAU=NormalizeDouble(EMA15P10,5) Comment(EMA15P10,5);
__________________
MQL4-Interessiert... und noch gaaaanz am Anfang |
|
|||
Zitat:
Find vielleicht erst mal raus, warum Dein EMA nur 4 digits hat. |
|
|||
Zitat:
double value = iMA(NULL,15,10,0,1,0,0); Comment(NormalizeDouble(value, Digits)); wirst auch Du eine 5-Stelligkeit sehen. Würde man das NormalizeDouble() weglassen, würden sogar noch viel mehr Stellen angezeigt werden. traderdoc PS: @MA-EA - wieder ein super Kommentar!!
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
Danke! Erst recht zu später Stunde... Jetzt, wo Wochenende ist und kein Tick mehr die OnTick-Funktion antreibt, musste ich das Testprogramm in die OnInit-Funktion verschieben. Dort wird es 1 x ausgeführt. Dann versuchte ich es mit dem Strategietester. Ergebnis: Im Strategietester funktioniert es in der OnTick-Funktion...
So.. nun zu dem Programm: Code:
double Test,ND,ND1; string DTS; Test = iMA(NULL,15,10,0,1,0,0); ND = NormalizeDouble(Test,5); ND1= NormalizeDouble(iMA(NULL,15,10,0,1,0,0),5); DTS = DoubleToString(Test,5); Comment(" Test = ",Test," ND = ",ND," ND1 = ",ND1," DTS = ",DTS); Es klappt! Lange Rede, kurzer Sinn: Hier, wo ich mein ursprüngliches Programm auseinanderpflückte, bis fast in den Wahnsinn grübelte, einen neuen EA mit diesem Codeschnipsel schrieb.... funktioniert es!!! Obwohl es der ursprüngliche Code ist ! Ich frage mich echt, wo da immer der Fehler liegt... im Gegensatz zu dem ursprünglichen Programm, das die Frage verursachte, habe ich augenscheinlich nichts verändert... Vielleicht der MQL4-Klabautermann... Danke, traderdoc !!!
__________________
MQL4-Interessiert... und noch gaaaanz am Anfang |
|
|||
Müsste ein EMA nicht die Punkte genauso anzeigen wie Ask oder Bid oder was auch immer?
|
|
|||
Ok - Heureka !!!
Nach ewigem nervigem und genervten Suchen , Ausprobieren und Festbeißen am Problem fand ich nun den Fehler: Seltsamerweise wird 5-stellig nach Einfügen von PHP-Code:
Das war´s schon. Wahnsinn...
__________________
MQL4-Interessiert... und noch gaaaanz am Anfang |
Lesezeichen |
|
|