Страница 1 из 1

Выход из позиции

Добавлено: 10 сен 2016, 09:57
Sergei
Добрый день. Помогите с кодом пожалуйста. Не выходит прописать выход из позиции.
Условия простые. Выход если бар закрывается ниже Low бара входа в позицию http://pixs.ru/showimage/Bezimyanni_1335497_23236149.jpg
При стандартном стопе StopLoss(Input1.Low[0], SignalPriceType.Price ) не выполняются условия http://pixs.ru/showimage/Bezimyanni_8029832_23236213.jpg

Re: Выход из позиции

Добавлено: 11 сен 2016, 08:01
evge
В данном случае, при
Sergei писал(а):StopLoss(Input1.Low[0], SignalPriceType.Price )

стоп сработает не по условию закрытия цены ниже, а по достижении цены уровня стопа. Т.е. это реальный стоп-ордер размещенный у брокера, а не выход по сигналу.

Если хочется такое правило прописать придётся разблокировать код (т.е. уйти от конструктора) и прописать правила и новую глоб. переменную сохраняющую цену Low (High).

Если нужно закрывать позицию по сигналу, анализируя закрытие бара, то это делается так:

1. Убираем выставленный StopLoss в правиле открытия позиции!
2. В инициализации (function Initialize() {...} ) прописываем

Код: Выделить всё

AddGlobalVariable("StopPrice", Types.Double, 0.0);

3. В правиле открытия позиции после EnterLong() прописываем сохранение Low текущего бара.

Код: Выделить всё

StopPrice = Input1.Low[0];

4. Добавляем новое правило для закрытия позиции:

Код: Выделить всё

if (CurrentPosition() > 0 && Input1.Close[0] < StopPrice)
{
CloseLong();
}

Re: Выход из позиции

Добавлено: 11 сен 2016, 10:42
Sergei
Огромное спасибо. Теперь все работает как задумывалось.