Fidelity Fundamental data update result depends on Update option
Author: bobydesi123
Creation Date: 9/27/2013 10:25 AM
profile picture

bobydesi123

#1
Hi,
When I update my fidelity price and fundamental data using:
Data Manager=> Update Data ( enable 'fidelity historic data' and all of the 'fidelity Fundamental' data option) => 'Update all the data for the selected provider now', most recent fundamental data such as recent EPS does not get updated.
However if i individually select a dataset and do update:
Data Manager=>DataSets (select a data set)=>Update dataset, most recent fundamental data such as EPS gets updated.
Why is that?
I know that i have many datasets containing the same symbol/s but that shouldn't matter as the WLP keeps only one copy of the .WL and .WLF file for each symbol.
profile picture

Eugene

#2
Because you did not enable the option "Also Update Symbols that you accessed, but are not contained in DataSets". And the symbol you're accessing is not contained in your selected DataSet. See the WL User Guide > Data > Data Manager > Update Data.
profile picture

bobydesi123

#3
Eugene,
Thanks for your response. I have "Also Update Symbols that you accessed, but are not contained in DataSets" enabled. Besides, the symbols whose fundamental data (e.g. EPS) aren't updated are in a dataset.
Other thing i have noticed is this. I have a dataset created for foreign stocks using the BB Free Static provider. When I update data with only "fidelity fundamental data" selected. The WLP/fidelity tries to update the fundamental data for the BB Free Static provider, WLP gives the error:
for e.g. "AISG:IN Provider does not recognize symbol"...AISG:IN is in the BB Free Static provider dataset. Shouldn't the WLP only try to update the fidelity datasets only?

I am away from my workstation that has WLP. I will upload the before/after chart image once i have access to my WLP.
Thanks.
profile picture

Eugene

#4
QUOTE:
Shouldn't the WLP only try to update the fidelity datasets only?

Absolutely not, because each provider is individual. When in "Update All Data" mode, fundamental providers will try to request data for all symbols from all DataSets by all included providers.

Moreover, the Fidelity fundamental providers will return an error message (like you just described) when a symbol is not recognized but all others will not. They will indicate a successful update of AISG:IN data, but no data will be downloaded/updated actually.
profile picture

bobydesi123

#5
This are my before and after pictures. Is it possible that when the fidelity updates the data it checks to see if the price history is up to date and then doesn't bother to check if fundamental data are up to date or not?Is it ok for me to add the attachment like i have? Or do you want me to link to an image on imageshack or something like that.


BeforeDataUpdate.JPG => Chart before/after fidelity update.


DataManager.JPG => datamanager


UpdateCompleted.JPG => Update all fidelity datasets


ManualDataSetUpdate.JPG => doing individual dataset update


AfterManulDatasetUpdate.JPG => chart after the manual dataset update which shows the EPS


Folder containing RHT.JPG => the folder that has RHT data
profile picture

Cone

#6
Back to the original post about updating fundamental data: Provider update vs. DataSet update. There is no difference in what is requested. The difference must be when you requested it, and/or which server in the farm the request hits. All servers should have the same data, and we'll assume it's the case here, so let's concentrate on "when".

Background: It can take up to 2 weeks (maybe more) for the complete set of fundamental data to be updated following an earnings event. Some items may be updated before others. This is why the Fidelity Fundamental Provider will continue to refresh (re-request) a symbol's fundamental data for up to 4 weeks (I think) following an earnings event.

Consequently, what may have happened is that you were focusing on a symbol (call it ABC) who recently reported earnings. One day you performed a Provider update (all symbols for selected Providers), but some items for ABC were still missing updates, like EPS. The next day, you noticed the missing items and performed an update for just the DataSet that contains ABC. This time, the recent and previously-missing fundamental items were available. Does that sound plausible?

The thing to take away is that you cannot count on fundamental data being available immediately following an earnings event. And, even if some items are updated, others may not be - for up to 2 weeks following earnings.

---------------------------------
Edit: I had typed that response yesterday, but didn't manage to post it until now :)

QUOTE:
Is it possible that when the fidelity updates the data it checks to see if the price history is up to date and then doesn't bother to check if fundamental data are up to date or not?
It's possible, but it's not the case. It's pretty easy to check just by updating only your Price Provider first, and then select both Price and Fundamental for update. You'll see the Fundamental Provider update [most] symbols based on what I previously explained.

What were you trying to show with the images? The only thing I see is that you're updating too early after the market closes, which means that Daily DataSets won't have corrections applied for the most recent session. For more about this see: http://www.wealth-lab.com/Forum/Posts/Fidelity-Static-Provider-Data-Corrections-32260

Also, note that once you update a symbol's price data, the Fidelity Price Provider will not attempt to update again until after the next market session. This prevents unnecessary on-demand data requests when backtesting, but at the same time makes it impossible to update price data more than once (which might be necessary).
profile picture

bobydesi123

#7
Cone,
The images i showed was of the update that was done on saturday, sept. 29, a day after market close.
My original question were:
1. Data Manager=> Update Data ( enable 'fidelity historic data' and all of the 'fidelity Fundamental' data option) => 'Update all the data for the selected provider now', most recent fundamental data such as recent EPS does not get updated.
2.When I do Data Manager=>DataSets (select a data set)=>Update dataset, most recent fundamental data such as EPS gets updated.
Why is that?
Here is an another example. Updates done @10am, sep29



