Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools

Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools (http://www.expert-advisor.com/forum/index.php)
-   Programmierung MQL4 (http://www.expert-advisor.com/forum/forumdisplay.php?f=220)
-   -   ganz kleines problem ordermodify (http://www.expert-advisor.com/forum/showthread.php?t=4328)

Thomas Welling 21.06.15 21:19

ganz kleines problem ordermodify
 
bool asdasd=OrderSelect(1,SELECT_BY_POS,MODE_TRADES);

bool kk=OrderModify(1,OrderOpenPrice(),0,0,0,Red);

ordermodify will nicht funktionieren, komischerweise.

SL soll verändert werden.

Bobs 22.06.15 07:25

ganz kleines problem ordermodify
 
Problem liegt bei "1", hier muss Ticketnummer sein.
Versuchen es so machen:

for(int i=0;i<OrdersTotal();i++)
{
bool asdasd=OrderSelect(1,SELECT_BY_POS,MODE_TRADES);
if(asdasd==false)continue;
bool kk=OrderModify(OrderTicket(),OrderOpenPrice(),0,0, 0,clrRed);
}

Thomas Welling 22.06.15 18:15

1 ist die ticketnummer ist nur ein trade offen

traderdoc 22.06.15 18:32

1 wäre nur dann die Ticketnummer, wenn Du den Tester benutzt, was Du noch nicht gesagt hast.

traderdoc

pako 22.06.15 18:51

Zitat:

Zitat von traderdoc (Beitrag 30200)
1 wäre nur dann die Ticketnummer, wenn Du den Tester benutzt, was Du noch nicht gesagt hast.

traderdoc

falsch

1 ist die positionnummer, egal Tester Demo Real

weil OrderSelect(1,SELECT_BY_POS,MODE_TRADES);

traderdoc 22.06.15 19:00

Ne, ich korrigiere meine Korrektur und hatte im Prinzip schon recht.
Die 1 in der Orderselect ist natürlich gleich in Tester und Demo, weil es richtigerweise eine Positionsnummer ist und nur 1 Trade offen ist.
Was ich aber meinte und auch davon sprach, war die Ticketnummer und die ist nur dann 1, wenn es der erste Trade im Tester!!! ist.
Im Demo ist die Ticketnummer natürlich nicht!!! 1.

Und da er uns noch nicht mitgeteilt hat, ob es ein Test war oder ein Trade im Demo, bleibt die Frage nach wie vor offen.

Insofern ist meine vorherige Aussage: "1 wäre nur dann die Ticketnummer, wenn Du den Tester benutzt, was Du noch nicht gesagt hast."
natürlich völlig korrekt.

traderdoc

pako 22.06.15 20:55

Zitat:

Zitat von traderdoc (Beitrag 30202)
Ne, ich korrigiere meine Korrektur und hatte im Prinzip schon recht.
Die 1 in der Orderselect ist natürlich gleich in Tester und Demo, weil es richtigerweise eine Positionsnummer ist und nur 1 Trade offen ist.
Was ich aber meinte und auch davon sprach, war die Ticketnummer und die ist nur dann 1, wenn es der erste Trade im Tester!!! ist.
Im Demo ist die Ticketnummer natürlich nicht!!! 1.

Und da er uns noch nicht mitgeteilt hat, ob es ein Test war oder ein Trade im Demo, bleibt die Frage nach wie vor offen.

Insofern ist meine vorherige Aussage: "1 wäre nur dann die Ticketnummer, wenn Du den Tester benutzt, was Du noch nicht gesagt hast."
natürlich völlig korrekt.

traderdoc

Schon wieder FALSCH:D

traderdoc 22.06.15 21:08

@Thomas Welling,

lass Dich nicht beirren, ist schon alles richtig, was ich geschrieben hatte.:D

traderdoc

Thomas Welling 22.06.15 21:08

ob 1 hin oder her ist mir eigentlich egal

bool silber;
for (int i=OrdersTotal()-1; i >= 0; i--)
{


if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
double profit=OrderProfit();
if ((profit>10)) { silber=OrderModify(OrderTicket(),OrderOpenPrice(), OrderOpenPrice(),0,0,Red);



}}}

klappt aufjedenfall nicht,

irgendjemand eine idee oder einen code den er preisgeben kann?

pako 22.06.15 21:12

Zitat:

Zitat von traderdoc (Beitrag 30205)
@Thomas Welling,

lass Dich nicht beirren, ist schon alles richtig, was ich geschrieben hatte.:D

traderdoc

PositionNummer, wenn 1 Trade offen ist, "0"

nachweis

Code:

//+------------------------------------------------------------------+
//|                                                    PosNummer.mq4 |
//+------------------------------------------------------------------+
#property strict
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
    for(int i=OrdersTotal()-1; i>=0; i--)
    {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
        Alert("POSNummer =",i);
        }
    }
  }
//+------------------------------------------------------------------+



Alle Zeitangaben in WEZ +2. Es ist jetzt 19:23 Uhr.

Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum