need help reqoute problem

Jul 28, 2011 at 10:49
Vistas 1,073
8 Replies
pearlo
forex_trader_8864
Miembro desde Mar 18, 2010   posts 127
Jul 28, 2011 at 10:49
int start()
{
PipTarget=(AccountBalance())*(TargetPercent/100);

if (AccountProfit()>= PipTarget)
   {
    for(i=OrdersTotal()-1;i>=0;i--)
       {
       OrderSelect(i, SELECT_BY_POS);
       int type = OrderType();
               
        bool result = false;
    
    switch(type)
    {
      //Close opened long positions
      case OP_BUY : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 99, Red );
                          break;
      
      //Close opened short positions
      case OP_SELL : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 99, Red );
                          break;

      //Close pending orders
      case OP_BUYLIMIT :
      case OP_BUYSTOP :
      case OP_SELLLIMIT :
      case OP_SELLSTOP : result = OrderDelete( OrderTicket() );
    }
    
    if(result == false)
    {
      Alert('Order ' , OrderTicket() , ' failed to close. Error:' , GetLastError() );
      Sleep(3000);
    }
  }
  
  return(0);
pearlo
forex_trader_8864
Miembro desde Mar 18, 2010   posts 127
Jul 28, 2011 at 10:52 (editado Jul 28, 2011 at 10:54)
hi everyone. i need a little help here. what additional code or line should i add in case of requotes so that all trades would really close. thanks in advance.

ii hope someone would edit the code above so i wont get error 138 and have all trades close.
walker36
forex_trader_36599
Miembro desde May 13, 2011   posts 1341
Jul 28, 2011 at 11:32


use 'whıle' statement for loopıng ın close order wıth checkıng 'ıf' 'result' handle 'false'

thıs wıll solve your ıssue
regards
pearlo
forex_trader_8864
Miembro desde Mar 18, 2010   posts 127
Jul 28, 2011 at 13:03
if (AccountProfit()>= PipTarget)
   {
    for(i=OrdersTotal()-1;i>=0;i--)
       {
       OrderSelect(i, SELECT_BY_POS);
       int type = OrderType();
               
        bool result = false;

while (result == false)
{
    switch(type)
    {
      //Close opened long positions
      case OP_BUY : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 99, Red );
                          break;
      
      //Close opened short positions
      case OP_SELL : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 99, Red );
                          break;

      //Close pending orders
      case OP_BUYLIMIT :
      case OP_BUYSTOP :
      case OP_SELLLIMIT :
      case OP_SELLSTOP : result = OrderDelete( OrderTicket() );
    }
}
    
      
  }
  
  return(0);
pearlo
forex_trader_8864
Miembro desde Mar 18, 2010   posts 127
Jul 28, 2011 at 13:04
hi steve

will the above code solve the re-quote issue?
walker36
forex_trader_36599
Miembro desde May 13, 2011   posts 1341
Jul 28, 2011 at 13:05
that should work
ıt wıll loop untıl 'result' ıs true
walker36
forex_trader_36599
Miembro desde May 13, 2011   posts 1341
Jul 28, 2011 at 13:07
ıf you have anyother ıssues drop me messege
pearlo
forex_trader_8864
Miembro desde Mar 18, 2010   posts 127
Jul 28, 2011 at 13:14
thank you very much steve. 😄
walker36
forex_trader_36599
Miembro desde May 13, 2011   posts 1341
Jul 28, 2011 at 13:15
you well come😉
Conectarse / Inscribirse to comment
You must be connected to Myfxbook in order to leave a comment
*El uso comercial y el spam no serán tolerados y pueden resultar en el cierre de la cuenta.
Consejo: Al publicar una imagen o una URL de YouTube, ésta se integrará automáticamente en su mensaje!
Consejo: Escriba el signo @ para completar automáticamente un nombre de usuario que participa en esta discusión.