Брокер, в моменте, может не прислать цены сделок по заявке, так как данные о принятии транзакции, своих сделках, заявках поступают асинхронно. В этом случае программа возьмет цену заявки для дальнейших расчетов.
Если заявка выставлялась "По рынку", то цена заявки в этом случае будет равна "+-K%" от текущих цен, для всех рынков кроме рынка Фортс. Для рынка Фортс цена рыночной заявки будет равна цене верхнего и нижнего лимитов рынка (планки рынка). K = по умолчанию 4%, кроме брокера IB, где K регулируется в настройках поставщика данных. "+-" - направление заявки:
если покупка, то Цена последней сделки на рынке +K (значение верхнего лимита рынка для Фортс);
если продажа, то цена последней сделки на рынке -K (или значение нижнего лимита для рынка Фортс).
В итоге, на графике агента можно увидеть следующую картину:
Произошло следующее: вместо цен исполнения реальных сделок входа в лонг, использовалась цена рыночной заявки. (Рынок фортс, цена рыночной заявки в покупку = верхнему лимиту рынка). Если расчет стоп-лосс и/или расчет профита зависят от цены входа, то выставляться они будут по заведомо неверным ценам. Так как цена входа в позицию будет равна планке рынка или "+-K%" от текущих цен. Поэтому, в случае, если от цены входа зависит расчет цены стоп-лосс или профит, рекомендуется использовать блок "Цена входа (расчетная)".
Блок "Цена входа" в агенте дает цену, которую присылает брокер (средняя цена сделок по данной заявке).
Блок "Цена входа (расчетная)" в агенте дает цену, такую же как в лаборатории.
Расчетную цену рекомендуется использовать, когда цена выхода из позиции зависит от блока Цена входа (стоп-лосс или профит рассчитываются от цены входа).
Использование расчетной цены имеет ряд ограничений. Блок "Цена входа (расчетная)" (или в некоторых случаях настройка в блоках, например, трейлстоп) не сможет показать расчетную цену в агенте, если произошло одно из событий или включена настройка:
Включена опция "По рынку с фиксированной ценой" в Торговых Настройках (управление агентами, кнопка "шестеренка"). В данном случае блок "Цена входа расчетная" отдаст цену:
закрытия бара, если режим пересчета Интервал
открытия бара, если режим пересчета Интервал+сделка
Если был пропущен вход в позицию. Здесь под "пропущен" понимается следующее: Сигнал был выполнен вручную из менеджера команд или вручную с комментарием из менеджера заявок, или прошел по автооткрытию).
Если используются блоки входа в позицию "По рынку", то в этом случае блок "Цена входа (расчетная)" отдаст цену закрытия бара, после которого прошла сделка;
Если используются блоки "Открытие позиции, если Больше/Меньше", то в этом случае блок "Цена входа (расчетная)" отдаст цену условия.
Расчет не совместим при переносе заявки или сделки через таблицу свои заявки или свои сделки, по кнопке "Перенести".
Если сработала опция "Плохие по рынку", блок не сможет отдать расчетную цену первого сигнала.
При оптимизации не имеет значения, что используется, — "расчетная цена входа" или "цена входа".