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: 4229
Beiträge: 39207
Benutzer: 6.529
Aktive Benutzer: 255
Links: 80
Wir begrüßen unseren neuesten Benutzer: mt4user
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor einem Tag
- mt4user
vor einem Tag
- htnob77
vor 2 Tagen
- pitpitrows...
vor 2 Tagen
- Neldam
vor 3 Tagen
- Gerik

Onlineuser
'Wer ist online' anzeigen Benutzer: 1
Gäste: 74
Gesamt: 75
Team: 0
Team:  
Benutzer:  Domke01
Freunde anzeigen

Empfehlungen

Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt vor einer Woche
Mitglied
 
Registriert seit: Sep 2018
Beiträge: 80
Max2018 befindet sich auf einem aufstrebenden Ast
Standard pending Orders löschen

Hallo,

ich habe 2 Pending Orders 1xBuy und 1x Sell.
Diese Anweisung schließt nur die Pending Sell Order, nicht aber die Pending Buy Order - Warum ? Ich möchte beide schließen..... Ich stehe auf dem Schlauch.....

Code:
for(int i=0;i<OrdersTotal();i++)
         {
         
         if(OrderType()==OP_BUYLIMIT)
            if(OrderDelete(OrderTicket(),ColorBuy)) ;         
         if(OrderType()==OP_BUYSTOP)
            if(OrderDelete(OrderTicket(),ColorBuy)) ;
         if(OrderType()==OP_SELLSTOP)
            if(OrderDelete(OrderTicket(),ColorSell)) ;
         if(OrderType()==OP_SELLLIMIT)
            if(OrderDelete(OrderTicket(),ColorSell)) ;
      }
Mit Zitat antworten
  #2 (permalink)  
Alt vor einer Woche
AVT AVT ist offline
Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 148
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Max2018 Beitrag anzeigen
Code:
for(int i=0;i<OrdersTotal();i++)
z.B. OrdersTotal ist 5, dann macht er i=0 i=1 i=2 i=3 i=4, also nur bis 4 weil er ja machen soll solange i kleiner ist als OrdersTotal ist. AVT
Mit Zitat antworten
  #3 (permalink)  
Alt vor einer Woche
Mitglied
 
Registriert seit: Sep 2018
Beiträge: 80
Max2018 befindet sich auf einem aufstrebenden Ast
Standard

Ja aber auch wenn ich

Code:
 for(int i=0;i-1<OrdersTotal();i++)
         {
         
         if(OrderType()==OP_BUYLIMIT)
            if(OrderDelete(OrderTicket(),ColorBuy)) ;         
         if(OrderType()==OP_BUYSTOP)
            if(OrderDelete(OrderTicket(),ColorBuy)) ;
         if(OrderType()==OP_SELLSTOP)
            if(OrderDelete(OrderTicket(),ColorSell)) ;
         if(OrderType()==OP_SELLLIMIT)
            if(OrderDelete(OrderTicket(),ColorSell)) ;
eintrage, dann löscht er die Pending Buy Order nicht

Ich habe ja auch nur ZWEI Orders - 1x BuyLimit und 1xSellStop
Mit Zitat antworten
  #4 (permalink)  
Alt vor einer Woche
Mitglied
 
Registriert seit: Sep 2018
Beiträge: 80
Max2018 befindet sich auf einem aufstrebenden Ast
Standard

Was wäre denn nu richtig ?
Mit Zitat antworten
  #5 (permalink)  
Alt vor einer Woche
AVT AVT ist offline
Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 148
AVT befindet sich auf einem aufstrebenden Ast
Standard

Code:
   color ColorBuy=clrGreen;
   color ColorSell=clrRed;

   for(int i=OrdersTotal()-1; i>=0; i--)
   {
      Print(" i=",IntegerToString(i));

      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
      {
         int ord_type=OrderType();
         Print(" ord_type=",IntegerToString(ord_type));

         if(OrderType()==OP_BUYLIMIT)
         {
            Print("Type i=(",IntegerToString(i),") ist OP_BUYLIMIT");
            if(OrderDelete(OrderTicket(),ColorBuy))
               Print(" OrderTicket (",IntegerToString(OrderTicket()),
                     ") wurde gelöscht");
            else
               Print(" OrderTicket (",IntegerToString(OrderTicket()),
                     ") NICHT gelöscht");
         }
         if(OrderType()==OP_BUYSTOP)
         {
            Print("Type i=(",IntegerToString(i),") ist OP_BUYSTOP");
            if(OrderDelete(OrderTicket(),ColorBuy))
               Print(" OrderTicket (",IntegerToString(OrderTicket()),
                     ") wurde gelöscht");
            else
               Print(" OrderTicket (",IntegerToString(OrderTicket()),
                     ") NICHT gelöscht");
         }
         if(OrderType()==OP_SELLSTOP)
         {
            Print("Type i=(",IntegerToString(i),") ist OP_SELLSTOP");
            if(OrderDelete(OrderTicket(),ColorSell))
               Print(" OrderTicket (",IntegerToString(OrderTicket()),
                     ") wurde gelöscht");
            else
               Print(" OrderTicket (",IntegerToString(OrderTicket()),
                     ") NICHT gelöscht");
         }
         if(OrderType()==OP_SELLLIMIT)
         {
            Print("Type i=(",IntegerToString(i),") ist OP_SELLLIMIT");
            if(OrderDelete(OrderTicket(),ColorSell))
               Print(" OrderTicket (",IntegerToString(OrderTicket()),
                     ") wurde gelöscht");
            else
               Print(" OrderTicket (",IntegerToString(OrderTicket()),
                     ") NICHT gelöscht");
         }
      } // OrderSelect
   } // OrdersTotal

   // === sind wir jetzt clean?
   if( OrdersTotal()==0 ) Print(" keine Order mehr offen");
   else                   Print(" ups, noch was OFFEN");
Mit Zitat antworten
  #6 (permalink)  
Alt vor einer Woche
Mitglied
 
Registriert seit: Sep 2018
Beiträge: 80
Max2018 befindet sich auf einem aufstrebenden Ast
Standard

Suuuuuuper - du bist genial

danke
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
pending orders, schließen


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 07:21 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.
-----------------------------------------------------------------------------------------------------------------------------