особенности работы BatchStrategy


особенности работы BatchStrategy
Atom
12/22/2010


Для закрытия позиций по стопу и профиту использую BatchStrategy, также стратегия может робота иногда закрывать
позиции сама.
Сделал все по примеру, но результат прямо скажем удивительный, возможно я выбрал слишком маленьки значения (10 пунктов stoploss и 30 - takeprofit).
Есть и позиции закрытые точно по указанным числам, но в основном отклонения довольно приличные, вот примерный список сегодняшних закрытий:
+30
+30 ок ! 2 раза закрылись по профиту, хорошо, идем далее:
-50
-55
-75
-140
-35
-5
45
95
130
5
и так далее, то есть даже незнаю что и делать.

Код у меня такой, вобщем просто взят из документации:

Code

private void OnMewMyTrades(IEnumerable<MyTrade> trades)
{
var sec = trades.First().Trade.Security;
// для каждой сделки добавляем для защиты по пакетной стратегии
foreach (var t in trades) {
var s = new BatchStrategy(BatchFinishModes.First) { IsParallel = true };

// выставляет тейк-профит в 30 пунктов
var takeProfit = new TakeProfitStrategy(t, 30.Points(sec));

// выставляет стоп-лосс в 10 пунктов
var stopLoss = new StopLossStrategy(t, 10.Points(sec));

// делаем стратегии параллельными, чтобы они не блокировали работу контролирующей BatchStrategy
takeProfit.IsParallel = stopLoss.IsParallel = true;

s.ChildStrategies.Add(takeProfit);
s.ChildStrategies.Add(stopLoss);
batch.ChildStrategies.Add(s);
//return s;
};

base.ChildStrategies.Add(batch);
}


Tags:


Thanks:




Mikhail Sukhov

Avatar
Date: 12/22/2010
Reply


В логе ничего не понял. А вот по коду могу сказать, что фильтр на сделки необходимо добавить https://stocksharp.ru/do...7-985a-1654e8d9cfc1.htm .

Code
// фильтруем сделки, чтобы найти те, которые произошли для заявки TargetOrder
    trades = trades.Where(t => t.Order == this.TargetOrder);
    
    // если не найдена ни одна сделка для заявки TargetOrder
    if (trades.Count() == 0)
        return;
Thanks:

xtonic

Avatar
Date: 12/23/2010
Reply


Фильтрацию добавил, но вобщем ничего не поменялось.
Лог означает профит сделки, т.е. я ожидаю чтото такое:
+30
+30
-10
+30
-10
-10

т.е. видим что убыточные сделки закрываются в -10 пунктов т.е. по стоплоссу, а прибыльные
по тейкпрофиту: +30. Конечно такого ожидать можно в идеале, а на практике должны быть отклонения,
но я не думал что такие будут большие. Может это из-за повышенной волатильности инструмента такое быть, тестирую на RIH1 ?
Thanks:


Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy