fetching data from yahoo
    18 views (last 30 days)
  
       Show older comments
    
    Mervan Aksu
      
 on 18 Apr 2017
  
    
    
    
    
    Edited: Artem Lensky
 on 29 Aug 2018
            Dear all;
When ı try to retrieve historical stock prices data ı receive the following error
Error using yahoo (line 63) Unable to connect or retrieve data from given URL
PS: ı used following to commands to retrieve the data >>conn=yahoo('http://download.finance.yahoo.com'); >>d=fetch(conn,'IBM'); and
>> conn2 = yahoo; >>d=fetch(conn2,'IBM');
Thanks in advence
Kind Regards
Mervan
12 Comments
  Richard Giroux
 on 20 Apr 2017
				
      Edited: Walter Roberson
      
      
 on 21 Apr 2017
  
			Hi all, I tried to connect to yahoo data using any of these today and don't work. Any idea if someone is dealing with this, or how to solve the issue?
Thanks, Richard
>> conn=yahoo('https://download.finance.yahoo.com'); Error using yahoo Unable to connect or retrieve data from given URL.
>> conn=yahoo('http://download.finance.yahoo.com'); Error using yahoo Unable to connect or retrieve data from given URL.
>> conn=yahoo('https://finance.yahoo.com'); Error using yahoo Unable to connect or retrieve data from given URL.
>> conn=yahoo('http://finance.yahoo.com'); Error using yahoo Unable to connect or retrieve data from given URL.
>> conn=yahoo('http://ichart.yahoo.com');Error using yahoo Unable to connect or retrieve data from given URL.
>> conn=yahoo('https://ichart.yahoo.com'); Error using yahoo Unable to connect or retrieve data from given URL.
  hsch1234
 on 22 Apr 2017
				Hi Richard, Forget about the c=yahoo; Just do directly a urlread as Octavio mentions
Accepted Answer
  MathWorks Support Team
    
 on 2 May 2017
        
      Edited: MathWorks Support Team
    
 on 2 May 2017
  
      The MathWorks Support Team recently posted an update on this issue. Here is the answer to save you the click:
“In April 2017, Yahoo introduced some changes in the protocol of their API. These changes prevented the Datafeed Toolbox from connecting to the service. The following webpage contains the workaround for this issue and instructions on how to apply the fix.  https://www.mathworks.com/support/bugreports/1571158 ”
0 Comments
More Answers (8)
  David Holland
      
 on 20 Apr 2017
        Hello David,
My name is Will and I am writing in reference to your Technical Support Case #02539213 regarding 'c=yahoo'.
MATLAB uses Yahoo's API under the hood. Around April 18th Yahoo introduced some changes in the protocol of their API. These changes prevented the Datafeed Toolbox from connecting to the service.
The development team implemented a fix that takes into account those changes, but the fix needs to be applied manually. To apply the fix, follow these steps:
1) Download the attached files: 'yahoo.m' and 'fetch.m'
2) Remove the following file %MATLAB_ROOT%\toolbox\datafeed\datafeed\@yahoo\yahoo.p %MATLAB_ROOT%\toolbox\datafeed\datafeed\@yahoo\fetch.m
where %MATLAB_ROOT% can be found with the following MATLAB command: >> matlabroot
3) Place the downloaded files in the following locations: %MATLAB_ROOT%\toolbox\datafeed\datafeed\@yahoo\yahoo.m %MATLAB_ROOT%\toolbox\datafeed\datafeed\@yahoo\fetch.m
4) Run the following MATLAB command >> rehash toolboxcache >> clear classes  Now you should be able to retrieve historic and current data as usual: >> % Historic data >> d = fetch(yahoo,'IBM','Close','01/01/2012','06/30/2012'); >> d(1:3,:) >> >> % Current data >> fetch(yahoo,'IBM')
10 Comments
  Amit K
      
 on 4 May 2017
				"isstring" function is not available in Pre-R2017a. The above solution works only for the latest version.
  duvnoo222
 on 20 May 2017
				If you download the attachment in the link - https://www.mathworks.com/support/bugreports/1571158 - the files are fetch.m and yahoo.p, not yahoo.m. Is that correct?
