Zum Inhalt springen
View in the app

A better way to browse. Learn more.

#T/N/X/T

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

eSisGJBreakout

Geschrieben

Ich würde euch gerne ein recht einfaches Handelssystem vorstellen um euch auch mal zu zeigen dass eine EA nicht immer >1000 Zeilen haben muss um profitabel zu sein.

 

Das Wichtige hierbei ist etwas zu finden das immer wieder möglichst Konstant auftritt und nicht diese „seltenen“ großen Move zu erwischen.

Hierbei handelt es sich um ein Breakoutsystem dass sich wirklich jeden Tag wiederholt.

Beobachten wir den GBP/JPY sehen wir im TF240 dass der bei Markeröffnung von London eine Richtung bevorzugt und dies auch einhält.

Wir beobachten den Chart und sehen dass bei der Überschreitung der 8 uhr Kerze (ob high oder low) des 4uhr Kerze immer gut was zu holen ist.

GJBreakout.PNG

Schauen wir tiefer ins Detail so sehen wir dass dieser Move in den meisten Fällen zwischen der 8 und der vollendeten 12 Uhr Kerze (TF60) von statten geht.

Diesen wollen wir mitnehmen.

 

Zu beachten wäre jedoch dass ALLE Broker genau dieses Währungspaar ein min. von 7 PIPs an Spread belegt haben. Es gibt einen Grund warum man bei Alpari 2 besonders gut gehende Währungspaare keine Minutendaten downloaden kann. GBP/JPY ist eines von denen :-)

 

Da diese EA keine Indikatoren besitzt kann man eigentlich nur bei der Einstellung wählen ob es den Trend traden soll oder nicht.

 

Trenderklärung:

Wir wollen eigentlich den „großen“ morgendlichen Move mitnehmen. An manchen Tagen, besonders an Seitwärtsbewegungen, haben wir jedoch keinen großen Move und diese große erwartete Kerze bleibt aus.

Bei Trend=true stellen wir nun ein dass er statt beim Open der Stunde 13 zu schliessen er früher schliessen kann und zwar bei der unterschreitung des LOWs der vorherigen Kerze wenn wir long sind.

Bei Short entsprechend andersrum.

 

//Position schliessen bei trend=true

if ((long || short) && trend)

{

if (long && Close[0]

{

OrderSelect(ticket,SELECT_BY_TICKET);

OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet);

Print("Longexit order at : ",OrderClosePrice());

long=false;

}

if (short && Close[0]>High[1])

{

OrderSelect(ticket,SELECT_BY_TICKET);

OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet);

Print("Shortexit order at : ",OrderClosePrice());

short=false;

}

}

 

Bei trend=false schliesst er die Position bei Open von der 13Uhr Kerze.

 

Kein System funktioniert immer. Auch dieses hier wird irgendwann nicht mehr gültig sein.

Ab hier seid Ihr gefragt wie wir dieses System verbessern und profitabler machen können.

 

Eventuell eine bessere EXIT-Strategie?

 

ups... jetzt habe ich die eckdaten von diesem EA vergessen: GBP/JPY TF:60

 

eSisGJBreakout_V1.mq4

Featured Replies

Geschrieben

Also irgendwas stimmt mit dem Schließen der Position nicht, hab ich grad auf live festgestellt :swepimp:

 

Eintragen tut man zwar zB 15 Uhr 55, geschlossen wird die Position aber 16 Uhr 55.

 

Warum?

 

Meine Werte sind ja backtest-optimiert, also ist das nicht tragisch, weil es letztendlich doch die richtige Zeit ist, aber trotzdem...

 

Hier mal die betreffenden Codezeilen:

 

extern int	   Endzeit=12;
extern int	   EndzeitMinute=00;

extern string	GMTtext="GMT+/- Deutschland wäre GMT+1 -> GMT=1";
extern int	   GMT=1;

 

 

 ZeitAnfang=Anfangszeit-1+GMT;
  ZeitUebergang=Uebergangszeit-1+GMT;
  ZeitEnde=Endzeit-1+GMT;

 

 

//Position schliessen um Zeitende   --------------------------------------------------------------------
  if ((long || short) && TimeHour(TimeCurrent())>ZeitEnde && TimeMinute(TimeCurrent())>EndzeitMinute)

 

Wo ist der Fehler?

Es geht um die Endzeit. GMT-Berechnung der Endzeit-Stunde sollte richtig sein.

