Общие вопросы по разработке > Анонсированное исполнение внутри бара не состоялось

Общие вопросы по разработке в Альфа-Директ 4. Обсуждение разработки пользовательских индикаторов, стратегий.
Аватара пользователя
Den
Сообщения: 345
Зарегистрирован: 09 фев 2016, 15:52
Благодарил (а): 14 раз
Поблагодарили: 4 раза

Анонсированное исполнение внутри бара не состоялось

Непрочитанное сообщение Den » 09 сен 2016, 11:15

индикатор подает сигнал на закрытии бара. Появляется он в момент начала (возникновения) текущего бара по данным робота.

И этот сигнал в новой версии 1747 робот должен исполнить по действию EnterShortLimit(GetBid()) в текущий бид ( для лонга наоборот) .

Но этого не происходит. Робот как и раньше ждет закрытия текущего бара и уже на его закрытии исполняет сигнал.

на вопрос "если бар закрыт уже предыдущий , то получается на текущем сигнал ? Сигнал формируется на закрытии предыдущего, но робот его подает на текущем уже ведь?"

Дмитрий Еремин пояснял перед обновлением, что "после закрытия бара Вы ставите одну из таких заявок, которая будет на текущем баре ждать исполнения ценового условия.Считается что сигнал подан на предыдущем. А исполняться он будет на текущем."


Почему же тогда нет исполнения на текущем?
Вложения
hj,j.png
hj,j.png (35.43 КБ) 9259 просмотров
Последний раз редактировалось Den 04 дек 2017, 21:49, всего редактировалось 1 раз.

Аватара пользователя
evge
Администратор
Сообщения: 1652
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 64 раза
Поблагодарили: 303 раза
Контактная информация:

Re: Анонсированное исполнение внутри бара не состоялось

Непрочитанное сообщение evge » 09 сен 2016, 15:12

Должно:

Появился сигнал, выставилась заявка лимитированная на нужную Вам цену. Не важно на текущем или через 5 баров - 10 баров она исполнится. Она будет ждать исполнения или обратного сигнала или своего снятия командой CancelActiveOrders(leaveStop) – снять активные заявки.

Как на деле, не проверял пока.
никогда такого не было и вот опять

Аватара пользователя
Den
Сообщения: 345
Зарегистрирован: 09 фев 2016, 15:52
Благодарил (а): 14 раз
Поблагодарили: 4 раза

Re: Анонсированное исполнение внутри бара не состоялось

Непрочитанное сообщение Den » 09 сен 2016, 22:03

Evge, основная схема робота простая :

Код: Выделить всё

function OnUpdate()
{
   /// ПРАВИЛО 1
   if ( (Input1.Close == MY.индикатор(Input1, 5).GetValue("L", 0)) )
   {
      EnterLongLimit(GetAsk());
   }

   /// ПРАВИЛО 2
   if ( (Input1.Close == MY.индикатор(Input1, 5).GetValue("H", 0)) )
   {
      EnterShortLimit(GetBid());
   }

}


Я проверил, сообщения робот подает не в начале бара, а как у Дмитрия - внутри бара, и , кстати, обычные EnterLong() также подают внутри бара.

Однако, как он предположил - робот не подает сигнал при его появлении. Вопрос - почему ?
Сигнал индикатора появляется точно в момент закрытия предыдущего бара - запаздывания тут нет никакого. Однако робот ждёт исполнения ровно до момента закрытия текущего бара, при этом сигнал "висит" с самого начала бара.

Аватара пользователя
Den
Сообщения: 345
Зарегистрирован: 09 фев 2016, 15:52
Благодарил (а): 14 раз
Поблагодарили: 4 раза

Re: Анонсированное исполнение внутри бара не состоялось

Непрочитанное сообщение Den » 09 сен 2016, 23:00

Расхождение сообщений робота с отчетом по нему. Судя по сообщениям сигналы появляются и исполняются внутри бара .

Реально он не исполняет сигнал на текущем баре , а ждет его закрытия - это видно по отчету и на графике инструмента.

При этом сигнал индикатора "висит" с самого начала бара, дожидаясь закрытия текущего бара. Индикатор без задержки.

В чем причина - не ясно.
Вложения
cообщения+отчёт.png

Аватара пользователя
evge
Администратор
Сообщения: 1652
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 64 раза
Поблагодарили: 303 раза
Контактная информация:

Re: Анонсированное исполнение внутри бара не состоялось

