Historical quotes can be requested for any period in the past. To request historical quote an URL in the following format is used:
http://ichart.finance.yahoo.com/table.csv?s=MSFT&a=02&b=13&c=2001&g=d&ignore=.csv
The following lists the parameters of this URL
| Parameter | Description |
| s=MSFT | Symbol for quote requested |
| a=02 | Start month of quote requested (Zero based). 00-January, 01-February, 02-March, etc |
| b=13 | Start day of quote requested |
| c=2001 | Start year of quote requested |
| g=d | Frequency of quote requested. Value d here stands for "Daily" |
An example of the returned data is as follows:
Date,Open,High,Low,Close,Volume,Adj Close
2012-05-03,31.88,31.90,31.61,31.76,31501300,31.76
2012-05-02,31.85,31.93,31.64,31.80,37385300,31.80
2012-05-01,32.05,32.34,31.95,32.01,43832300,32.01
2012-04-30,31.98,32.11,31.92,32.02,35697200,32.02
2012-04-27,32.12,32.22,31.88,31.98,41419100,31.98
...
Here's a neat way to download stock data from Yahoo, perhaps into a spreadsheet (so you can play with the data):
http://finance.yahoo.com/d/quotes.csv?s= a BUNCH of STOCK SYMBOLS separated by "+" &f=a bunch of special tags
for example: http://finance.yahoo.com/d/quotes.csv?s=XOM+BBDb.TO+JNJ+MSFT&f=snd1l1yr
where some special tags are:
| a | Ask | a2 | Average Daily Volume | a5 | Ask Size |
| b | Bid | b2 | Ask (Real-time) | b3 | Bid (Real-time) |
| b4 | Book Value | b6 | Bid Size | c | Change & Percent Change |
| c1 | Change | c3 | Commission | c6 | Change (Real-time) |
| c8 | After Hours Change (Real-time) | d | Dividend/Share | d1 | Last Trade Date |
| d2 | Trade Date | e | Earnings/Share | e1 | Error Indication (returned for symbol changed / invalid) |
| e7 | EPS Estimate Current Year | e8 | EPS Estimate Next Year | e9 | EPS Estimate Next Quarter |
| f6 | Float Shares | g | Day's Low | h | Day's High |
| j | 52-week Low | k | 52-week High | g1 | Holdings Gain Percent |
| g3 | Annualized Gain | g4 | Holdings Gain | g5 | Holdings Gain Percent (Real-time) |
| g6 | Holdings Gain (Real-time) | i | More Info | i5 | Order Book (Real-time) |
| j1 | Market Capitalization | j3 | Market Cap (Real-time) | j4 | EBITDA |
| j5 | Change From 52-week Low | j6 | Percent Change From 52-week Low | k1 | Last Trade (Real-time) With Time |
| k2 | Change Percent (Real-time) | k3 | Last Trade Size | k4 | Change From 52-week High |
| k5 | Percebt Change From 52-week High | l | Last Trade (With Time) | l1 | Last Trade (Price Only) |
| l2 | High Limit | l3 | Low Limit | m | Day's Range |
| m2 | Day's Range (Real-time) | m3 | 50-day Moving Average | m4 | 200-day Moving Average |
| m5 | Change From 200-day Moving Average | m6 | Percent Change From 200-day Moving Average | m7 | Change From 50-day Moving Average |
| m8 | Percent Change From 50-day Moving Average | n | Name | n4 | Notes |
| o | Open | p | Previous Close | p1 | Price Paid |
| p2 | Change in Percent | p5 | Price/Sales | p6 | Price/Book |
| q | Ex-Dividend Date | r | P/E Ratio | r1 | Dividend Pay Date |
| r2 | P/E Ratio (Real-time) | r5 | PEG Ratio | r6 | Price/EPS Estimate Current Year |
| r7 | Price/EPS Estimate Next Year | s | Symbol | s1 | Shares Owned |
| s7 | Short Ratio | t1 | Last Trade Time | t6 | Trade Links |
| t7 | Ticker Trend | t8 | 1 yr Target Price | v | Volume |
| v1 | Holdings Value | v7 | Holdings Value (Real-time) | w | 52-week Range |
| w1 | Day's Value Change | w4 | Day's Value Change (Real-time) | x | Stock Exchange |
| y | Dividend Yield |
http://www.jarloo.com/yahoo_finance/