Много раз на форуме задается вопрос о возможности сопровождения скриптом позиций, открытых руками. Такому скрипту даже дали специальное название "доводчик позиций". Для реализации такой возможности разработчики предлагают сделать покупку/продажу со специально заполненным комментарием в виде "<имя скрипта>.<имя сигнала>", чтобы скрипт смог подхватить позицию, открытую руками.
А между тем должно быть простое решение этой проблемы, если перефразировать этот вопрос: «Возможно ли поделить обязанности между пользователем скрипта и самим скриптом так, чтобы за вход в позицию отвечал один, а за выход из позиции – другой?».
Изначально в одной из интерпретации вопрос звучал примерно так
Как заставить скрипт подхватить вручную открытую позицию, чтобы он ее довел и закрыл по условию?
Встречный вопрос: а зачем вообще заставлять скрипт подхватывать на сопровождение чужую позицию, про которую он ничего не знает (ни направление позиции, ни ее лотность и др.)? Очевидно, чтобы скрипт смог сопровождать открытую позицию, достаточно, чтобы ... он сам эту позицию и открыл, но только с разрешения пользователя!
Все просто. Вы создаете скрипт, который тупо, бездумно, т.е. без всяких условий, открывает позиции (но только с разрешения пользователя!), и дальше грамотно их сопровождает. Лучше сделать два скрипта, один - на покупку, а второй - на продажу.
Вся фишка в том, что в свойствах обоих скриптов вы оставляете только одну галку:
"Исполнять входы сразу" - Нет
"Исполнять выходы сразу" - Да
Такая комбинация опций позволяет сигналам на вход ожидать ручного подтверждения открытия позиции, а сигналам на выход - исполняться сразу.
Далее остается только запустить оба скрипта на исполнение, которые тут же сгенерируют сигналы на вход, но исполнены не будут, а будут ожидать подтверждения пользователя в окне «Менеджер команд».
После автоматического закрытия позиции, скрипт снова сгенерирует сигнал на вход, и снова будет ожидать ручного подтверждения в окне «Менеджер команд» и т.д. Если остановить работу скрипта, нажав на кнопку «Стоп», то неподтвержденный сигнал на вход будет удален без исполнения.
Таким образом можно разделить обязанности: реальный момент вход в позицию контролирует пользователь, а сопровождение позиции, включая выход из нее, выполняются уже скриптом без участия пользователя.