I just posted this to the google groups list but also wanted to get people's opinion here.
-------
Over the next week or so, I'd like to wrap up one of the last major pieces of functionality that I need to complete my own trading strategy. For that, I want to add a StrategyInstrumentSource which will supply a list of instruments for a given strategy at runtime instead of at design time. One popular example would be strategies which trade gaps. The StrategyInstrumentSource would scan and parse several web pages to construct a list of 5-40 stocks which are gapping and then the TrueTrade framework would instantiate all of the required strategies and other support classes to manage them. I think this could be a popular feature and I've had several people request it.
Before I start coding, I'd like to get a better handle on the requirements. If this feature is of use to you, what design features are important to you in StrategyInstrumentSource? E.g.:
* Push/Pull? Should the SIS be polled to return a list of instruments at startup time, or should it manually push a list of instruments as soon as they become available? (I'm leaning towards the push approach since several sources of gappers may not be available for 15-30 minutes after market open and not being able to start TrueTrade until this time would have a negative impact on other strategies.)
* Backtesting integration? How should strategies with a SIS be backtested? Should the strategies have instruments added as usual, but if there is an SIS present then any saved instruments will be ignored? Should the strategy check the SIS even during backtesting? (I'm leaning towards the former just for simplicity.)
* Should the SIS be able to withdraw an instrument at runtime?
If you have any requirements, please go to issue 39 and leave your comments there:
http://code.google.com/p/truetrade/issues/detail?id=39
thanks.