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

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


Не могу разобраться как удалить правило из стратегии после перехода на 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