Clear Filters
Clear Filters

How do I run this loop to download data from yahoo finance?

3 views (last 30 days)
%Code to Get Matrix
fid=fopen('C:\Users\Laurentiu Galan\Desktop\Tickers2.csv');
C = textscan(fid, '%s');
fclose(fid);
%Grab First Value (Just as check)
thisval=(C{1});
% Calculate Number of Tickers
D=size(thisval);
NumTick=D(1,1);
%Calculate Loop to download tickers
for i:Numtick <--------------Problem
thissym=????????? <--------------Problem
thisurl = strcat('http://ichart.finance.yahoo.com/table.csv?s=', thissym, '&d=10&e=8&f=2011&g=d&a=0&b=1&c=2000&ignore=.csv');
thisdata=urlread(thisurl);
thisfilename = strcat(thissym, '.csv');
outputfile = strcat('C:\Users\Laurentiu Galan\Desktop\tickoutput\',thisfilename);
thisfileid=fopen(outputfile, 'wt')
fprintf(thisfileid, '%s\n',thisdata)
fclose(thisfileid)
How do i make thissym a variable that I can loop to download the data from yahoo finance? Each one of the values in thisval is a ticker.
I really appreciate your help if you can help me out with this!!!

Accepted Answer

Fangjun Jiang
Fangjun Jiang on 12 Nov 2011
for i=1:NumTick
thissym=thisval{i};
To learn more, see the help
help for
help cellstr
help catch
help continue
  4 Comments
Fangjun Jiang
Fangjun Jiang on 12 Nov 2011
You want to save the data to each .csv file according to the symbol name. I don't see any way that you can avoid the for-loop.
Laurentiu Galan
Laurentiu Galan on 13 Nov 2011
thanks fangjun. You solved the question at hand. I am still getting an error related to illegal use of the word catch.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!