Missing bars in Fidelity data for FBIOX
Author: rick1222
Creation Date: 4/6/2011 5:10 PM
profile picture


Hi Wealth lab development team

I just discovered that some daily data are missing for some symbols. for example, the FBIOX, data from 3/3 to 3/25 are not there.

4/4/2011 79.37 79.37
4/1/2011 78.89 78.89
3/31/2011 78.47 78.47
3/30/2011 78.08 78.08
3/29/2011 76.74 76.74
3/28/2011 75.28 75.28
3/25/2011 75.54 Missing
3/24/2011 75.38 Missing
3/23/2011 74.32 Missing
3/22/2011 74.33 Missing
3/21/2011 74.65 Missing
3/18/2011 74.18 Missing
3/17/2011 73.92 Missing
3/16/2011 73.59 Missing
3/15/2011 74.44 Missing
3/14/2011 75.25 Missing
3/11/2011 75.67 Missing
3/10/2011 74.86 Missing
3/9/2011 76.06 Missing
3/8/2011 75.79 Missing
3/7/2011 74.99 Missing
3/4/2011 75.57 Missing
3/3/2011 75.39 Missing
3/2/2011 74.28 74.28
3/1/2011 73.69 73.69

How could this happen and what can I do to fill in those missing data?

profile picture


If right-clicking on a FBIOX daily chart and performing Reload Chart History doesn't get the bars back, maybe you could call Fidelity and ask them?

P.S. FAQ: I have a problem with Fidelity data
profile picture


Reload indeed corrected the missing data.

My question for the guru: How can I in script to check if data is missing and then perform an automatic reload?
profile picture


In the Utilities folder, see the Bad History Data Check - Rev A. That's what's required to check the data, which shouldn't normally be required, but it's a good idea to do it before starting a series of backtests. No mechanism exists to cause a reload from a script.

The Rev. A script is far better than the original, and provides a means to delete batches of symbols so that you can reload symbols with errors just by updating. See the Strategy Summary for important instructions.
profile picture


No mechanism exists to cause a reload from a script.

If I'm not mistaken, you could call RequestData(...) after calling ds.Provider.DeleteSymbolDataFile(ds, sym) in "Rev. A"?
profile picture


I wouldn't recommend it unless you want to get caught in an infinite loop. The data can return with errors or it's even possible that the script detects one where there is not (false alarm) and you'd be in a never-ending detect-request cycle. Well, you could add more logic to get out of that, so anyone who's motivated to do that, knock yourself out.