for(int i=0;i<OrdersTotal();i++)//---повторяем пока не дойдем до последнего открытого ордера на данный момент
{
int handle=FileOpen("1.csv",FILE_READ|FILE_WRITE|FILE_SHARE_READ|FILE_SHARE_WRITE);//--- откроем файл куда записываем построчно ордера с параметрами
if(handle!=INVALID_HANDLE)//---если файл открылся удачно то:
{
int seek=FileSeek(handle,0,SEEK_END);//--- запишем строку с данными в конец файла
if(seek!=false)//---если установить курсор записи удалось на конец файла то:
{
int or=OrderSelect(i,SELECT_BY_POS, MODE_TRADES);//---выбираем ордер из списка по номеру равному номеру цикла(1-я строка)
if (or!=false)//---если орде удалось выбрать то:
{
int write=FileWrite(handle,OrderTicket(),OrderSymbol(),OrderType(),OrderStopLoss(),OrderTakeProfit());//---записываем в файл уникальный номер ордера, символ торговли, тип ордера, стоплосс, тэйкпрофит
if(write!=0)//---если данные записались то:
FileClose(handle);//--- закрываем файл
else
{
ResetLastError();
Alert("write",GetLastError());//---выводим ошибку записи если данные не записаны
}
}
else
{
ResetLastError();
Alert("Ошибка выбора ордера",GetLastError());//---выводим ошибку выбора ордера, если ордер не выбран
}
}
else
Alert("seek",GetLastError());//---выводим ошибку установки курсора записи, если не удалось установить в конец файла
}
else
Alert("Failed to open the file, error ",GetLastError());//---выводим ошибку открытия файла, если не удалось открыть файл
}