Как правильно выйти из позиции и остановить стратегию?..

Как правильно выйти из позиции и остановить стратегию?..
Atom
4/4/2012
Spiritschaser


Добрый день!

Что-то не совсем понимаю.

Я сделал интрадэй робота на основе SampleSMA. Хочу сделать так, чтобы, если что-то происходит, и P&L становится меньше заданного параметра, позиция ликвидируется, робот останавливается.

Но у меня заявки выставляются с помощью котирования, и если я просто сделаю:
Code

                    if (PnLManager.PnL > 1600 || PnLManager.PnL < -100)
                    {
                        decimal Volume = System.Math.Abs(PositionManager.Position);
                        OrderDirections orderDirection = OrderDirections.Buy;
                        if (PositionManager.Position < 0) { orderDirection = OrderDirections.Buy; }
                        if (PositionManager.Position > 0) { orderDirection = OrderDirections.Sell; }

                        var order = this.CreateOrder(orderDirection, StockSharp.Algo.TraderHelper.GetMarketPrice(Security, orderDirection), Volume);

                        if (PositionManager.Position != 0)
                        {
                            var strategy = new MarketQuotingStrategy(order, new Unit(), new Unit());
                            ChildStrategies.Add(strategy);
                        }

                        PositionManager.Position = 0;
                        Stop();


- то у меня выставится заявка и остановится стратегия, и если рынок уйдёт, заявка не исполнится.

Как мне правильно дожидаться окончания котирования?

Tags:


Thanks:


esper

Avatar
Date: 4/4/2012
Reply


Можно смотреть изменение позиции, как она станет равна 0 - останавливать стратегию.
Thanks: Sergey Masyura

Spiritschaser

Avatar
Date: 4/4/2012
Reply


О, точно. Самое простое и не заметил!
Thanks:

OvcharenkoVI

Avatar
Date: 4/4/2012
Reply


Можно подписаться на изменение состояния стратегии котирования... вроде

strategy.ProcessStateChanged += strategy =>
{
if(strategy.ProcessState == ProcessStates.Stopped)
Stop();
}
Thanks: Johny Cash Sergey Masyura

Spiritschaser

Avatar
Date: 4/4/2012
Reply


Спасибо, по событию всё получилось!
Thanks: OvcharenkoVI

OvcharenkoVI

Avatar
Date: 4/5/2012
Reply


Отлично
Thanks:


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

loading
clippy