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: 4058
Beiträge: 38479
Benutzer: 6.364
Aktive Benutzer: 244
Links: 80
Wir begrüßen unseren neuesten Benutzer: UZander
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor 3 Stunden
- UZander
vor 13 Stunden
- harryb
vor einem Tag
- Blade-13
vor einem Tag
- Dumbinatio...
vor 2 Tagen
- Börnie

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

Empfehlungen

Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt vor 3 Wochen
Mitglied
 
Registriert seit: Jun 2018
Beiträge: 42
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
Mit Zitat antworten
  #2 (permalink)  
Alt vor 3 Wochen
Mitglied
 
Registriert seit: Jun 2016
Ort: Österreich
Beiträge: 278
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---
Mit Zitat antworten
  #3 (permalink)  
Alt vor 2 Wochen
Mitglied
 
Registriert seit: Jun 2018
Beiträge: 42
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
Mit Zitat antworten
  #4 (permalink)  
Alt vor 2 Wochen
Mitglied
 
Registriert seit: Jun 2018
Beiträge: 42
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 
Mit Zitat antworten
Antwort

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:43 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.
-----------------------------------------------------------------------------------------------------------------------------