What has changed
The API is gone. The new downloads need 1st to parse the Yahoo Finance page to find a hidden crumb and use it as the key for data retrieval over a 2nd URL.
The adjusted close is sometimes the adjusted, sometimes is the non-adjusted and sometimes is a different value
Lines with literally "null" as the value for the prices have been ...
For a stock market-listed security, volume typically represents the number of shares traded. The amount of money involved is called turnover or dollar volume.
A further complication to this relates to the rules of each exchange. Only certain types of trades/trade conditions affect the price of the security. Similarly, only certain types of trades/trade ...
Yahoo has changed their site structure. The new download URLs look like this:
These links originate from pages like this: https://finance.yahoo.com/quote/MSFT/history?period1=1463461200&period2=...
It gets its data from https://finance.yahoo.com/lookup/.
Please note: it is not possible to get all the symbols due to limitations set by Yahoo. About 75%-90% of all symbols are gathered using this script depending on type
You need returns for 36 months, in particular data from 37 months. Yahoo also uses unadjusted closing prices for the reference index as far as i know. The data from 8/1/2015 got to be an error, I checked multiply data sources and found no similarities. After interpolating that point i got a beta of 0.48.
Your best shot is really to get WRDS. If you get access you can replicate their research in few minutes (there is SAS code out there).
It's unlikely that you will be given the data for free. That data is actually expensive. That being said, any university with an econ of finance department has access to that data and gives it to students for free. So if you ...
I've used various data sources (including Yahoo) and their data is sometimes wrong. You can write code for sniffing out the errors. For all providers I've had to add "cleaners" to look for errors and make adjustments. If you use Google Finance etc you'll have random errors too. If you're making a private database then the adjustments need to be tracked in a ...
On the website interface, you can get a CEF's NAV by circumfixing X-...-X (prefix & suffix) to the ticker. For example, the NAV time series ticker corresponding to the PDI price series is XPDIX. Or, XBTZX (NAV), BTZ (price). That might work for you.
As can be seen from this example from Yahoo!Finance this should not happen (click on "+ The adjusted close"):
Another more complete example can be found here:
So my explanation is that this is a glitch in ...
Yes there is no data for 133. If you want to know which sectors have data try this
select * from yahoo.finance.industry where id in (select industry.id from yahoo.finance.sectors)
For example sector 111 has data
<industry id="111" name="Synthetics">
<company name="American Nano Silicon Technolo" symbol="ANNO"/>
You can download all the company names and values and a lot of other stuff from the Nasdaq or NYSE via http://www.nasdaq.com/screening/company-list.aspx in .csv , then you can process that with df = pd.read_csv(Filename.csv)
Python version of Brian's R code:
Brian's code automatically grabs the first expense ratio it finds, which is the one you wanted. This version is a little more explicit.
import urllib2, re
stockSymbols = [ "VDIGX", "VFIAX" ]
expenses = [ [ "Fund", "Most Recent Expense Ratio" ] ]
for stockSymbol in stockSymbols:
page = urllib2.urlopen("http://finance....
My actual area of research is equity securities, however, I was once called upon to evaluate an algorithm for fx trading as part of a due diligence. FX isn't centrally traded. There isn't a single feed. They cannot match because there isn't a unified price. It will gum up your regression. It is probably impossible to find out where they are getting ...
Prices (and potentially volumes) have been adjusted for historical corporate actions. For example, if there was a 10:1 split in the past, then todays share is equivalent to 1/10th of a share before the split. This is the correct way to view price/volume time series.
Here it seems that corporate adjustments before a point were not applied. When you look at ...
They are trying to make this more difficult. In matlab, you can bypass it by pretending to be a chrome user using weboptions, and pretending to access from Chrome:
options.UserAgent = 'Chrome';
Maybe something similar is possible in python?
No. I’m watching the management of a penny stock manipulate its share price by announcing a reverse stock split and yahoo hasn’t adjusted its prices going on a week and a half. The algorithms thinks it’s a huge breakout and are buying. There’s plenty of opportunity to pickoff bad data.
Choose John Deere. Some firms provide minimal disclosures, other firms are very good at making investors aware of every detail. Deere provides excellent and complete disclosures, well beyond what the law requires. It is a great firm to teach and learn with.
As to what should you look for, that depends on the industry. Consider the electric utility ...
I will try to provide a complete answer, although valuation can get way too far. So let's stick to the essentials.
Cash & Cash Equivalents: Cash in bank and short-term securities, that can be used to settle short-term liabilities. Can be used to quantify liquidity risk (e.g Cash Ratio)
Tangible and Intangible assets: What is their portion ...
I believe the volumes are normally adjusted. Here is the yahoo data around Dec 23 2015 when Nike did a 2:1 split:
Dec 30, 2015 64.36 64.40 63.17 63.25 61.49 5,817,900
Dec 29, 2015 64.31 64.48 64.02 64.26 62.48 6,708,600
Dec 28, 2015 63.21 63.88 62.80 63.81 62.04 8,704,400
Dec 24, 2015 64.55 64.73 62.15 63....
On the page you link:
TRADES data is adjusted for splits, but not dividends
ADJUSTED_LAST data is adjusted for splits and dividends. Requires TWS 967+.
So to get adjusted close, request ADJUSTED_LAST and use the Close field. To get the unadjusted close, request TRADES and use the Close field.
The FX market opens every Monday at 7am Wellington NZ time when the Kiwi value date rolls. It closes at 5pm NYK time.
So you can only get weekly closing price data.
Also, there's no difference in spot pricing methodology between US, Europe or Asia. Why would there be? The same method works everywhere.
The reason for price differences between venues is the ...
Definitely use the Bloomberg. Or there are several brokers you could use to get gold indicative prices. See https://stackoverflow.com/questions/10040954/alternative-to-google-finance-api
You could even use a spread betting account and API.
I think there's a difference in rates with Bloomberg because Yahoo rate is frozen.
Yahoo prices are adjusted for all applicable splits and dividend distributions. Data is adjusted using appropriate split and dividend multipliers, adhering to Center for Research in Security Prices (CRSP) standards.
Yahoo finance provides a knowledge base article on the adjusted close:
Since your last download, ...
Are you looking at the actual Close values or the Adjusted Close values in the API values? The Interactive chart shows the Adjusted Close values which account for dividends/splits/other corporate events. More on how Adjusted Close is calculated from actual Close here.
Take a look at pandas-datareader.
you will need to use python and write something like this:
# import package and notebook setting
import pandas as pd
import pandas_datareader.data as web
# load data
start = datetime.datetime(2010,...
There are several ways to do this:
If you need the price for June 11 and the market is closed on that day, you can use the price for June 10th (which is known on June 11th). I would advise against using the price of June 12th because it is not known on the 11th, so you would be "looking into the future" which is a bad idea and can lead to subtle fallacies ...
I am sharing list of update symbols, All are from Yahoo Only. https://github.com/stockdatalab/Stock-Exchanges-Ticker-List
We are pushing all in our github account soon you can find them on our website as well.
There is a similar question (not fully duplicate), but still -- the answer may provide a sufficient information.
In short, the reasons for discrepancies is usually:
initial data sources (historical parts)
the way data are collected (pure end-of-day or tick data)
the way adjustments and corporate actions are handled
the way post-trade corrections are ...