через API из C# даю команду на вход в короткую позу:
--------------------------------------
secRt.NewOrder(TSLab.DataSource.OrderType.Limit, false, ext_EntryPrice, ext_Kol, "dn");
--------------------------------------
при установленном флажке "Отключить генерацию позиций"
вход осуществляется четко: цена доходит до нужного уровня (152 200 п.) и ордер срабатывает.
но при таком "флажке" нет возможности отслеживать позиции, а мне это необходимо.
т.к. мне необходимо отслеживать позиции снимаю этот "флажок".
для контроля фиксирую лог-файл работы скрипта, записи в этот момент следующие (справа после "//" мои комментарии):
------------------------------------------------------
TEST: cur_Scenario=SHORT cur_Status=ENTERING
order SHORT: (150200 - 5) // подана заявка на вход по 150200
****************************************
****************************************
------------------------------------------------------
------------------------------------------------------
------------------------------------------------------
[13.12.2012 15:00:51] // начало 2-го бара
active SHORT (150200 - 0) // есть открытая позиция по 152200 и количество 0 ???
active order: [5156265751] (150200 - 5 - False) // есть активный ордер id=5156265751 цена 150200 количество лотов 0
****************************************
active order: [5156265751] (150200 - 5 - False) // в конце работы скрипта на 3-м баре ордер остается активным
****************************************
------------------------------------------------------
------------------------------------------------------
[13.12.2012 15:01:00] // начало 3-го бара
active SHORT (149740 - 5) // есть открытая короткая позиция по 149740 количество лотов 5
entered SHORT (149740 - 5) !!!
------------------------------------------------------
но выставленный лимитный ордер работает странно (см.комментарии в логе):
1.на первом баре выставляется по 150 200
2.в течении обработки 2-го бара ордер стоит по 152 000 (текущая цена рынка ниже)
3.в начале третьего бара активных ордеров уже нет
4.короткая позиция открыта но по текущей рыночной цене
очевидно, что лимитный ордер срабатывает по рынку !!!
вопрос:
что надо сделать, чтобы при включенной генерации позиций
лимитный ордер не срабатывал по рынку,
а стоял и ждал своего "звездного часа" - срабатывал по заложенной в нем цене ?
примечание:
скриншот настройки параметров скрипта прилагаю.
Attachments
limit_order.JPG (185 downloads)
Отредактировано yan (Thu Dec 13 2012 03:21 PM)