Also, I put them into @yahoo and it still doesn't work. The error is (still) "Error using yahoo/fetch (line 387) Unable to return historical data for given security."
Any advice would be helpful.
  tom3w
 on 17 May 2017
        Is there a similar issue today this 5/17/2017? Impossible to load any data from my side. Thanks
6 Comments
  Octavio Garcia
 on 18 May 2017
				These are the 2 link about the Yahoo API related to this problem. I hope they will be wrong and exist someone in YAHOO that put this service back.....but looks like no more intelligent life in Yahoo.
https://yahoo.uservoice.com/forums/382977-finance/suggestions/19310356-https-ichart-finance-yahoo-com-table-csv-s-spy-a
https://yahoo.uservoice.com/forums/382977-finance/suggestions/19307365-ichart-is-off-line
  Denis Alaev
 on 18 Jun 2017
				It seems that after several changes Yahoo Finance closed their API forever, I think that's just Verizon costs cutting strategy and I'm pretty sure this API will not be working again. The API was closed on May 15, one month ago already.
I've tested several alternatives and found that https://eodhistoricaldata.com the best one for those who used Yahoo Finance. They provide raw data, adjusted closes and splits/dividends.
They also have CSV output, with very similar format for Yahoo Finance users, API Documentation and even VBA Examples, you can find them in Knowledgebase.
Also there is a https://intrinio.com/ data provider, looks good, but they much more expensive, have no data for Mutual Funds and API is very different in compare to Yahoo Finance. Then you need to significantly change your code.
  Christopher Reeves
 on 24 May 2017
        It seems that yahoo finance has changed its API. I could not figure out how to fetch from their new API, so I made a script for google instead.
Here is the new function
Cheers
-Chris Reeves (Bayes Quant)
1 Comment
  dpb
      
      
 on 12 Jul 2017
				
      Edited: dpb
      
      
 on 12 Jul 2017
  
			What's the symbol formatting to return mutual fund data? Hand trying at the google site retrieved UNCMX but neither the symbol alone nor 'MUTF:UNCMX' succeed with the function -- "...did not find a resource to match this request."
It does work with the stock symbol so it's not something I fouled up in copying the function over; it is about how to look up mutual fund data instead of stocks...
ADDENDUM
Guess I found an answer -- there appears a difference at the google site when one clicks on historical data for mutual funds a .csv page is brought up but the Export link is not made active as is with stocks--so while the data are available, they're not in the same format as with the ticker data apparently; at least not yet.
I was able to solve the immediate need by a manual download from the Yahoo site...
  Amit K
      
 on 4 May 2017
        Where are the attached files. The solution provided by Mathworks is useless. Unable to replace the yahoo.p file. Just bought the new license and still datafeed/yahoo/fetch does not work.
Amit
1 Comment
  Steven Lord
    
      
 on 5 May 2017
				If following the instructions in the Bug Report linked in the Support team's answer did not work for you, please contact the Support staff using the Contact Us link in the upper-right corner of this page and ask them for further assistance. Let them know that you have tried those instructions and describe what happened (error messages, warning messages, etc.) when you tried.
  Luis Sanchez
 on 21 May 2017
        I appreacite the effort put to solve the bug from a couple months ago.
But this weekend i found another bug.... " Error using yahoo/fetch (line 387) Unable to return historical data for given security "
Any thoughts or solutions?
0 Comments
  free5721
      
 on 28 May 2017
        I first encountered this problem back in April 2017. I used the Matlab fix mentioned above and it resolved the problem. However, now at the end of May 2017 the same (or at least similar) problem has reappeared when fetch is used. Is Matlab support working on a solution to this apparently new problem?
  Artem Lensky
 on 29 Aug 2018
        
      Edited: Artem Lensky
 on 29 Aug 2018
  
      Please check the following code yahoo finance downloader it should be able to download historical data.
0 Comments
See Also
Categories
				Find more on Web Services in Help Center and File Exchange
			
	Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!





















