//+------------------------------------------------------------------+ //| GetTicketOfTrade.mq4 | //| Copyright © 2005, MetaQuotes Software Corp. | //| http://www.metaquotes.net/ | //+------------------------------------------------------------------+ #define LOWEST 0 #define HIGHEST 1 extern int MagicNumber = 20050610; int LowestBuyTicket, HighestBuyTicket, LowestSellTicket, HighestSellTicket; double LowestBuyPrice, HighestBuyPrice, LowestSellPrice, HighestSellPrice; //+------------------------------------------------------------------+ //| Get the ticket of the a trade based on inputs //| //| cmd = OP_BUY //| which = 0 returns ticket of lowest open buy //| which = 1 returnds ticket of highest open buy //| cmd = OP_SELL //| which = 0 returns ticket of lowest open sell //| which = 1 returns ticket of highest open sell //+------------------------------------------------------------------+ void GetTicketsOfTrades() { int ticket; int LowestBuy,HighestBuy, LowestSell, HighestSell; //---- LowestBuy = 9999; HighestBuy = 0; LowestSell = 9999; HighestSell = 0; for(int i=0;i HighestBuy) { HighestBuy = OrderOpenPrice(); HighestBuyTicket = OrderTicket(); } } if(OrderType()==OP_SELL) { if (OrderOpenPrice() < LowestSell) { LowestSell = OrderOpenPrice(); LowestSellTicket = OrderTicket(); } if (OrderOpenPrice() > HighestSell) { HighestSell = OrderOpenPrice(); HighestSellTicket = OrderTicket(); } } } } } //+------------------------------------------------------------------+ //| Start function | //+------------------------------------------------------------------+ void start() { GetTicketsOfTrades(); if (HighestBuyTicket > 0) { if (OrderSelect(HighestBuyTicket, SELECT_BY_TICKET) == true) { HighestBuyPrice = OrderOpenPrice(); } } if (HighestSellTicket > 0) { if (OrderSelect(HighestSellTicket, SELECT_BY_TICKET) == true) { HighestSellPrice = OrderOpenPrice(); } } if (LowestBuyTicket > 0) { if (OrderSelect(LowestBuyTicket, SELECT_BY_TICKET) == true) { LowestBuyPrice = OrderOpenPrice(); } } if (LowestSellTicket > 0) { if (OrderSelect(LowestSellTicket, SELECT_BY_TICKET) == true) { LowestSellPrice = OrderOpenPrice(); } } } //+------------------------------------------------------------------+