Does a DataSet have to be updated before using the Strategy Monitor?
Author: bentonjj
Creation Date: 10/20/2016 4:23 AM
profile picture

bentonjj

#1
If I wanted to run a live strategy against say a dataset comprised of all 500 symbols in the S&P 500 or even all 2,000 in the Russell 2000, (1 minute bars) would I need to update the dataset first before running a strategy in the Strategy Monitor? If I don't need any of the previous data for the live strategy (except for maybe one bar, the last bar of the previous day), is there a way to run the strategy live without having to undergo that massive download of 10 years of 1 minute bars before starting the strategy? As far as I can tell, if you add symbols to a dataset, when you do an update the data provider (Fidelity) gives you everything it has with no way to only backfill only what you would need. I did a test using 100 symbols without updating first, and set the backfill to only 1 bar when starting the strategy, but only symbols that were in another dataset and were up to date were actually acted on.
Also for number of open positions, if I only wanted to have say 5 positions open at once, I would think portfolio mode would be the way to run the strategy, but get a warning saying this could lead to inconsistent trade alerts and should use raw profit mode. If I use raw profit mode, I think it would be possible for the strategy to try and open 500 positions at once if they all signaled a buy around the same time frame.
So basically in the end I was looking for a way to screen a large number of symbols live using 1 minute bars and execute a buy on any that meet the strategy condition (and sell when it reaches an exit condition), but have a maximum number of open positions at one time.
profile picture

Eugene

#2
1 - To avoid the long wait during live trading you just have to create that DataSet and do the initial backfill i.e. update it. Subsequent updates would then take much less time since the data has been cached.

Workaround: or you could perhaps use the free Google data provider and avoid having to backfill because it returns orders of magnitude less data than Fidelity's. AFAIK there shouldn't be a delay as the data is realtime according to Google. Google returns about a month worth of 1-minute data for a stock. Still, it makes sense to create the Google S&P 500 DataSet which would consume less disk space and would backfill faster.

2 - To keep the forum searchable and organized, for essentially different or self-contained questions (like this one) could you please start a new thread (or reuse an existing thread if exists)? Thanks.
profile picture

Cone

#3
Practicalities when using the S. Monitor:

1. Do - limit the data loaded to optimize memory and execution speed of strategies

2. Don't try to run a Strategy in the S. Monitor with more than 100, maybe 200, 1-min symbols. Mileage varies, but getting updates and executing strategies generally will take about 30 seconds for 100 1-min symbols.. more symbols, more delay... too many symbols, the monitor won't be able to keep up.

3., You can use Portfolio mode sizing in the S. Monitor, but not in the "Portfolio" sense. The reason is discussed in the User Guide: Reference > Data Panel > Position Size Control > Operational difference between the Strategy Monitor and Backtester

QUOTE:
looking for a way to screen a large number of symbols..
Things can get complicated very quickly when trading many symbols at 1-minute. Theoretically you can send many Alerts and let the broker's back end reject orders above your buying power. Exit orders that don't have an associated position will error out. However, this would only work for at market entries since you won't be able to enter limit orders that exceed your buying power.

Again, I'd start small (25 to 50 symbols) and work your way up; and discover what is actually practical to trade.
profile picture

bentonjj

#4
Ok thanks, how can I get access to the Google provider? Don't see it in the WLP extension manager and get a permission error when clicking the download button here.
One possible strategy would be to run a screener on a large number of symbols using daily bars to determine which ones could have likely large intraday moves, then create a 1 minute dataset to run an intraday strategy on. Having a provider that would only require loading a couple weeks of bars would make this much easier than having to get around 10 years worth. In the future do you ever see WLP having a "start date" to set on a dataset where only bars going back to the specified date will be retrieved? Or is this a limitation from the provider?
profile picture

Eugene

#5
QUOTE:
Ok thanks, how can I get access to the Google provider?

To get access please create a support ticket to verify your Fidelity WLP entitlement. Thanks.

QUOTE:
In the future do you ever see WLP having a "start date" to set on a dataset where only bars going back to the specified date will be retrieved?

I haven't heard if this has ever ever been planned by Fidelity. From our own experience with a provider that had once supported starting dates (the Yahoo! provider), this feature proved to be a very confusing user experience and also error-prone and finally was decommissioned.
profile picture

Cone

#6
Re: Start Date
Use the Data Range "Date Range" control! You can set the start date of the data loaded in all WLP tools, including the S. Monitor.

It doesn't free you from downloading all the data first, but limiting the range of data loaded when trading live is a must!