Доброго времени суток роботоделам и трейдерам-энтузиастам:)
Недавно в моем скрипте возникла необходимость в использовании блоков "Профит последнего закрытого Шорта/Лонга". Так как конкретных примеров на форуме я не нашел, решил сваять свои. К счастью, товарищ 777 предоставил код своих блоков из небезызвестной ветки
http://www.tslab.ru/ubb/ubbthreads.php?ubb=showflat&Number=19784#Post19784, на основе которого и были созданы эти два блока. Возможно эти блоки пригодятся кому-то еще, затем и выкладываю их непосредственно, а также пример использования вместе с ОЗ для наглядности.
Итак, сами блоки получают данные о финансовом результате, ЗАФИКСИРОВАННОМ после соответствующего входа. Вход в блок подается из источника, выход можно определить в какую-нибудь формулу.
В примере, который я прилагаю ниже данные блоки участвуют в заполнении Обновляемого значения. Суть решенной в примере задачи в следующем: необходимо было организовать переворот позиции после зафиксированного убытка по стопу. Т.е. До тех пор, пока не будет получен убыток от позиции шорт, к примеру, будут торговаться лонги; после первого полученного убытка появится запрет на открытие лонгов и разрешение на открытие шортов, потом обратно и так далее.
Блоки "ПрофитЛонг(Шорт)" получают здесь число, затем по условию в формуле "Лонг(Шорт)минус" передают его в Обновляемое значение в определенном формулой "Данные для ОЗ" формате(1;-1), на основе которого уже формируется условие на вход.
В предупреждение возможной критики замечу, что скрипт в примере был создан чисто в демонстрационных целях и не претендует на роль полноценного робота.
Теперь об установке блоков. Создайте в папке TSlab новую папку "Handlers", если она еще не создана и скопируйте туда LSprofit.dll из архива. Блоки "Профит последней закрытой позиции Лонг(Шорт)" появятся во вкладке 777 в Tslab(для удобства, так как блоки всеже основаны на исходниках от 777

)