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: 4225
Beiträge: 39322
Benutzer: 6.523
Aktive Benutzer: 248
Links: 80
Wir begrüßen unseren neuesten Benutzer: Karacho
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor einer Stunde
- Karacho
vor einem Tag
- alansol
vor 2 Tagen
- chicken763
vor 2 Tagen
- w695277
vor 5 Tagen
- SilentBen

Onlineuser
'Wer ist online' anzeigen Benutzer: 2
Gäste: 71
Gesamt: 73
Team: 0
Team:  
Benutzer:  fxnoob, Stier
Freunde anzeigen

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 28.09.18
Mitglied
 
Registriert seit: Jun 2018
Beiträge: 48
Hippo25 befindet sich auf einem aufstrebenden Ast
Standard zeitsteuerug für EA

Hallo

Ich möchte das mein EA nach schließen einer Order durch Stopploss 30 Minuten keine neuen Order öffnet. Wie löse ich das am besten.

Mein erster gedanke war die Zeit Variabel zu gestallten

„ input int StartMinute = 30; „ Aber dann hänge ich auch schon.

Kann man aus der Orderhistory heraus lesen ob die Order per SL geschlossen wurde und wenn ja müsste ich ja auch noch überprüfen ob es ein trailing Stopp ist .

Überprüfen ob es ein trailing Stopp war werde ich wahrscheinlich über closePrice >Openprice machen. Aber komm ich überhaupt noch an diese Angaben ?

Hour() gibt die aktuelle Stunde aus.
Minute() die minuten . Ist das meine Lokale Zeit oder die Handelszeit?

Damit könnte ich dann über if abfrage das ja steuern
[PHP]
Int Minute
Int StartStunde

Gehen die 30 Minuten über die Stunde nehme ich Hour +1

StartStunde = Hour;
Vergleiche Minute <Minute

Wie packe ich dies am besten an. Gibt es da vielleicht schon fertige Lösungen.

Gruss Hippo
  #2 (permalink)  
Alt 28.09.18
Premium Mitglied
 
Registriert seit: Jun 2016
Ort: Österreich
Beiträge: 306
Leopold befindet sich auf einem aufstrebenden Ast
Standard

Hallo,

du müsstest mal mit OrderSelect() herausfinden welche Order im StopLoss geschlossen wurden. Wenn eine Order im SL geschlossen wurde, sollte in OrderComment() "[sl]" stehn.
Du musstest die zuletzt geschlossene Order mit diesen Kommentar finden und dann kannst du mit OrderCloseTime() die Zeit auslesen.
Zu dieser Zeit kannst du dann deine Zeit addieren.

---Leopold---
  #3 (permalink)  
Alt 30.09.18
Mitglied
 
Registriert seit: Jun 2018
Beiträge: 48
Hippo25 befindet sich auf einem aufstrebenden Ast
Standard

Hallo Leopold

Ich hab es jetzt so gelöst , das ich den SL einfach abspeichere. So kann
ich die daten später auch noch nutzen.
Übringens , Habt ihr schon gemerkt das es 8:103 Uhr nich gibt . Habe heute morgen mich mit diesem Problem rumgeschlagen.

gruss Hippo
  #4 (permalink)  
Alt 04.10.18
Mitglied
 
Registriert seit: Jun 2018
Beiträge: 48
Hippo25 befindet sich auf einem aufstrebenden Ast
Standard Zeit steuerung Fertig

Hallo
Ich habe meine Zeitsteuerung soweit fertig. Aber irgendwo klemmts.
Ich bekomme keine Fehlermeldung
im erstenteil habe ich die endzeit festgelegt und dann die Startzeit.

Im zweiten teil habe ich dann sobald der SLWert erreicht wird einen Kaufstopp festgelegt . das ganze dann für alle drei Order.
PHP-Code:
// Handelszeit Berechnen
if(CloseHour<= Hour())  { Zeitpruefen 0;} // Ab X( Momentan 18 Uhr)  keine neuen Orders 
if(OpenHour&&OpenMinute >= Hour()&& Minute())  { Zeitpruefen 0;} // vor X( Momentan 09:30 Uhr)  keine neuen Orders / 
 
if(OpenHour&&OpenMinute Hour()&& Minute() )  { Zeitpruefen 1;} // Nach X( Momentan 09:30 Uhr)  orderfreigabe / 


 // Handelsstopp Berechnen
  
if(SLBuy0Bid &&  HSL0==&&Buy0>)  { StopptimeH Hour();StopptimeM Minute();StopptimeX=Minute()+SLStoppTime;HSL0=1;// Aktueller zeit wird eingetragen und Endzeit wird berrechnet 
  
if(StopptimeX59 && StopptimeX900)  { StopptimeX StopptimeX-60HSLZ0=StopptimeX;} // wenn endZeit größer 59 Minuten  werden 60 Minuten abgezogen . 
  
}
 if(
HSLZ0== Minute() && HSL0==1)  { HSLZ0=900;  HSL0=0;} // Wenn endzeiterreicht  wird alles Zurückgesetzt ( 900 Deshalb das ei nicht aus versehen ermittelt wird 
 
 
   
if(SLBuy1Bid &&  HSL1==&&Buy1>)  { StopptimeH Hour();StopptimeM Minute();StopptimeX=Minute()+SLStoppTime;HSL1=1;
  if(
StopptimeX59 && StopptimeX900)  { StopptimeX StopptimeX-60HSLZ1=StopptimeX;}
  }
 if(
HSLZ1== Minute() && HSL1==1)  { HSLZ1=900 HSL1=0;}
 
 
   if(
SLBuy2Bid &&  HSL2==&&Buy2>)  { StopptimeH Hour();StopptimeM Minute();StopptimeX=Minute()+SLStoppTime;HSL2=1;
  if(
StopptimeX59 && StopptimeX900)  { StopptimeX StopptimeX-60HSLZ2=StopptimeX;}
  }
 if(
HSLZ2== Minute() && HSL2==1)  { HSLZ2=900HSL2=0;}
 
 if(
HSL0==||  HSL1==|| HSL1==1)  { Handelsstopp=1;}// er darf nicht kaufen
 
if(HSL0==&&  HSL1==&& HSL1==0)  { Handelsstopp=0;}// er darf  kaufen 
Thema geschlossen

Lesezeichen


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 18:31 Uhr.


Der Wavesnode - Spam Firewall
-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2019 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.
-----------------------------------------------------------------------------------------------------------------------------