I have released version 3.0 of MSMoneyQuotes which uses Microsoft's newest quote service.
Thanks to everyone who has donated and helped test the new version.
I've put in hundreds of hours on nights and weekends to reverse-engineer Microsoft's new quote service, re-write much of the code, test the updates, and update my website.
I hope it serves us well for a long time.
Testing is well underway and many good issues have been found and fixed. Things are looking very promising!
One of the problems with Microsoft's new auto-complete, which is used by MSMoneyQuotes to automatically "resolve" symbols, is that it doesn't seem to support ISIN. So I think many customers will have to start using the SymbolMap feature to manually map their MS Money symbols to Instrument IDs.
Also, to help customers update their SymbolMap by replacing "old" Financial Instruments with the "new" Instrument IDs, I've created a new mapping page:
Map a Financial Instrument to an Instrument ID
I finally have a working version of MSMoneyQuotes that I'm testing now. I will also probably ask a few customers to help test once I'm ready.
I have released an updated version of the Excel Quotes Add-In that is now working again using the new quote service.
I will begin work on MSNMoneyQuotes now.
I have a working version of the Excel Add-In that I'm testing now. The new quote service is completely different and uses a different ID to lookup quotes. Some fields are not easily available like EPS, Beta and Dividend Yield.
It's using something that seems to be called the "Instrument ID" instead of the old "Financial Instrument". The Instrument ID appears to be a Microsoft generated ID, while the Financial Instrument is from Morningstar.
I have re-written my Financial Instrument Search Page to use the new auto-complete quote service that returns the Instrument ID.
This Instrument ID also shows up in URLs. For example, Microsoft's Instrument ID is a1xzim, and the MSN Money URL is https://www.msn.com/en-us/money/stockdetails/fi-a1xzim
Going forward, both MSMoneyQuotes and Excel Quotes Add-In will need to use Instrument IDs instead of Financial Instruments. This will require customers to update all places that reference a Financial Instrument to the corresponding Instrument ID (e.g. SymbolMap, or in Excel).
Once I complete testing, update all the documentation, etc, I'll release a new version of the Excel Quotes Add-In. And at that point, I'll turn my attention to working on updating MSMoneyQuotes.
I’m in the process of reverse-engineering the new quote service. It’s a time-consuming and tedious process. I’m working on it in my limited spare time on nights and weekends. Currently, I believe I’ll be able to use the new quote service to replace the old one. However, there are some fields that may not be available. I’m starting with the Excel Add-In because it’s written in a much more modern way than MSMoneyQuotes, making it much easier to re-write. MSMoneyQuotes is written in Win32/C++ (so it can interact with MS Money), which is 30+ year old technology, making it a much bigger challenge.
I have found out that Microsoft has decommissioned the quote services that power MSMoneyQuotes and the Excel Add-In. They are currently on life support and may completely stop working any day. While some quotes continue to work, many people have noticed things like ETFs are no longer working. They have switched their MSN Money Windows 10/11 app to a new quotes service which uses a totally different format, so it no longer uses the quote services my tools are using. While I'm not a Microsoft employee, I've heard that this area of the company is receiving little attention and there is no team currently truly owning and supporting the previous quote services. I will begin investigation into if its possible to use the new quote services. But as I said, they use a totally different format. They're no longer using the "Financial Instrument" identifiers that my tools currently use. This will mean a ton of work for me to switch over to the new services. And if I am successful at switching over to the new quote services, it would also mean customers may have some work to do to transition to the new format. Sorry I’m unable to personally respond to the hundreds of emails I’ve received.
I have updated MSMoneyQuotes to handle the "GBp" pence/pounds issue and released Version 2.5. Please go to the existing customer download page to get the update.
After spending more time with Microsoft's new quote services, I have found several problems that may require your attention to get MSMoneyQuotes working again.
A few updates. I have a fix for the "GBp" pence vs. pounds issue. I've sent it out to a number of UK users to test. In the meantime, UK users can use the "Currency Override" feature available in version 2.4 to specify GBX for those securities with prices in pence. That will work around the issue (See the -m SymbolMap option here).
I'm also investigating a few other issues, and when ready, I'll release a new version (2.5). It's a lot of work to release a new version, so I want to take a little extra time to test and make sure I catch everything before going through the process.
Microsoft changed thier "Search" functionality which MSMoneyQuotes uses to resolve symbols. Also, you can no longer find the financial instrument by inspecting the URLs on MSN Money. This is causing problems for many people. To address, I've created a new Financial Instrument Search Page you can use to find Financial Instruments and use them in your SymbolMap.csv file. This should allow to you get quotes working for the ones that MSMoneyQuotes isn't automatically resolving.
Some people are saying they still receive the error message "Failed to update quotes. Failed to fetch quotes from MSN Money" with version 2.4. So far, it looks like this is caused by anti-virus software preventing MSMoneyQuotes from making calls to the internet. To fix, please whitelist MSMoneyQuotes in your anti-virus software.
Lasty, I want to thank everyone for your donations. I've spent pretty much all of my "spare time" working on this over the last week, so the donations really help. I'm doing my best to address the situation as quickly as possible. Thanks again.
Looks like Microsoft changed how it reports the ISO currency code for UK securities. In short, it looks like sometimes it's returning "GBp" (yes, lower-case p) for pence instead of GBX. This of course is breaking MSMoneyQuotes since it upper-cases the currency code and thus thinks the prices are in "GBP" (pounds).
So if you're a UK user with pounds/pence in your porfolio, please hold off until I investigate this problem.
I have updated MSMoneyQuotes to work with Microsoft’s new quote web services and have released Version 2.4 with the changes. Please go to the existing customer download page to get the update.
Quotes seem to be working mostly the same as before. However, its seems Microsoft has changed (or maybe broken) their “search” functionality. For example, if I go to MSN Money and type “Dow” or “Nasdaq” in the search box, it doesn’t find them. It appears like they’ve removed common indexes from the search results. The Windows 10 app and the iPhone MSN Money app have the same behavior.
Unfortunately MSMoneyQuotes uses this “search” to resolve symbols - mapping the symbols in your Money file to financial instruments that MSN Money understands. And the Excel Add-In uses this search functionality as well to lookup financial instruments
I’m investigating if there’s any workaround. But chances are, Microsoft will either have to fix, or we’ll have to compile a list of financial instruments for all the indexes we care about and I’ll place the list on my site. For those of you who have already created a SymbolMap.csv file, then this shouldn’t affect you as you already have the proper financial instruments. But for those of you who still rely on resolving symbols every time you run, then MSMoneyQuotes will likely not be able to resolve indexes. Likewise, it won’t find them if you try to search for them in the Excel Add-In.
With that said, I wanted to go ahead and release 2.4 because all the code is finalized and there’s nothing more I can do code-wise to address this “search” issue.
Note: Because the program is updated and freshly compiled, your anti-virus software may flag it as malware since it doesn't recognize it. I've submitted to various tools like Microsoft Defender to get it cleared, but it usually takes a few days for it to be scanned and added to thier whitelist.
I have spent the weekend reverse-engineering the new Microsoft Quote Web Services. On a positive note, I was able to update my Excel Add-In with the changes. Please download the new version and you should be able to get quotes again in Excel.
As for MSMoneyQuotes, it will be a lot more difficult to update. The Excel Add-In is writen in .NET/C# and is more easily adaptable based on it's architecture. Unfortunately MSMoneyQuotes is written in 25 year old Win32/C++ technology and it's architecture is much more difficult to change due to how it has to interact with MS Money.
With that said, I do think it will be possible to get MSMoneyQuotes working again with the new quote services. It's just simply going to require a lot of work and time. I'm working on it...
Note: Many people have ripped me because they say quotes are working when they go to the MSN Money website, but not my programs. Without going into too much detail, my programs do NOT screen scrape the MSN Money website. Instead, my programs must call a "web services", which are HTTPS-based APIs that client/desktop applications have to call to communicate with Microsoft's web servers to programmatically get quotes. These APIs (or as I call them, Quote Web Services) are built to power Microsoft's client/desktop apps like thier mobile apps. They are not designed/built to power my programs, therefore I must do a lot of work to reverse-engineer the request/response requirements, the data structures and ultimately "massage" the data to fit the needs of my programs. The MSN Money website does not use these APIs...the website is running on Microsoft's web servers and talk directly to thier quote database. As a result, the MSN Money website uses a different path to get quotes. So yes, quotes may work on the MSN Money website and not work for other client/desktop applicatons (including Microsoft's own client apps!). Recently it appears Microsoft turned off a bunch of quote services that powered thier original Windows 8/8.1 Finance app - probably related to this announcement. This is what is breaking my programs and Microsoft's own programs.
Lastly, I've received 1000's of emails. I can't reply to each of you individually. Sorry.
My inbox was flooded again today indicating MSMoneyQuotes and the Excel Add-In are failing to get quotes. (Sorry, I can't possibly reply to all the emails). Looks like the Microsoft quote services are down once again. Like last time, the MSN Money app on my iPhone is broken too.
Hopefully they resolve. If not, I'll begin the investigation to see if it's somehow possible to consume the new set of quote services (assuming those are sticking around for a while).
Sorry, what Microsoft does is beyond my control.
As of today, the quote services seem to be working again! Yesterday, requests to the quote services returned a 404, meaning Microsoft removed the services. Microsoft must have re-deployed them and so my programs will work again.
My guess is they realized they broke existing apps by removing the quote services. For example, the MSN Money app on my iPhone was also broken as a result of Microsoft removing the quote services.
Let's keep an eye on things to see if they continue to work.
Many of you have emailed me to let me know MSMoneyQuotes and the Excel Quotes Add-In stopped working in the last day or two. I have investigated tonight, and unfortunately Microsoft has completely changed their quotes services.
My programs leverage the same quote web services that power the Windows 10/iOS/Android Money app (the apps you download from the Windows/Apple/Google Play store). It appears they’ve discontinued the quote web services my programs were using and replaced with totally new ones. The bad news is these new quote web services are dramatically different compared to the old ones. It’s very tricky, because these quote services are tailored towards the specific needs of Microsoft’s apps, not the needs of MSMoneyQuotes. For example, MSMoneyQuotes relies on the “last sale date” so it knows what date to use to store the price quote in Money – and the new quote services don’t return this data.
Also note, I’m not affiliated with Microsoft any longer, nor do a I have any contacts that can help me with the new quote services. I don't have specs or documentation for how they work. I will have to spend a lot of time reverse engineering the new quote services to see if I can use them in my programs. If yes, then I foresee a significant time investment to update both programs to accommodate the changes.
Sorry, I can't control what Microsoft does. My programs are totally at their mercy :(
I will update this page as I go through this journey. Stay tuned.