Непрочитанное сообщение evge » 16 сен 2016, 11:22

MyMTS-01.png
никогда такого не было и вот опять

Аватара пользователя
Den
Сообщения: 345
Зарегистрирован: 09 фев 2016, 15:52
Благодарил (а): 14 раз
Поблагодарили: 4 раза

Re: Анонсированное исполнение внутри бара не состоялось

Непрочитанное сообщение Den » 16 сен 2016, 12:07

У вас тоже самое , вы видите? Самая первая свеча где началась? Почему он не исполнил под стрелку ( примерно там где моя красная боковая?)
ОН дождался пока закроется бар. Тоже самое под зеленую стрелку - он дождался пока закрылся синий бар и на его закрытии исполнил.
ТЕЛО СИНЕЙ СВЕЧИ ПОЯВИЛОСЬ НЕ МГНОВЕННО ВЕДЬ, ОНО РОСЛО ПО ИТОГАМ СДЕЛОК , И РОБОТ ЖДАЛ ЕЕ ЗАКРЫТИЯ , НЕ ИСПОЛНЯЛ.

На моем рисунке - ПОД КРАСНОЙ СТРЕЛКОЙ БАР НЕ ЗАКРЫТ, ОН ТЕКУЩИЙ, И РОБОТ ЖДЕТ ПОКА ОН ЗАКРОЕТСЯ.
А ТАК БЫТЬ НЕ ДОЛЖНО СЕЙЧАС.

этот индикатор именно тот самый случай, который описывал Дмитрий -"после закрытия бара Вы ставите одну из таких заявок, которая будет на текущем баре ждать исполнения ценового условия.Считается что сигнал подан на предыдущем. А исполняться он будет на текущем."
Вложения
М1111.png
умвпу.png

Аватара пользователя
evge
Администратор
Сообщения: 1652
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 64 раза
Поблагодарили: 303 раза
Контактная информация:

Re: Анонсированное исполнение внутри бара не состоялось

Непрочитанное сообщение evge » 16 сен 2016, 13:22

Всё нормально и правильно подается.

Сигнал по стратегии подается правильно, а заявка LMT где будет тут не угадаешь, что там будет в GetBid() и GetAsk() на момент исполнения заявки в советнике!

Единственное, что отрисовка исполнения, может быть, показывается некорректно (кружок красный \ зеленый).

Т.е. сигнал подан заявка поставилась и выполнилась всё ок, но вот отрисовка выполнения на том же баре что и сигнал. Только это можно приписать к проблеме.

Возможно на реальном роботе будет нормально, и это проблема только на советнике, т.к. реальных ордеров он не выставляет.
никогда такого не было и вот опять

Аватара пользователя
Den
Сообщения: 345
Зарегистрирован: 09 фев 2016, 15:52
Благодарил (а): 14 раз
Поблагодарили: 4 раза

Re: Анонсированное исполнение внутри бара не состоялось

Непрочитанное сообщение Den » 16 сен 2016, 13:27

Два одинаковых робота ( работают на одних и тех же условиях)

НО ОДИН ИСПОЛНЯЕТ МГНОВЕННО СИГНАЛ ПОСЛЕ ЕГО ПОЯВЛЕНИЯ (то, о чем я говорю ), А ВТОРОЙ ЖДЕТ закрытия ТЕКУЩЕГО БАРА.

КАК ВЫ ЭТО ОБЪЯСНИТЕ?
Вложения
М1-2.png

Аватара пользователя
evge
Администратор
Сообщения: 1652
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 64 раза
Поблагодарили: 303 раза
Контактная информация:

Re: Анонсированное исполнение внутри бара не состоялось

Непрочитанное сообщение evge » 16 сен 2016, 13:44

Объясню так!

После выставления заявки она не ждёт конкретного закрытия бара. Вы себе забили голову не той информацией.
никогда такого не было и вот опять

Аватара пользователя
Den
Сообщения: 345
Зарегистрирован: 09 фев 2016, 15:52
Благодарил (а): 14 раз
Поблагодарили: 4 раза

Re: Анонсированное исполнение внутри бара не состоялось

Непрочитанное сообщение Den » 16 сен 2016, 15:11

Правильно evge !
В левой части После выставления заявки она не ждет закрытия бара, а исполняется СРАЗУ ( это делаю я принудительно),
а на правой части робот работает САМ.


Вернуться в «Общие вопросы по разработке»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 12 гостей