Here is the code for the pending function
Code: Select all
void TradeStart(int orderType){
double candleHigh1 = iHigh(Symbol(), Period(), 1);
double candleLow1 = iLow(Symbol(), Period(), 1);
datetime candleExperation = iTime(Symbol(), Period(), 0)+PeriodSeconds() - 1;
int i = 0;
//---determine if we are buying or selling
double price = candleLow1 - 3*pips;
double sl = 0, tp = 0;
if(orderType == OP_BUYSTOP) price = candleHigh1 + 3*pips;
int err = 0;
int TicketNumber = OrderSend(Symbol(),orderType,LotSize,price,Slippage,0,0," ",
MagicNumber,0,clrGreen);
if(TicketNumber == -1)
{
err = GetLastError();
Print("Could not place the order due to error ",err," ",ErrorDescription(err));
if(err == ERR_TRADE_NOT_ALLOWED)Alert("YOU NEED TO ENABLE YOUR AUTOTRADING BUTTON!");
}
else//If we are able to select an order
{
if(!OrderSelect(TicketNumber,SELECT_BY_TICKET))
{
err = GetLastError();
Print("Could not select the order due to error ",err," ",ErrorDescription(err));
}
else//If we are able to select an order
{
double priceOpen = OrderOpenPrice();
sl = priceOpen + (Stoploss*pips);
tp = priceOpen - (Takeprofit*pips);
if(OrderType() == OP_BUYSTOP){
sl = priceOpen - (Stoploss*pips);
tp = priceOpen + (Takeprofit*pips);
}
if(!OrderModify(TicketNumber, price, sl, tp, 0, clrGreen))
{
err = GetLastError();
Print("Could not modify the order due to error ",err," ",ErrorDescription(err));
}
}
}
}