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: 4973
Beiträge: 43248
Benutzer: 7.220
Aktive Benutzer: 81
Links: 84
Wir begrüßen unseren neuesten Benutzer: JosephTK
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor 9 Stunden
- JosephTK
vor 2 Tagen
- Hopfen&Mal...
vor 3 Tagen
- frankmicha...
vor einer Woche
- DFeck
vor einer Woche
- bb1107

Onlineuser
'Wer ist online' anzeigen Benutzer: 1
Gäste: 445
Gesamt: 446
Team: 0
Team:  
Benutzer:  murkel
Freunde anzeigen

Empfehlungen

Like Tree1Likes
Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #11 (permalink)  
Alt 02.08.17
Mitglied
 
Registriert seit: Feb 2016
Beiträge: 105
Lena befindet sich auf einem aufstrebenden Ast
Standard

Noch eine kurze andere Frage.

Kann ich eine Orde auch nach einem Kommentar auswählen?

Code:
void Func_SELL_BREAKEVEN () {
   Stop_Loss   = NormalizeDouble(R12, Digits);                                                                 //Neuer Wert für SL wird auf Tageshoch gesetzt
   bool result;
   for(int x=OrdersTotal()-1;x>=0;x--) {                                                                       //Schleife Anzahl der Orders
      if(OrderSelect(x,SELECT_BY_POS,MODE_TRADES)) {
         if (OrderSymbol() == Symbol()){                                                                       //Auswahl der SELL Orders
            if(OrderType()==OP_SELL){
                string Kommentar = OrderComment();                                                        
                if(Kommentar=="SELL_LIMIT"){                                                                   
                result = OrderModify(OrderTicket(),OrderOpenPrice(),Stop_Loss,OrderTakeProfit(),0,clrBlue);
                }
            }
         }
      }
  }
}
string Kommentar = OrderComment();
if(Kommentar=="SELL_LIMIT"){

Mir geht es nur um diese beiden Zeilen
  #12 (permalink)  
Alt 02.08.17
Premium Mitglied
 
Registriert seit: Jun 2016
Ort: Österreich
Beiträge: 362
Leopold befindet sich auf einem aufstrebenden Ast
Standard

Hallo,

ich glaube das ist nicht so optimal. Mir ist mal aufgefallen, dass hier weitere Informationen ergänzt werden und wenn das der Fall ist, funktioniert deine Abfrage nicht mehr. Vielleicht kann das jemand bestätigen.

Ich denke die bessere Lösung wäre eine eigene MagicNumber zu vergeben.

---Leopold---
  #13 (permalink)  
Alt 02.08.17
Mitglied
 
Registriert seit: Feb 2016
Beiträge: 105
Lena befindet sich auf einem aufstrebenden Ast
Standard

Hmmmm, kann ich denn jeder Order, die ich nach Schema X setze die selbe MagicNumber geben?
Dann wäre eine entsprechende Änderung ja kein Problem.
  #14 (permalink)  
Alt 02.08.17
Premium Mitglied
 
Registriert seit: Jun 2016
Ort: Österreich
Beiträge: 362
Leopold befindet sich auf einem aufstrebenden Ast
Standard

Ja, ich verwende sie zum Unterscheiden der EA's. Bei mir bekommt jeder EA seine eigene ID Nummer (MagicNumber). Dadurch kann ich selektieren welche Order von welchen EA stammt.

---Leopold---
  #15 (permalink)  
Alt 02.08.17
Mitglied
 
Registriert seit: Feb 2016
Beiträge: 105
Lena befindet sich auf einem aufstrebenden Ast
Standard

Dumme Frage, wie viele Stellen hat eine MagicNumber?
  #16 (permalink)  
Alt 02.08.17
Premium Mitglied
 
Registriert seit: Jun 2016
Ort: Österreich
Beiträge: 362
Leopold befindet sich auf einem aufstrebenden Ast
Standard

Diese ist als "int" deklariert, also sollte das Maximum 2 147 483 647 sein.

Hier der Link zum nachlesen:
https://docs.mql4.com/basis/types/integer/integertypes

---Leopold---
  #17 (permalink)  
Alt 02.08.17
Mitglied
 
Registriert seit: Feb 2016
Beiträge: 105
Lena befindet sich auf einem aufstrebenden Ast
Standard

Code:
void Func_BUY_BREAKEVEN () {
   Stop_Loss   = NormalizeDouble(S12, Digits);                                                                 //Neuer Wert für SL wird auf Tagestief gesetzt
   bool result;
   for(int x=OrdersTotal()-1;x>=0;x--) {                                                                       //Schleife Anzahl der Orders
      if(OrderSelect(x,SELECT_BY_POS,MODE_TRADES)) {
         if (OrderSymbol() == Symbol()){                                                                       //Auswahl der BUY Orders
            if(OrderType()==OP_BUY){
                int Magic = OrderMagicNumber();                                                        
                if(Magic==1000){                                                                   
                result = OrderModify(OrderTicket(),OrderOpenPrice(),Stop_Loss,OrderTakeProfit(),0,clrBlue);
                }    
            }
         }
      }
  }
}
Wenn ich bei platzieren einer Order die MagicNumber 1000 vergeben habe, dann würde ich die hiermit auswählen, oder?
  #18 (permalink)  
Alt 02.08.17
Premium Mitglied
 
Registriert seit: Jun 2016
Ort: Österreich
Beiträge: 362
Leopold befindet sich auf einem aufstrebenden Ast
Standard

Ja richtig.

Du könntest auch direkt "if(OrderMagicNumber() == 1000)" schreiben. Dann wird der Code etwas kürzer.

---Leopold---
Lena likes this.
  #19 (permalink)  
Alt 11.08.17
Mitglied
 
Registriert seit: Feb 2016
Beiträge: 105
Lena befindet sich auf einem aufstrebenden Ast
Standard

Wenn ich die Haltedauer auf das Ende des nächsten Tages setzen will, dann muss ich doch von meinem Verständnis aus nur bei TimeDay "1" hinzu addieren.
Aber leider passiert da nichts.

Code:
   datetime expiration = StringToTime((string)TimeYear(Time[0])+"."+(string)TimeMonth(Time[0])+"."+(string)TimeDay(Time[0]+1)+".22:55");
Thema geschlossen

Lesezeichen

Stichworte
mql4, pending order zeit, pending orderspending order, programmierung, programmierung metatrader, programmierung mql4, zeitlich begrenzen

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 +1. Es ist jetzt 07:41 Uhr.





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