На
главную страницу
Структура
log-файла:
При каждом вызове внешнего модуля
MoveOrderADirect3.exe, завершающемся выполнением
какой-либо операции, создается запись в лог-файл.
В ней содержатся информация о параметрах заявки
поданной в АД-терминал и некоторых других
действиях. Каждая запись обычно состоит из
заголовка, с перечнем значений параметров, и
описания произведенных модулем действий.
Заголовочная часть одинакова для всех операций,
и для подачи заявок и для перестановки стопов и
т.д.
Пример заголовочной части записи
лог-файла:
************** Новая заявка от 05.03.2007 19:38:48
Входные параметры заявки:
Тип заявки - Sell;
vTradeArea=MICEX_SHR; {код рынка}
vAccount=12345-000; {номер счета и портфеля}
vFinInstr=LKOH; {тикер бумаги}
vMaxPercentInPortfel=-20; {величина позиции для
бумаги в штуках лотов (контактов)}
vLotSize=1; {кол-во бумаг в одном лоте}
vPrice=1965,53; {цена заявки на покупку/продажу}
vDecimals=2; {кол-во знаков точности цены}
vPercentStop=1,35; {параметр стопа}
vPercentAddStop=0,10; {дополнительный параметр стопа}
vAllowShort=Y;
vVidStop=ASimple; {вид стопа}
vClose=1985,38; {последняя Close-цена по бумаге}
vPriceMinStep=0,01000; {шаг цены в стакане}
vNumBarRight=1; {номер бара от правого края графика
для проверки на наличие BuySell-сигнала}
Время контроля исполнения заявок (сек)=52;
Mакс.срок действия созданных заявок и стопов
(дней)=7;
oADLite: есть соединение с сервером;
Примеры некоторых записей лог-файла с
описанием произведенных операций:
************** Новая заявка от 26.08.2009 14:24:10
Входные параметры заявки:
Тип заявки - Sell;
vTradeArea=FORTS;
vAccount=12345-000;
vFinInstr=SBER-9.09; (заявка сформирована с графика этой
ЦБ)
vMaxPercentInPortfel=-3; Минус означает, что доля актива в
портфеле задана в лотах(контрактах), а не в
процентах!
vLotSize=1;
vPrice=4870;
vDecimals=0;
vPercentStop=1,01522;
vPercentAddStop=0,03000;
vAllowShort=N;
vVidStop=ASimple;
vClose=4872;
vPriceMinStep=1,00000;
vNumBarRight=2;
Время контроля исполнения заявок (сек)=35;
Mакс.срок действия созданных заявок и стопов
(дней)=15;
Серверное время окончания основной сессии
(чч:мм)=17:45:00;
oADLite: есть соединение с сервером;
Параметры корректные;
Заданное максимально допустимое кол-во ЦБ в
портфеле для заявки 3 шт.
Имеющиеся позиции по SBER-9.09: Количество=0 шт; Доля в
портфеле%=0;
Лимит на продажу SBER-9.09 3 шт. по цене 4870р;
ResultSellLimit-Операция выполнена успешно!;
Подана заявка на Продажу 3 шт. SBER-9.09 по цене 4870р;
N=37287787; ResultСreateSellOrder-Операция выполнена успешно!;
Создан Simple стоп-ордер на Покупку SBER-9.09 по цене
4921р; N=37287793; ResultCreateStopOrder-Операция выполнена
успешно!;
Ваша заявка № 37287793 на покупку 3 лотов SBER-9.09 по
цене 4972 RUR принята Системой.
Цена исполнения заявки на Продажу 4867;
--- запись завершена: 26.08.2009 14:24:15 -----
"Заданное максимально допустимое кол-во
ЦБ в портфеле - 100 шт.
Имеющиеся позиции по EESR: Количество=0 шт; Доля в
портфеле%=0,000;
Лимит на покупку EESR - 700 шт; ResultBuyLimit-Операция
выполнена успешно!;
Подана заявка на Покупку 100 шт EESR; N=13913886;
ResultСreateBuyOrder-Операция выполнена успешно!;
Данные успешно сформированы
Создан простой стоп-ордер на Продажу EESR; N=13913997;
ResultCreateStopOrder-Операция выполнена успешно!;
Данные успешно сформированы";
"ASimple Buy-стоп N 13910553 со стоп-ценой 231,84р.
переставлен по тренду с кол-вом 2 шт. и стоп-ценой
221,81р.
Данные успешно сформированы";
"Заданное максимально допустимое кол-во
ЦБ в портфеле - 2 шт.
Имеющиеся позиции по MTSI: Количество=-2 шт; Доля в
портфеле%=-5,00;
Over-ситуация. Переворачиваемся из шорта в лонг:
Удалена из очереди активная Заявка
N13914906,MTSI,xxxx-xxx,MICEX_SHR,тип"B",2шт,цена222,91руб;
LastResultCancelOrder-Операция выполнена успешно!;
Заявка № 13914906 по счету xxxx-xxx на площадке КЦБ ММВБ
помечена к удалению.
Лимит на покупку MTSI - 54 шт; ResultBuyLimit-Операция
выполнена успешно!;
Подана заявка на Покупку 4 шт MTSI; N=13916939;
ResultСreateBuyOrder-Операция выполнена успешно!;
Ваша заявка № 13916939 на покупку 4 лотов MTSI по цене
218.35 RUR принята Системой.
Создан простой стоп-ордер на Продажу 2 шт MTSI;
N=13916942; ResultCreateStopOrder-Операция выполнена успешно!;
Данные успешно сформированы"
"Заявка отменена. Нет соединения с
сервером АДирект."
"ASimple Sell-стоп N 13932416 со стоп-ценой 27,933р.
переставлен по тренду с кол-вом 100 шт. и стоп-ценой
27,962р.
Данные успешно сформированы"
"Вывод портфеля 1234-000 в КЭШ по Cash-заявке
в заданное время: 18 часов 35 минут.
Авто-трейдинг для рынка MICEX_SHR и портфеля 1234-000
заблокирован после вывода портфеля в кэш в
заданное время 18 часов 35 минут. Дата блокировки:
25.03.2007 18:38:52"
"Фиксация 0.5-процентного уровня профита по
портфелю 1234-000 с выводом портфеля в КЭШ по
IntraDayTakeProfit-заявке.
Авто-трейдинг для рынка MICEX_SHR и портфеля 1234-000
заблокирован при достижении 0.5%-го уровня профита
по портфелю.
Дата блокировки: 25.03.2007 12:38:48"
"Заявка отменена. Работа с рынком MICEX_SHR и
портфелем 1234-000 заблокирована. Для разблокировки
удалите файл
LOCKMICEX_SHR1234-000 в каталоге 'C:/Program Files\Equis\MetaStock\External
Function DLLs'";
"Имеющиеся позиции по GAZP: Количество=0 шт;
Доля в портфеле%=0,00;
Лимит на покупку GAZP - -1 шт. по цене 236,18р;
ResultBuyLimit-Истекло время ожидания!; //это пример
сообщения при сбое канала связи
Заявка на Покупку 1 шт GAZP по цене 236,18р НЕ
СОЗДАНА!";
"Заявка на Покупку 217 шт EESR по цене 33р НЕ
СОЗДАНА!
Инструмент EESR на площадке MICEX_SHR торгуется лотами
по 100. Указанное Вами количество 217 -
недопустимо!";
//это пример сообщения при сбое библиотеки Borisoff.dll
- нужно перезагрузить компьютер!
и др.
Начиная с v.57 версии модуля, в начале
очередной записи лог-файла пишется время
вызова модуля по сигналу в Метастоке (время
начала обработки модулем сигнала в Метастоке):
************** Новая
заявка от 26.08.2009 14:24:10
а в конце записи пишется время
завершения работы модуля:
--- запись завершена: 26.08.2009 14:24:15
-----
Разница этих двух значений времени дает общее
время исполнения заявки АД-терминалом (с
учетом времени контроля исполнения). А также в
лог-файл пишется цена исполнения заявки.
Запись сообщений в лог-файл идет ТОЛЬКО
при завершении работы модуля, а не в моменты
выполнения важных действий, успешное выполнение
которых подтверждается сообщениями о
результатах операций. С v.57-версии лог-файл
создается со своей датой на каждый торговый день
и его название имеет вид:
"MoveOrderADirect3_гггг_мм_дд.log".
(!)СОВЕТ: создайте в том же
каталоге, где находятся файлы библиотеки и
модуля каталог \LOGS и переместите
туда после каждого торгового дня, или перед
началом следующего, имеющийся лог-файл. Таким
образом у вас будет накапливаться архив
лог-файлов за все торговые дни. А новый лог-файл
будет автоматически создаваться с началом новой
торговой сессии.
Не рекомендуется делать правки в
лог-файле, т.к. это может нарушить его
структуру, и новые записи перестанут добавляться
в лог-файл. Если такое происходит , то удалите
лог-файл или переместите его в архив, и новый файл
с правильной структурой будет создан
автоматически.