Como retornar valores de ordens anteriores.

 

Estou precisando de uma ajuda com, como retornar valores (lot, preço, stoploss, etc.) de ordens atuais e encerradas.

Preciso buscar apenas uma ordem por vez e receber alguns parâmetros dela para usar em nova ordem.

Talvez possa usar algo tipo "OrderHistoryTotal" ou "OrderSelect" ou os dois.

Alguém pode postar um exemplo de um código para isso?
 

Há!!!

e mais uma coisa preciso tambem colocar em um EA uma função para fechar todas as ordens tanto de compra como de venda, ordens com lucro ou prejuízo desde que a soma de todas seja maior que porcentagem especificada .

tipo AccountProfit seja maior que 1% por exemplo. 

Estou tentando o seguinte código  mas ele so esta fechando ordens que estão no lucro e preciso fechar todas simultaneamente.

//+---------------------------------------------------------------------------------------------------------------------------------------------------

   if((AccountProfit()*100)/AccountBalance()>ProfitPorCento)
     {
        for(int i=0;i<=OrdersTotal();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), 5, clrRed );
                                 break;
              //Close opened short positions
              case OP_SELL      : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, clrRed );
                                 break;
            }
         }
      }
  //+---------------------------------------------------------------------------------------------------------------------------------------------------
Razão: