Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools

Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools (http://www.expert-advisor.com/forum/index.php)
-   Programmierung MQL4 (http://www.expert-advisor.com/forum/forumdisplay.php?f=220)
-   -   EA Marktspezifisch ein/ausschalten (http://www.expert-advisor.com/forum/showthread.php?t=4523)

trololotromberino 17.10.15 17:38

EA Marktspezifisch ein/ausschalten
 
Hi Leute,

ich sitze immer noch an meinem EA, aber modifiziere ihn ständig.
Jetzt ist mir etwas neues aufgefallen:
Wie kann ich einstellen, dass der EA nur zu bestimmten Zeiten an/aus geht?
Also beispielsweise beim DAX kann man den ja von 8.00 - 22.00 handeln. Das soll mein EA aber gar nicht. Er soll nur von 9.15 - 17.00 handeln.

Kann man das Coden? Ich bin da nämlich immer an die Wand gefahren :(

LG und vielen Dank :)

Trololotromberino

traderdoc 17.10.15 20:34

Zitat:

Zitat von trololotromberino (Beitrag 31348)
Hi Leute,

ich sitze immer noch an meinem EA, aber modifiziere ihn ständig.
Jetzt ist mir etwas neues aufgefallen:
Wie kann ich einstellen, dass der EA nur zu bestimmten Zeiten an/aus geht?
Also beispielsweise beim DAX kann man den ja von 8.00 - 22.00 handeln. Das soll mein EA aber gar nicht. Er soll nur von 9.15 - 17.00 handeln.

Kann man das Coden? Ich bin da nämlich immer an die Wand gefahren :(

LG und vielen Dank :)

Trololotromberino

//in den Eingaben
extern string Start = "09:15";
extern string Ende = "17:00";

//auf der Basis der Brokerzeit!!
if (TimeCurrent() >= StrToTime(TimeToStr(TimeCurrent(), TIME_DATE) + " " + Start) && TimeCurrent() <= StrToTime(TimeToStr(TimeCurrent(), TIME_DATE) + " " + Ende)) {

//Action!

}

traderdoc

trololotromberino 21.10.15 09:47

Ich habe das eingebaut, allerdings kriege ich einen Error:
Code:

2015.10.21 09:38:27.920        2015.08.31 22:09  Neuer Versuch Korrektur DE30,M15: Alert: Not Working!4051
Auch kriege ich jetzt vor allem:
Code:

2015.10.21 09:53:57.051        2015.08.31 23:58  Neuer Versuch Korrektur DE30,M15: Alert: Not Working! Error: 0
Ich habe die if klammer unter int start geschrieben...und danach den Rest des Programms darin eingeklammert...ist doch richtig, oder?
Oder sollte ich darin noch etwas eintragen (Außer innerhalb von "")?

LG

traderdoc 21.10.15 10:27

OK, dann soll es so sein, dass mein 1000. Post hier landet.

In die {....} kommt der Code, der durch die Handelszeitvorgaben durchlaufen werden soll. In der if-Abfrage wird nichts geändert.

Der Fehler 4051 bedeutet "Invalid function parameter value". D.h. bei der Übergabe von Funktionsparametern wurde eine ungültige Anzahl derselben festgestellt. Das hat mit der Zeitabfrage überhaupt nichts zu tun.
Den zweiten Fehler kann man leider nicht erkennen.

traderdoc

trololotromberino 25.10.15 09:16

Hey,

danke erstmal, dass Du mir deinen 1000 Post gewidmet hast. :)
Wie kann ich denn herausfinden, woran error 0.0 liegt?
Ich bekomme nämlich auch sowas hier:
Code:

2015.10.25 09:21:38.417        2015.08.17 21:00  Korbinian feat. Dormann Complete DE30,M15: 0.0
Denn mir ist das nicht nur in diesem Code passiert, sondern auch in anderen Codes.
Ich weiß nicht, ob die 0.0 für die Ordernummer oder für einen Fehler steht. :(

LG

traderdoc 25.10.15 09:43

Zitat:

Zitat von trololotromberino (Beitrag 31435)
Hey,

danke erstmal, dass Du mir deinen 1000 Post gewidmet hast. :)
Wie kann ich denn herausfinden, woran error 0.0 liegt?
Ich bekomme nämlich auch sowas hier:
Code:

2015.10.25 09:21:38.417        2015.08.17 21:00  Korbinian feat. Dormann Complete DE30,M15: 0.0
Denn mir ist das nicht nur in diesem Code passiert, sondern auch in anderen Codes.
Ich weiß nicht, ob die 0.0 für die Ordernummer oder für einen Fehler steht. :(
LG

Das kann ich Dir auch nicht sagen. Da müßte man wieder mal in den Code sehen. Aber eine Zahl 0.0 ist definitiv keine Fehlernummer.

traderdoc

trololotromberino 27.10.15 09:50

Liste der Anhänge anzeigen (Anzahl: 2)
Hi,

sorry, dass ich Dir nicht immer sofort antworte, ich bin gerade etwas busy.

Ich habe dir mal 2 meiner EA´s angehängt, an denen ich gerade arbeite. Bei beiden kriege ich den die Ausgabe 0.0, wobei ich nicht weiß, womit das zu tun hat.
Ich finde zumindest keine Funktion im QC, wo ich das reingeschrieben haben könnte.

Vielen Dank für deine Hilfe.

LG
TrololoTromberino

traderdoc 27.10.15 23:44

In beiden Programmen steht:

Print(MarketInfo(Symbol(), MODE_STOPLEVEL));

D.h. das STOPLEVEL besitzt den Wert 0.0.

Einfach löschen der Zeile in beiden Programmen.

traderdoc

trololotromberino 29.10.15 10:21

Zitat:

Zitat von traderdoc (Beitrag 31350)
//in den Eingaben
extern string Start = "09:15";
extern string Ende = "17:00";

//auf der Basis der Brokerzeit!!
if (TimeCurrent() >= StrToTime(TimeToStr(TimeCurrent(), TIME_DATE) + " " + Start) && TimeCurrent() <= StrToTime(TimeToStr(TimeCurrent(), TIME_DATE) + " " + Ende)) {

//Action!

}

traderdoc

WICHTIG AN ALLE LESER!
In die Anführungsstriche zwischen den +, also + " " +
darf NICHTS reingeschrieben werden.
Ich dachte am Anfang auch erst, dass man da so etwas wie "Handelsprogramm startet" oder so reinschreiben kann, allerdings funktioniert dann der Code nicht! Nur als Hinweis :)

LG

traderdoc 29.10.15 13:17

Jo, reingeschrieben darf zwischen die " " nichts, aber unbedingt ein!! Freizeichen muß zwischen beiden sein, sonst läuft es auch nicht.

traderdoc


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:07 Uhr.

Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum