As far as I can tell so far, it seems the Fundamentals and Estimates database updates P123 receives from FactSet happen at a weekly frequency (Monday at 3am), is that correct? How about the Prices database, is that updated daily instead of weekly? I'm a bit confused. I'm curious why the Fundamentals and Estimates databases are updated only weekly instead of daily, since daily updates should be available - was that done to save cost? It's fine if that's the case, I'm just trying to understand.
Is the limitation to weekly Fundamentals/Estimates database updates the reason that Rankings in P123 update weekly instead of daily? I'm a bit confused since it seems like the Price database is updated daily, in which case why not update rankings that depend only on Price at a daily frequency? More generally: is it possible to backtest at daily frequency a trading strategy that depends only the Price data?
If you rebalanced a PORT today (on a Friday) probably every feature in your ranking system and buy/sell rules would have been FULLY UPDATED overnight. The exceptions to this are few. Others could probably be more exact on the few features that are updated only once per week (Monday at 3 AM) for ports.
Sims and backtests are different. So it's possible to do things in a port that cannot be backtested in a sim. What, exactly, can be done in a sim is more complex and probably best explained by P123. But I think you are right, some things like price can be updated in the buy/sell rules when the Sim rebalance is set to daily.
@jrinne Want to be sure I understand your terminology. When you say PORT - is that the same thing as a Screen Backtest? I understand there's a difference between Simulation and Screen Backtest in P123, but not sure what you mean by PORT.
At this time I'm only interested in Screen Backtest; once I get the hang of that I may try the more complex Simulation.
I think of a port as a live version of a sim. Not a screen or a screen backtest. But also now that you mention it if you ran a screen today it will use features that were updated overnight (again with few exceptions).
But the (screen) backtest will be limited just as a sim backtest will be limited. You can think of it as not all the information available to you today will be saved on a hard-drive when you run a backtest in the future. Or more accurately Factset probably will save all of today's data but P123 will have to pay extra to have access to it.
But today, screens and ports have a lot of good data. Data that was updated overnight. Backtests are more limited. Historical data is limited.
@Jrinne Hmmm that's interesting but also confusing. It sounds like P123 must have access to the most recent nightly updates from FactSet, otherwise how could a screen or live sim (port) have a lot of good data (updated overnight)? And if they do have such access, why can't they save the nightly snapshots themselves, at least after 2020 which is when they started with FactSet? They've said they do use such a saved snapshot approach to avoid look-ahead bias in preliminary earnings data collected after 2020.
Agreed. Complex. They do “snapshots” but they have licensing agreements etc. Maybe P123 wants to give you the details on some of that. But as far as what you can do now that is how I understand it.
I don't think this is correct. But I'm not sure what you're saying here. Are you saying that P123 somehow doesn't have access to the daily data that it displays in live strategies and screens due to some limitation imposed by FactSet? If so, that's not at all the case.
@yuvaltaylor I started this thread because I'm confused about why Rank Date always seems to be on a Saturday in a backtest, even when I select Rebalance Frequency = Every Day. Also, if I select Every Week for Rebalance Frequency, the rank date is always on Saturday, regardless of what day of the week the backtest period starts on. For example, rebalance transactions might always occur on Wednesdays but the Rank Date is the previous Saturday.
I think, a backtest set to rebalance daily and rebalancing on a Friday is using Monday’s data for the ranking system (using FactSet data). Correct me if I got that wrong.
I am also aware that it maybe is different in the buy/sell rules of a backtest. But I am not entirely clear how it does work in the buy/sell rules as I said above. I think others may be unsure about this also. I would appreciate clarification on this.
Are you saying the reason ranks are updated only weekly for a Sim or backtest is not a FactSet data issue and you actually have that data available? If so it’s just compute resources and some programming preventing daily updates of the ranks in a sim? I did assume you would already be updating ranks daily if there were not a data licensing issue. It’s looking like that may have been a bad assumption in my part.
In backtests, Portfolio123 only ranks stocks once a week because ranking daily would take five times as long and use up five times as many resources. This has been the case for decades.
Ranks are done once a week but if the user chooses daily rebalancing, buy/sell rules are checked daily. Of course, if all the buy and sell rules depend on rank, then it won't make any difference.
No problem; we all make a few bad assumptions. There's no data licensing issue here. Enabling daily rebalancing in screens and simulations is being seriously considered.
@yuvaltaylor Ok, thanks for the reply, but I'm still wondering: even if ranking frequency is limited to once per week to conserve P123's compute resources, why does it always have to be on a Saturday? For a backtest that rebalances on Fridays, for instance, it would make a lot more sense for ranking to be done on Thursdays.
The default setting for weekly backtests is Monday, for obvious reasons. I believe ranking is actually done very early Monday morning, even though it says it's Saturday. (I might be wrong.) Perhaps it would be better to allow users to set their own day for ranking and reconstitution/rebalancing. You could put that in a feature request.
@yuvaltaylor Ok, I think I will put in a feature request. If all P123 backtests are effectively forced to rebalance on Mondays, there's no way to address what Corey Hoffstein refers to as "rebalance timing luck". For strategies that rebalance weekly, it would be desirable to average the backtest results over 5 equivalent versions, where each version rebalances on a different weekday (M, T, W, Th, F) and the Rank Date is one day prior to the Transaction Date.
I suspect many strategies will show large performance variations over these 5 equivalent versions due to rebalance timing luck. Frankly I'm surprised nobody has asked for this before.... not sure how the feature request system works here, perhaps this has already been requested.
Hi, could we specify which features are updated on monday 3am? I have always thought that the update was on saturdays, so I have been operating with the signals on sundays. This might changed completaly my rutine.
thanks.