I looked through the master list of data sources but could not find any data sources for financial data of global equities. An example would be the balance sheet of, say, STO:HM-B. The company can be found on both Yahoo Finance and Google Finance but they do not give any financial data.

Morningstar.com is the only online site I've found so far that even has the data, but I suspect that isn't free data to use in applications. Also, even if I were to want to scrape that data it would be near impossible since it appears to be JavaScript generated post-page load.

What I'm hoping to find is something in XML format or in a format I can myself translate to XML. Even HTML is fine, just as long as it's one site for all financials for most global equities.

  • 2
    $\begingroup$ Is there an issue with Bloomberg or Thomson-Reuters? That's what any professional would use. $\endgroup$ Commented Jun 2, 2013 at 18:06
  • $\begingroup$ Sorry, I should have specified more clearly that I preferably wanted something that's free to use. $\endgroup$
    – Doggie52
    Commented Jun 2, 2013 at 18:17
  • $\begingroup$ For US companies you can scrape it yourself because it's public information -- not an easy task though! sec.gov/edgar/searchedgar/cik.htm $\endgroup$
    – Brian B
    Commented Jun 3, 2013 at 12:52
  • $\begingroup$ @BrianB H&M is a big Swedish retailer, so that approach wouldn't apply (it's also why there isn't any data on Google/Yahoo). I'm not aware of any free site for global balance sheet information. I get mine from Bloomberg or Factset. $\endgroup$
    – John
    Commented Jun 3, 2013 at 15:40

4 Answers 4


Marketwatch has financials for a lot of companies, including H&M: Annual Financials for H&M Hennes & Mauritz AB Series B

preview of H&M financials


The prices you are looking for can be found at https://www.google.com/finance/getprices?q=HM-B&x=STO&i=60&p=5d&f=d,c,o,h,l&df=cpct&auto=1&ts=1266701290218

URL breakdown, I am lazy so I copied

q= stock symbol on Google finance x= exchange symbol i= interval (here 60 means 60 sec (1 minute interval))

p= no of period(here 5d denotes 5days of data)

f= parameters (day, close, open, high and low) df= difference (cpct is may be in % change )

auto =1, ts = time start…



Javascript page scraping...

This is a tip for dealing with the javascript driven pages when scraping. If you write a scraper in .Net, use a visible or invisible WebBrowser control, suppress errors and allow the page to load. After load, you can force the click state (control.InvokeMember("onclick")) on whatever control you need and you are good.

Below is a snipit in VB:

    WebB.ScriptErrorsSuppressed = True
    WaitForPageLoad() 'this is custom, search stackoverflow for this
    Dim doc As HtmlDocument = WebB.Document

    For Each c As HtmlElement In doc.All
        If c.Name = "someelementname" Then
            Dim ctrlAll As HtmlElement = doc.All(c.Id)
        End If
  • $\begingroup$ What I'm looking for are financials and not prices. Prices are easier to get hold of elsewhere to be honest. $\endgroup$
    – Doggie52
    Commented Dec 11, 2013 at 21:03
  • $\begingroup$ My apologies, I over looked the mention to balance sheets. I will take a look and see if I have anything that might work. $\endgroup$
    – MonkeyDoug
    Commented Dec 11, 2013 at 22:57
  • 1
    $\begingroup$ I don't see anything for europe as a whole, but there are a number of country specific agencies like Swedens fi.se/Folder-EN/Startpage MSN also has some basic investing.money.msn.com/investments/… I wish I had more, I focus more on the economics but if I see anything I will update $\endgroup$
    – MonkeyDoug
    Commented Dec 11, 2013 at 23:39

Morningstar is the best one I've found so far. It has all the data required and, as I've recently found, can export it quite easily to CSV. The key is to send the right parameters to /ajax/ReportProcess4CSV.html. In what scenarios scraping this is allowed, I do not know. I will endeavor to find out once I start building this application.

For anyone looking to do the same thing, the following parameters are the ones I use:

$defaults = array(
            't'             => '',      // The ticker
            'reportType'    => '',      // 'is', 'bs' or 'cf' depending on what you want
            'period'        => 12,
            'dataType'      => 'A',
            'columnYear'    => 5,

The last three parameters are not there for you to change but simply have to be part of the URL.


For free core financial data of any US firm or industry, you can use data.finmint.us.

The following datasets include over 12000 US firms, covering the past 25 years, and updated daily:

Data output is in csv format, easy to view or process or do http call.

instead of ticker use company's ticker symbol like AAPL

for cik use CIK number (assgined by SEC) like 1000228

for industryid use their SIC code of that industry.

data.finmint.us provides more info oh how to use data.

  • $\begingroup$ Interesting website. However, I did not manage to be able to download statements for Apple for example. Also is there a way of checking all the companies the database has? $\endgroup$
    – phdstudent
    Commented May 10, 2018 at 21:55
  • 1
    $\begingroup$ I contact the developer in a min, I know it is in beta, I'll get back to you, I am meeting here this evening. I'll get back to you when I know the answers. $\endgroup$
    – Ali Khosro
    Commented May 10, 2018 at 22:10
  • $\begingroup$ @phdstudent I tried couple of tickers and it worked: for quarterly: data.finmint.us/q/AAPL.csv the file is a csv file that your browser might save it in downloads (the same for stmt and stmt-q and stmt-y and y). for SEC data, you fetch with CIK: data.finmint.us/320193.csv You can also use the website viewer: data.finmint.us/view.html?q/AAPL.csv which is nice searchable, sort-able table view For basic company info, I found a file there: data.finmint.us/view.html?basic/company.csv which contains updated info of 17000 firms (some are ceased). $\endgroup$
    – Ali Khosro
    Commented May 11, 2018 at 21:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.