я не совсем понимаю, какую цель я должен преследовать.
меня интересует возможность ручного передвижения стопа в режиме реальных торгов. выбрал новый уровень цены для стоплоса на контрольной панели и скрипт передвинул мне стоп выше или ниже уровня текущего стопа начиная с последней свечи, а не для всех предыдущих свечей на истории. в обычном режиме программа при пересчете скрипта по новому параметру пересчитает все уровни стопа для всей истории. если где то на истории было касание с уровнем нового стопа, то агент выдает ошибку. а мне это не нужно .
я думаю, что можно обойти это ограничение если каким то образом зафиксировать номер свечи изменения параметра. тогда можно прописать условие для стопа - если номер свечи меньше или равно номеру бара изменения условия то используй предыдущий уровень стопа иначе используй текущий уровень стопа. и тогда даже если есть пересчет уровня стопа на истории, то не будет касаний цены на истории не будет ошибки.
пока я не сообразил как можно в ОЗ записать на каком баре произошло изменение.
Вот, теперь цель понятна. Т.е. сохранять историю передвижения не нужно.
Здесь ОЗ не нужно.
Для решения задачи есть два варианта поведения, которое больше подойдет.
Первый вариант очень простой, в Торговых настройках агента(кнопка Тн) включить флаг "Игнорировать выход не на последнем баре". Данный вариант не всегда может подойти к некоторым стратегиям, особенно, если необходимо использовать встроенные функции типа "Автозакрытие".
Через формулу можно прибавить к трейлу Интерактивную константу.
Второй вариант, использовать номера свечей для сигнала в блок выхода. Достаточно выставлять заявку на последнем баре, бар последний(к примеру)? выставляем.
Приложил скрипт к посту.
Через номер бара, выведенном в контрольную панель, мы указываем с какого бара нам нужен новый стоп, и тогда будет работать. Без этого, мы ставим галочку игнорировать выход не на пследнем баре, и двигаем вручную стоп, куда хотим, он пересчитается внутри бара и не будет ждать очередного пересчета.