OK rozumiem ale jednak wygląda na to że pobiera wartości true i false bo zmienia kierunki wchodzenia w zlecenia w zależności od spełnienia warunku if.
-- Dodano: 04 mar 2014, 20:06 --
Teraz się morduje w sumie z tym samym bo chcę aby w zależności od warunku if była zwiększana stawka zlecenia i nie wychodzi mi jakoś
Kod: Zaznacz cały
#property copyright "Copyright 2014, MetaQuotes Software Corp."
#property link "http://www.mql5.com"
#property version "1.00"
#property strict
extern double TakeProfit=60;
extern double StopLoss=60;
extern double LotSize=0.3;
double bid_price;
double pips;
double Change_LotSize;
extern double step_of_pips=60;
double FAccount;
int x=0;
int OnInit()
{
double ticksize = MarketInfo(Symbol(),MODE_TICKSIZE);
if (ticksize == 0.00001 || ticksize == 0.001)
pips = ticksize*10;
else pips= ticksize;
bid_price=Bid;
FAccount=AccountBalance();
return(INIT_SUCCEEDED);
}
void start()
{ if(Change_LotSize>0.1)Change_LotSize=0;
if (OrdersTotal()==0)
{
if (Ask>bid_price+step_of_pips*pips)
{ OrderSend(Symbol(),OP_BUY,LotSize+Change_LotSize,Ask,3,Ask-(StopLoss*pips),Ask+(TakeProfit*pips),NULL,0,0,Green);
bid_price=bid_price+step_of_pips*pips;
if(OrderSelect(x,SELECT_BY_POS,MODE_HISTORY)==True)
if(OrderClosePrice()<=OrderOpenPrice())Change_LotSize=Change_LotSize+0.1;
if(OrderClosePrice()>=OrderOpenPrice())Change_LotSize=0;
}
if (Bid<bid_price-step_of_pips*pips)
{
OrderSend(Symbol(),OP_SELL,LotSize+Change_LotSize,Bid,3,Bid+(StopLoss*pips),Bid-(TakeProfit*pips),NULL,0,0,Red);
bid_price=bid_price-step_of_pips*pips;
if(OrderSelect(x,SELECT_BY_POS,MODE_HISTORY)==True)
if(OrderClosePrice()>=OrderOpenPrice())Change_LotSize=Change_LotSize+0.1;
if(OrderClosePrice()<=OrderOpenPrice())Change_LotSize=0;
}
}}
-- Dodano: 04 mar 2014, 20:07 --
Nie kumam chyba OrderSelect do końca