Для закрытия позиций по стопу и профиту использую BatchStrategy, также стратегия может робота иногда закрывать позиции сама. Сделал все по примеру, но результат прямо скажем удивительный, возможно я выбрал слишком маленьки значения (10 пунктов stoploss и 30 - takeprofit). Есть и позиции закрытые точно по указанным числам, но в основном отклонения довольно приличные, вот примерный список сегодняшних закрытий: +30 +30 ок ! 2 раза закрылись по профиту, хорошо, идем далее: -50 -55 -75 -140 -35 -5 45 95 130 5 и так далее, то есть даже незнаю что и делать.
Код у меня такой, вобщем просто взят из документации:
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);
}
Comentarios (2)
Iniciar sesión o Crear cuenta, Inicie sesión o regístrese para dejar un comentario
В логе ничего не понял. А вот по коду могу сказать, что фильтр на сделки необходимо добавить http://stocksharp.com/doc/help/html/63952fce-6e43-4427-985a-1654e8d9cfc1.htm .
Фильтрацию добавил, но вобщем ничего не поменялось. Лог означает профит сделки, т.е. я ожидаю чтото такое: +30 +30 -10 +30 -10 -10
т.е. видим что убыточные сделки закрываются в -10 пунктов т.е. по стоплоссу, а прибыльные по тейкпрофиту: +30. Конечно такого ожидать можно в идеале, а на практике должны быть отклонения, но я не думал что такие будут большие. Может это из-за повышенной волатильности инструмента такое быть, тестирую на RIH1 ?