Hallo ich habe mal wieder ein Problem und verstehe es nicht.
Die Programm Syntax ist doch so
if(x+2=3)
{
es passiert a
}
else
{
if(x+2=4)
{
es passiert b
}
}
es passiert a oder b
so nun zu meinen Programm, hier der Code
Code:
string OP = "";
double price = 0;
int MagicNumber = 0;
string Farbe = "";
string OrderName = "";
bool Schalter_30 = true;
bool Schalter_31 = true;
if (OrdersTotal()<2)
{
if(iOpen(_Symbol,PERIOD_M15,0)>iOpen(_Symbol,PERIOD_M15,1))
{
if(Schalter_30==true)
{
OP = OP_BUY;
price = Ask;
MagicNumber = Order3;
Farbe = Green;
OrderName = "BUY-Order 3.0";
Schalter_30==false;
}
}
else
{
if(iOpen(_Symbol,PERIOD_M15,0)<iOpen(_Symbol,PERIOD_M15,1))
{
if(Schalter_31==true)
{
OP = OP_SELL;
price = Bid;
MagicNumber = Order3;
Farbe = Green;
OrderName = "BUY-Order 3.1";
Schalter_31=false;
}
}
}
OrderSend(_Symbol,OP,Lots,price,10,0,0,NULL,MagicNumber,0,Farbe);
bool Note = SendNotification (OrderName +" Einstieg = " + price);
Print (OrderName);
Comment("Symbol = ", _Symbol, "\n"
"OP = ", OP, "\n"
"Price = ", price ,"\n"
"MagicNumber = ", MagicNumber, "\n"
"Farbe = ", Farbe, "\n"
"Schalter 30 = ", Schalter_30, "\n"
"Schalter 31 = ", Schalter_31);
}
return Schalter_30&&Schalter_31;
}
Warum ignoriert es die Schalter?
Warum "printet" es mir, wenn ich die Order Send ausklammer, ununterbrochen, ob wohl der Schalter es doch auch nicht zulassen würde?
Ich bitte um eine genaue Erklärung, weil ich es von meiner Logik nicht verstehe, wenn er es nicht darf warum macht er es trotzdem???
vielen Dank schonmal