Kann es sein, dass beim schließen

 if ((long || short) && TimeHour(TimeCurrent())>ZeitEnde

statt dem > ein = rein müsste?

Mit dem > wartet er ja auf die nächste Zahl...

Geschrieben
Wo ist der Fehler?

Es geht um die Endzeit.

Wahhh ! Wer denkt sich solche Variablennamen aus ? Endzeit, Zeitende,... Kann Zeit enden, ja klar, wenn die Endzeit vorbei ist. :swepimp:

 

Kann es sein, dass beim schließen

 if ((long || short) && TimeHour(TimeCurrent())>ZeitEnde

statt dem > ein = rein müsste?

Mit dem > wartet er ja auf die nächste Zahl...

Genau, er wartet, dass die Stunde größer wird als ZeitEnde. Versuch mal >=.

Geschrieben

Die Stundenvariablennamen hat sich siscop ausgedacht, die Minutenvariablen ich, nach siscops Muster.

 

OK dann werde ich das mal verbessern und gleichzeitig die Variablennamen eindeutiger Benennen, ich hoffe das ist OK, siscop?

Geschrieben
OK dann werde ich das mal verbessern und gleichzeitig die Variablennamen eindeutiger Benennen, ich hoffe das ist OK, siscop?

Nee, lass das mal so wie es ist. Bei solchen kosmetischen Aktionen zerschießt man sich in der Regel irgendwas.

 

Ich bin ja selbst auch nicht besser :swepimp:. Ich nutze ja deswegen meist englische Variablennamen, weil die sich in Deutsch ähnlich gruselig anhören. Aber in Englisch merkt man das nicht so.

Geschrieben

Ich habe hier eine schöne MQL4 Möglichkeit gefunden zum Thema Verschiebung der Stunden.

 

Am besten man einigt sich auf eine Zeit die GMT 0:00 (Greenwich Mean Time (GMT) ist das ganze Jahr über gleich)

Und man gibt als zusätzlichen Parameter(GMT.Diff) einfach nur die Verschiebung der Stunde seines Brokers an.

 

extern int GMT.Diff = 1; // mein Broker
int StartHour = 7; //und diese Stunde GMT 0:00 bleibt für alle Benutzer gleich

int GMT(int hr, int diff) 
{
 int res = hr + diff;
 if (res < 0) res = 24 + res;
 if (res > 23) res = res - 24;
 
 return (res);
}

int start() {

if( Hour() == GMT(StartHour, GMT.Diff) )  Comment("Start");

}

Geschrieben

Ich muss mal was blödes fragen, bevor ich weiter in dem EA herumpfusche:

(Aus der V1.1 die ich 'weiterentwickelt' habe)

 

if (ZeitAnfang<=TimeHour(TimeCurrent()) && TimeHour(TimeCurrent())<ZeitUebergang && AnfangszeitMinute<=TimeMinute(TimeCurrent()) && TimeMinute(TimeCurrent())<UebergangszeitMinute)

  {
  if (High[0]>dHigh)
	 dHigh=High[0];
  if (Low[0]<dLow)
	 dLow=Low[0];
  }

 

Das ist ja der "Indikatorabschnitt".

 

In Siscops Version stand das genau so, nur ohne die Minuten-Einschränkungen.

 

Funktioniert das überhaupt so, mit den Minuten?

Wenn ich das so durchdenke:

"Wenn ZeitAnfang kleiner gleich aktuelle Stunde und aktuelle Stunde kleiner als Zeitübergang und ZeitAnfangMinute kleiner gleich aktuelle Minute und aktuelle Minute kleiner als Übergangsminute...und die Balken..."

 

Müsste stimmen, oder?

Irgendwie klingt das komisch alles. Kommt der mit den Minuten so zurecht?

Danke!

 

Wenn das stimmt, würde ich das in siscops V2 mit einbauen und die Zeitbezeichnungen etwas deutlicher benennen (Ja, Krümel, und wenn ich da Fehler mache behebe ich die, nur so lerne ich das :swepimp: )

Geschrieben
Funktioniert das überhaupt so, mit den Minuten?

Kommt der mit den Minuten so zurecht?

Sollte er. Wenn man bei Stunden, Minuten, Sekunden Copy & Paste macht beim Grundprinzip, geht das (meist) gut :wub: .

 

 

Krümel, und wenn ich da Fehler mache behebe ich die, nur so lerne ich das )

Hmm, die frage ist nur, ob Du die Fehler findest oder sie Dich ! :swepimp:

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

Account

Navigation

Suche

Suche

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.