1. AZO_AfterFidelityUdateAllData => Chart after the :Data Manager=> Update Data ( enable 'fidelity historic data' and all of the 'fidelity Fundamental' data option) => 'Update all the data for the selected provider now'



2. AZO_UpdateTheDataSet => this image shows that i am updating the individual dataset that has AZO.



3. AZO_AfterManualDataSetUpdate , chart after step 2. The EPS is now shown.

profile picture

Cone

#8
I've just spent a good amount of time looking into this, and I can see what you're saying, but I can't explain why that happened in your case. My observations don't corroborate yours - in fact, I found a case that may be just the opposite.

First, I stripped down my DataSets to only one set with 8 symbols of companies who reported earnings last Friday. Next, I did a Fidelity Provider update:

CODE:
Please log in to see this code.
Although data were requested for MTN and NTZ, none were returned - none for last Friday (or ever). Remember, the Fidelity fundamental provider should update the last 6 rolling years, so that's 24 items (if available) any time that a Fundamental update occurs. Data for some symbols apparently are not covered by the third party provider (Wall Street On Demand).

Prior to the update, I already had updated fundamental data for AZZ and BBRY, and these events were already shown in the chart. However, events for the other symbols were not. After the update, EPS was shown for GAI, SSY, and USAT. In other words, even though TPI updated, new data were not shown in chart - only the previous data were refreshed. Since I enabled logging, I can see the dates of the earnings that were received: <earnings_report_date>19000101 19000101 20080214 20080515 20080929 20081110 20090217 20090515 20090924 20091113 20100208 20100511 20100929 20101110 20110211 20110516 20110927 20111114 20120213 20120515 20120928 20121114 20130214 20130515</earnings_report_date> (Presumably, earnings before 20080214 don't exist.)

Next, the DataSet Update

CODE:
Please log in to see this code.
Pretty much the same result, however, it's curious that data were not returned for TPI - I can't explain why they weren't returned, only that the data were requested and none were returned: <input_symbol>TPI</input_symbol><record_count>0</record_count>

However, if the TPI case is what you're seeing, it's not related to the update type - because in my case, the data were not returned for the DataSet update, not the Provider update. This points to points to an issue on the server end or on the server farm, i.e., data for TPI existed on one server but not another.

I can try to follow up on this if you create a support ticket.
profile picture

bobydesi123

#9
Hi Cone,
I have just created a support ticket.
I have a hunch that fundamental data update(EPS) seems to have problem only with symbols (whose EPS is being announced on the same day) i am charting/streming untill EOD. e.g. I was streaming/charting AHPI DMND FARM JRJC PAYX PTN QBAK RLGT whose EPS was announced after the market close today. I know it sounds unlikely but Fidelity=> update all data for the data provider, does update some symbols. I seem to have problem with the symbols i have been charting/streaming till EOD, though I can't be sure it as i haven't done enough experimentation.
Thank you for your quick response. I sometimes wonder if you and Eugene are online 24/7 or may be you have many avatars. :)
profile picture

Cone

#10
I also think Eugene has many avatars, but since I have kids, I'm definitely not here 24/7! :)
profile picture

Cone

#11
QUOTE:
I seem to have problem with the symbols i have been charting/streaming till EOD
A daily chart that was streamed wouldn't be cached by the Static Provider for the current session, and Fundamental data is never requested on-demand, so I don't think either could be an issue here. I really think it must be a difference in when the servers are populated with the data and which server the request hits.

As we saw in my test, I got data back for TPI for the Provider Update but moments later did not get data for the next request during a DataSet Update. Today, the DataSet update returns data for TPI, but also for NTZ, which did not return data for either request yesterday.

CODE:
Please log in to see this code.

Again, past experience shows that it can take up to 2 weeks (and in some cases 4 weeks) for some data to make it way to the servers for the most-recent earnings announcement. However, I didn't get any data for NTZ until today's request, even though it clearly has a history that should have already been available. Likewise, TPI was essentially hit, miss, hit. MTN should be returning a Fundamental data history, even if it's not the most recent. These results tell me there's an issue on the server end.

profile picture

Eugene

#12
QUOTE:
I really think it must be a difference in when the servers are populated with the data and which server the request hits.

+1
profile picture

bobydesi123

#13
So you think, that 'UpDate All Data' request hits different server than when one updates 'individual daset'? From what I have observed, the updates 'individual daset' seems to gets the EPS information the next day. e.g. I did manual update on DMND & PAYX that had announced the EPS after market close yesterday (sept. 30). I did manual data set update and EPS is shown on the daily chart. However, this is not a conclusive proof as I do 'UpDate All Data' at EOD that i haven't done yet for today. I did do 'UpDate All Data' yesterday at 10pm but i don't expect the fidelity to have updated their servers with the EPS data by 10pm yesterday.
P.S. Thank you for clarifying the EPS calculation, ATP help does not indicate it as you had suggested.
profile picture

Eugene

#14
QUOTE:
So you think, that 'UpDate All Data' request hits different server than when one updates 'individual daset'?

In theory, a fundamental data provider's behavior can depend on what initiated the data update, "Update DataSet" or "Update All Data". I'm not aware if it applies here, though.
This website uses cookies to improve your experience. We'll assume you're ok with that, but you can opt-out if you wish (Read more).