#25728 - Thu Apr 14 2011 12:17 PM
Stateful стратегии или стратегии с состоянием?
|
enthusiast
Registered: Mon Jan 10 2011
Записи: 251
|
Каким образом можно правильно, с точки зрения TSLab, организовать работу стратегии с состоянием? Мне нужно сохранять некоторую рассчитанную информацию между вызовами. Каждый раз ее рассчитывать не дешево по cpu и памяти?
|
|
Наверх
|
|
|
|
#25741 - Thu Apr 14 2011 01:04 PM
Re: Stateful стратегии или стратегии с состоянием?
[Re: Sherman81]
|
member
Registered: Wed Feb 02 2011
Записи: 116
|
в коде есть доступ к кешу
IList<double> high = ctx.GetData("Highest", new[] {HighPeriod.ToString()}, delegate { return Series.Highest(source.HighPrices, HighPeriod); });
поглядите пример по созданию скрипта в справке.
|
|
Наверх
|
|
|
|
#25763 - Thu Apr 14 2011 01:56 PM
Re: Stateful стратегии или стратегии с состоянием?
[Re: Nektodron]
|
enthusiast
Registered: Mon Jan 10 2011
Записи: 251
|
Очень жаль. И возможности написать свой ISource а точнее декоратор с кэшем к другому ISource тоже нет?
Отредактировано Sherman81 (Thu Apr 14 2011 01:57 PM)
|
|
Наверх
|
|
|
|
#25765 - Thu Apr 14 2011 02:01 PM
Re: Stateful стратегии или стратегии с состоянием?
[Re: Nektodron]
|
enthusiast
Registered: Mon Jan 10 2011
Записи: 251
|
Ну в принципе, нужна просто область памяти, где можно было бы разместить свои данные, вот и все. Естественно, что в этом случае вся забота о thread safety и прочих технических вещах ложится на программиста. Я могу попробовать конечно использовать внешний storage, но тогда будет оверхед на сериализацию данных.
Мне это нужно для того, чтобы не пересчитывать на каждом тике кучу предыдущих тиков(в зависимости от объема там может быть и 1 тик и десятки тысяч).
Ну и более компактное представление тиков было бы тоже неплохо сделать, что в общем-то не сложно, если можно было бы написать свой DataSource.
|
|
Наверх
|
|
|
|
#26053 - Mon Apr 18 2011 06:32 PM
Re: Stateful стратегии или стратегии с состоянием?
[Re: Nektodron]
|
enthusiast
Registered: Mon Jan 10 2011
Записи: 251
|
Ну если мы говорим про кэш, то вот такого интерфейса было бы вполне достаточно. https://github.com/sherman/onTSLab/tree/master/src/trading/cacheЯ не знаток c#, наверное можно написать и более просто. Например, я не знаю как правильно хранить null в таким случаях вместо default value для value types.
Отредактировано Sherman81 (Mon Apr 18 2011 06:33 PM)
|
|
Наверх
|
|
|
|
#26066 - Mon Apr 18 2011 09:08 PM
Re: Stateful стратегии или стратегии с состоянием?
[Re: Sherman81]
|
stranger
Registered: Mon Apr 18 2011
Записи: 3
|
Каким образом можно правильно, с точки зрения TSLab, организовать работу стратегии с состоянием? Мне нужно сохранять некоторую рассчитанную информацию между вызовами. Каждый раз ее рассчитывать не дешево по cpu и памяти? Извините, что вмешиваюсь с возможно глупым предложением. Просто интересно новичку. А нельзя ли просто в файл сохранить? Обычными методами c# из скрипта? Вообще можно ли использовать в скрипте System.IO?
|
|
Наверх
|
|
|
|
#26075 - Mon Apr 18 2011 11:53 PM
Re: Stateful стратегии или стратегии с состоянием?
[Re: GreenDo]
|
enthusiast
Registered: Mon Jan 10 2011
Записи: 251
|
В файл можно, но надо еще замерить насколько это будет быстро. Дело в том, что там же пересчет несколько раз в секунду, а сериализция не бесплатна.
|
|
Наверх
|
|
|
|
|
|