Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools  
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 4 > Programmierung MQL4

Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4008
Beiträge: 38194
Benutzer: 6.319
Aktive Benutzer: 323
Links: 80
Wir begrüßen unseren neuesten Benutzer: Abdelaliii
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor einer Stunde
- Abdelaliii
vor 2 Tagen
- Cavalino
vor 4 Tagen
- Minz90
vor 5 Tagen
- Arudo
vor 5 Tagen
- Laotsele

Onlineuser
'Wer ist online' anzeigen Benutzer: 0
Gäste: 75
Gesamt: 75
Team: 0
Team:  
Benutzer:  
Freunde anzeigen

Empfehlungen

Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 07.05.18
Neues Mitglied
 
Registriert seit: May 2018
Beiträge: 2
elbonia befindet sich auf einem aufstrebenden Ast
Standard Berechneter Wert wird nicht als Einstiegskurs akzeptiert

Hallo, ich bin neu hier und nähere mich gerade der MQL-Programmierung mit zunächst simplen Beispielprogrammen - dachte ich zumindest... . Bei meinem Versuch, eine einfache Sell-Limit-Order zu platzieren, bin ich auf folgendes Problem gestoßen:
Zunächst ermittelt mein EA den Mittelwert aus Anfangs- und Schlusskurs der M5-Kerze zu einer bestimmten Zeit (hier zum Beispiel um 8 Uhr). Dieser Wert soll als Einstiegskurs der Sell-Limit-Order verwendet werden. Wenn ich mir die Variable achtuhr_mean ausgeben lasse, sieht sie auch nach einem ganz normalen double-Wert aus, genau wie achtuhr_open und achtuhr_close. Aber im OrderSend-Befehl führt achtuhr_mean immer zu einem Fehler 4107 ("invalid price"). Mit achtuhr_open oder achtuhr_close als Einstiegspreis lässt sich die Order problemlos platzieren.
Es muss irgendwie an der Division durch 2 liegen. Lasse ich "/2" weg, nehme also nur die Summe aus Einstiegs- und Schlusskurs, funktioniert die Order.

Habt Ihr eine Idee, was hier schiefgelaufen ist?
Vielen Dank schon mal im Voraus!


void OnInit()
{
datetime acht_Uhr=D'2018.05.07 08:00:00';
int shift=iBarShift("EURUSD",PERIOD_M5,acht_Uhr); // Index der Kerze um 8 Uhr
double achtuhr_open = iOpen("EURUSD",PERIOD_M5, shift); // Anfangskurs der Kerze um 8 Uhr
double achtuhr_close = iClose("EURUSD",PERIOD_M5, shift); // Schlusskurs der Kerze um 8 Uhr
double achtuhr_mean = (achtuhr_open + achtuhr_close)/2; // Durchschnitt

int pendingsell = OrderSend("EURUSD", OP_SELLLIMIT, 0.01, achtuhr_mean, 1, 0, 0, NULL, 0, 0, Green);
}
Mit Zitat antworten
  #2 (permalink)  
Alt 07.05.18
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.066
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

double achtuhr_mean = NormalizeDouble((achtuhr_open + achtuhr_close)/2, Digits); // Durchschnitt

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
Mit Zitat antworten
  #3 (permalink)  
Alt 07.05.18
Neues Mitglied
 
Registriert seit: May 2018
Beiträge: 2
elbonia befindet sich auf einem aufstrebenden Ast
Standard

Super, vielen Dank!
Das klappt schon mal.

Ich hatte mir schon gedacht, dass es evtl. mit der Genauigkeit zu tun hat, zu viele oder zu wenige Nachkommastellen. Um das auszuschließen, hatte ich für achtuhr_mean auch mal eine Zahl mit 10 Nachkommastellen eingegeben. Das lief problemlos...
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
einstieg, einstiegskurs, kurs, mql4, order öffnen, programmierung, programmierung metatrader, programmierung mql4


Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus




Alle Zeitangaben in WEZ +2. Es ist jetzt 12:16 Uhr.



Der Wavesnode - Spam Firewall
-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2018 vbdesigns.de
SEO by vBSEO 3.6.1
Copyright ©2009 - 2017 by Expert-Advisor.com - Das Metatrader Forum
MetaTrader bzw. MetaTrader 4 und MetaTrader 5 sind eingetragene Marken der MetaQuotes Software Corp.
-----------------------------------------------------------------------------------------------------------------------------