4.1.2 Проблемы с удалением правил из стратегии.


4.1.2 Проблемы с удалением правил из стратегии.
Atom
23.07.2012


Не могу разобраться как удалить правило из стратегии после перехода на 4.1.
Для примера возьмем правило которое теперь называется Trader.WhenTimeCome. Если использовать его в качестве таймера который вызывает некий метод раз в секунду то до 4.1 код выглядел примерно так.

Код

nextCall = Trader.MarketTime.AddSecond(1);
this.When.Ttrader.TimeCome(nextCall)
    .Do(Meth);


public void Meth()
{
Rules.Remove(Trader.TimeCome(nextCall);
nextCall = Trader.MarketTime.AddSecond(1);
this.When.Ttrader.TimeCome(nextCall)
    .Do(Meth);
}


Вот как я реализовал этот код в 4.1

Код

nextCall = Trader.MarketTime.AddSecond(1);
this.Trader.WhenTimeCome(nextCall)
    .Do(Meth).Apply(this);


public void Meth()
{
Rules.Remove(Trader.TimeCome(nextCall);
nextCall = Trader.MarketTime.AddSecond(1);
this.Trader.WhenTimeCome(nextCall)
    .Do(Meth);
}


Проблема в том что зарегистрированное правило не удаляется привычным образом, и при регистрации очередного программа падает из-за не обрабатываемого исключения. Добавив вывод на экран значения Rules.Count я пришёл к выводу что у меня не получается уменьшить это значение ни одним из доступных способов(Rules.Remove(); TryRemoveRule(); Rules.Clear())
Подскажите что я делаю не так?

Теги:


Спасибо:


< 1 2 3 
ra81

Фотография
Дата: 21.08.2012
Ответить


esper Перейти

т.е. правил в стратегии больше нет, но стратегия продолжает работать. Версия последняя с codeplex.

Если стратегия останавливается сама по себе, то надо смотреть что она пишет в лог и какие ошибки выдает.


Тогда вопрос на засыпку. У вас там между приходом сделки и остановской стратегии проходит меньше секунды. Вы руками ее останавливаете? Или Она сама останавливается?? Уточните сей момент.

Спасибо:

esper

Фотография
Дата: 21.08.2012
Ответить


ra81 Перейти
Тогда вопрос на засыпку. У вас там между приходом сделки и остановской стратегии проходит меньше секунды. Вы руками ее останавливаете? Или Она сама останавливается?? Уточните сей момент.


В примере она останавливается через 10 вызовов Trader.NewTrades. В принципе, можно это ограничение убрать и стратегия продолжит работать дальше без остановки.
Спасибо:

ra81

Фотография
Дата: 21.08.2012
Ответить


esper Перейти
ra81 Перейти
Тогда вопрос на засыпку. У вас там между приходом сделки и остановской стратегии проходит меньше секунды. Вы руками ее останавливаете? Или Она сама останавливается?? Уточните сей момент.


В примере она останавливается через 10 вызовов Trader.NewTrades. В принципе, можно это ограничение убрать и стратегия продолжит работать дальше без остановки.


Ага вижу. Видимо логика изменилась в новой версии. ФАк. Везде сюрпризы с новой версией. Спасибо за инфу.

Попробуйте сделать так, что правило при приходе свечки просто ничего не делает, вызывает пустой метод. Что покажет? Очень интересно. В старой версии такой ход сразу же завершал работу стратегии потому что правило после отработки удалялось и больше правил не оставалось. Стратегия стопалась.
Спасибо:

esper

Фотография
Дата: 21.08.2012
Ответить


ra81 Перейти
Ага вижу. Видимо логика изменилась в новой версии. ФАк. Везде сюрпризы с новой версией. Спасибо за инфу.

Попробуйте сделать так, что правило при приходе свечки просто ничего не делает, вызывает пустой метод. Что покажет?

Стратегия так же продолжает работать.

ra81 Перейти
Очень интересно. В старой версии такой ход сразу же завершал работу стратегии потому что правило после отработки удалялось и больше правил не оставалось. Стратегия стопалась.

Ошибок никаких не выводилось?
Спасибо: ra81

ra81

Фотография
Дата: 21.08.2012
Ответить


esper Перейти
ra81 Перейти
Ага вижу. Видимо логика изменилась в новой версии. ФАк. Везде сюрпризы с новой версией. Спасибо за инфу.

Попробуйте сделать так, что правило при приходе свечки просто ничего не делает, вызывает пустой метод. Что покажет?

Стратегия так же продолжает работать.

ra81 Перейти
Очень интересно. В старой версии такой ход сразу же завершал работу стратегии потому что правило после отработки удалялось и больше правил не оставалось. Стратегия стопалась.

Ошибок никаких не выводилось?


Нет ошибок не было. Я целое блин исследование провел тогда по части: Как работают долбанные стратегии :).

Видимо поменяли логику. Спасибо за тесты и информацию буду знать. Это важно.
Спасибо:
< 1 2 3 

Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy