Функция позволяет узнать, закрылась ли последняя сделка по тейк-профиту.
Входные параметры — символ и магик.
Функцию можно приспособить под получение любой информации (ну почти) от последней закрытой сделки.
// функция getTPorNotLastPos() возвращает true, если последняя сделка в истории была закрыта по тейк-профиту
// можно переделать под получение любых данных от последней закрытой сделки
bool getTPorNotLastPos(string pair, int mag)
{
ulong deal_ticket = -1; // тикет сделки
ulong order_ticket; // тикет ордера,по которому была совершена сделка
datetime transaction_time; // время совершения сделки
long deal_type; // тип торговой операции
long deal_entry; // направление сделки
long position_ID; // идентификатор позиции
double volume; // объем операции
string symbol; // по какому символу была сделка
double profit = 0;//профит
////--- установим начальную и конечную дату для запроса истории сделок
// datetime from_date=0; // с самого начала
// datetime to_date=TimeCurrent();// по текущий момент
//--- запросим историрю сделок в указанном интервале
HistorySelect(0,TimeCurrent());
//--- общее количество в списке сделок
int deals=HistoryDealsTotal();
//--- теперь обработаем каждую сделку
for(int i=deals; i>0; i--)
{
deal_ticket=HistoryDealGetTicket(i);
volume=HistoryDealGetDouble(deal_ticket,DEAL_VOLUME);
transaction_time=(datetime)HistoryDealGetInteger(deal_ticket,DEAL_TIME);
order_ticket=HistoryDealGetInteger(deal_ticket,DEAL_ORDER);
deal_type=HistoryDealGetInteger(deal_ticket,DEAL_TYPE);
deal_entry=HistoryDealGetInteger(deal_ticket,DEAL_ENTRY);
symbol=HistoryDealGetString(deal_ticket,DEAL_SYMBOL);
position_ID=HistoryDealGetInteger(deal_ticket,DEAL_POSITION_ID);
//--- сделаем красивое форматирование для номера сделки
order_ticket = ulong(HistoryDealGetInteger(deal_ticket, DEAL_ORDER));
profit = HistoryDealGetDouble(deal_ticket,DEAL_PROFIT);
if(order_ticket <= 0 || symbol != pair)
continue;
break;
}
return(HistoryDealGetInteger(deal_ticket,DEAL_REASON)==DEAL_REASON_TP);
}
//+------------------------------------------------------------------+