Сеттер у QuotingStrategy.Order

Сеттер у QuotingStrategy.Order
Atom
11/9/2010


Михаил, верните пожалуйста сеттер у QuotingStrategy.Order. У меня котировщик, унаследованный от QuotingStrategy и переопределяющий OnProcess, но использующий вспомогательные методы QuotingStrategy, ему никак без сеттера.

Tags:


Thanks:


Mikhail Sukhov

Avatar
Date: 11/9/2010
Reply


Alter
Михаил, верните пожалуйста сеттер у QuotingStrategy.Order. У меня котировщик, унаследованный от QuotingStrategy и переопределяющий OnProcess, но использующий вспомогательные методы QuotingStrategy, ему никак без сеттера.


Сеттер убрал потому есть два пути. Или напрямую передавать конструктор, или переопределять QuotingStrategy.CreateOrder.
Thanks:

Alter

Avatar
Date: 11/9/2010
Reply


Что-то я не понимаю. Вот у меня в OnProcess вызывается ReRegisterOrder, он возвращает некий newOrder, который потом в случае ошибки пересоздается через CreateOrder и в итоге присваивается свойству Order для следующего цикла котирования. Что мне даст переопределение CreateOrder?
Thanks:

Mikhail Sukhov

Avatar
Date: 11/9/2010
Reply


Alter
Что-то я не понимаю. Вот у меня в OnProcess вызывается ReRegisterOrder, он возвращает некий newOrder, который потом в случае ошибки пересоздается через CreateOrder и в итоге присваивается свойству Order для следующего цикла котирования. Что мне даст переопределение CreateOrder?


Приведите код (хотя бы схематично). Я не все понял.
Thanks:

Alter

Avatar
Date: 11/9/2010
Reply


В OnProcess что-то типа
Code

if (newOrder != null)
{
    Order = newOrder;
}
else if (...)
{
    newOrder = CreateOrder(Order.Direction, Order.Price, GetNewVolume());
}

...

if (CanReRegister(GetNewPrice()))
{
    newOrder = ReRegisterOrder(Order, GetNewPrice, GetNewVolume, IsForts);
    ...
}
Thanks:

Alter

Avatar
Date: 11/9/2010
Reply


Я просто не понимаю, зачем скрывать от наследников сеттер. Пусть он будет protected, но будет.
Thanks:

Mikhail Sukhov

Avatar
Date: 11/9/2010
Reply


Alter
Я просто не понимаю, зачем скрывать от наследников сеттер. Пусть он будет protected, но будет.


Я предложил переопределить QuotingStrategy.CreateOrder, а не Strategy.Order.

Скрывать, чтобы было меньше путей для ошибок. Вот например то, что Вы привели, выглядит на первый взгляд как ошибка. Вы сами переставляете заявку, хотя это нужно чтобы делало котирование, раз уж от него наследуетесь. Попробуйте обойтись базовой логикой. Я подозреваю что переопределение QuotingStrategy.CreateOrder будет как раз в этом случае удобнее, чем установка через сеттер.
Thanks:


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

loading
clippy