Спасибо всем ответившим, captian в первую очередь.
Про ОЗ мысль понял, буду разбираться в этом и реализации.
По 2-му способу решения - я, собственно, так и реализовал открытие Шорта - по условию закрытия Лонга (от числового значения, которое является условием для закрытия Лонга по стоп-лоссу, стрелка идёт и к стопу и к открытию Шорта). Но эта констукция действительно ущербна. Дело в том, что болванка скрипта, которую я "сваял", в дальнейшем треубет применения фильтров на условие открытия позиции (есессно!), а это невозможно, если открытие Шорта жестко привязано к закрытию Лонга. Так что, применение ОЗ возможно решит проблему.
Про работу на свече - приглядевшись к графику, понял один момент. У меня помимо закрытия Лонга для открытия Шорта поставлено логическое условие - проверка наличия открытой позиции с отрицанием not. А эта проверка проводится РАНЬШЕ всех условий, т.е. после того, как закрывается Лонг, эта проверка не производится, а производится только на открытии следующей свечи (или закрытии текущей?), т.е. сделка возможна не ранее следующей свечи. Что делать? Как заставить проводить эту логич. проверку после каждой сделки?
И ещё вопрос - если у меня указан интервал 30, значение - минуты, то скрипту для работы подаются от источника данные о каждой минуте внутри 30мин интервала или только значения каждой свечи получасовика?