June 27, 2018

Norgate Data Review

I am frequently asked what data provider I use and recommend for stocks. I have been using Norgate Data for four years and recommend them to anyone looking for data. This review will focus on US Stocks and AmiBroker integration which is what I use daily. Norgate Data has data for the Australian and US markets, forex and futures data. They integrate with AmiBroker and RightEdge.

Disclosures: I have paid for my data. The links to Norgate Data on this page are affiliate links.

Features I want

I focused on these features:

  • Data back to at least 1995
  • Delisted stock data
  • Solid data quality
  • The data can be adjusted for dividends and one-time capital gains
  • A watch list of the S&P500, Russell 3000, Russell 1000 index constituents
  • A simple way of determining if a stock was in the index on a particular date
  • Good integration with AmiBroker. Both updating data and coding
  • Good customer service especially when dealing with bad data
  • Reasonably priced

We will look at each area in more detail with each area receiving a letter grade.

Data Packages

One can purchase one of several packages. The most basic package, Silver, comes with 10 years of price history of current stocks. Since my focus is on backtesting, I will be reviewing the Platinum package which is what I purchased. This package comes with:

  • Price history back to 1990
  • Current fundamentals
  • Delisted Equities
  • Historical index constituents

Data back to at least 1995

Norgate Data has US stock data back to 1950 which is much further back than I would ever test. One can purchase data back to either 1950 or 1990. I choose 1990.

Grade: A

Delisted stock data

The Platinum package comes with delisted data which prevents survivorship bias. Any currently traded stock has just the symbol. When a stock gets delisted, then they append the year and month of delisting. For example, Sun Microsystems symbols is JAVA-201001. One nice benefit of this is that in your trade list it is easy to spot delisted stocks.

Grade: A

A watch list of the S&P500 index constituents

When investigating this feature, I thought I had died and gone to data heaven. Norgate Data not only has a watch list for S&P500 historical constituents, they also have the data for these indexes: DJIA, NASDAQ 100, Russell 1000, Russell 2000, Russell 3000, S&P 100, S&P 400, and S&P 600. In the past I had kept a watch list of my trading universe by hand that needed regular updating. This now could save me a step and I could always use the Russell 3000. What a time saver. This data allows one to test on the index without preinclusion bias.

Grade: A+

Ability to Backtest all stocks

Sometimes I have strategy ideas that I want to test on all stocks, not just those in the Russell 3000 or any other index. IPOs and other stocks not yet in an index behave differently than their more established counterparts.

Norgate Data has a special group called “Operating/Holding Company” which holds all the stocks in the database I would want to test against. This is really convenient since I do not have to keep a special watchlist.

One though needs to be careful with testing on this group because of OTC stocks, which I do not trade. When an OTC stock uplists to one of the major exchanges, it may be added to the database with data from when it traded on the OTC. Now this is both good and bad. The good is you can start trading it sooner since it has data. The bad, now you need to make sure you don’t trade it while it was OTC. Fortunately, Norgate has a function that lets one check when it was traded on a major exchange, NorgateMajorExchangeListedTimeSeries.

Grade: A

Data Quality & Consistency

This proved to be the hardest part of my evaluation. When I first purchased the data four years ago, I had access to other data providers I compared them to. At that time the data matched well with the other data providers.

Every two weeks, I run a series of tests on the data looking for inconsistencies or potential issues. I also compare my database with two other researchers using the same data. Most of the time, I find no issues. When I do find something, it is minor.

Grade: A-

The data can be adjusted for dividends and capital gains

There seems to be some misconception that Norgate Data Services cannot do this. I have had several people write saying they will not use the data because it cannot be adjusted. The issue is this feature is not turned on by default. The adjustment is done within AmiBroker under File/Database Settings/Configure which is not easy to find.

You have 4 options as seen below. It is quick and simple to change.

Grade: A

Data integration with AmiBroker

Norgate Data integrates directly into AmiBroker. Unfortunately, because of AmiBroker, it can be a two step process. There are multiple ways one can update the data can be updated.

1 – Manually run Norgate Data Updater program, then in AmiBroker manually run the final adjustments

2 – Leave Norgate Data Updater running all the time with an automatic update time. After the data updates one needs to manually in AmiBroker run the final adjustments

3 – Write an AmiBroker batch file, that runs Norgate Data Updater program and then makes the final adjustments in AmiBroker.

No steps are hard but they are just less than ideal for me. The issues for each method are:

1 – All manual and is two step process.

2 – When you minimize Norgate Data Updater, it is in the Windows taskbar. It would be nice if had option to not show in taskbar. Still must manually update AmiBroker.

3 – This is close to ideal because can automate the running the batch file. The issue here is there cannot be AmiBroker running when you start the batch file. I am often running backtests, so I must make sure they are not running when the update happens. This is the method I use.

Grade: B

A simple way of determining if a stock was in the S&P500 on a particular date

Determining if a stock is currently in the index could not be simpler. Here is sample AmiBroker code. Here are two ways of doing it for the S&P 500 index. It only takes two lines of code.

#include_once “Formulas\Norgate Data\Norgate Data Functions.afl”;

NorgateIndexConstituentTimeSeries(“S&P 500”);

NorgateIndexConstituentTimeSeries (“$SPX”);

 

Grade: A

Good customer service

I am always on the lookout for bad data. Sometimes it is one day with a bad price. Other times, it is missing data for several days. Symbols being dropped. Either way, it is important that my data provider quickly investigate the issue and get back to me. Data is my life blood.

They have also been very good about responding to any technical support emails. They are in Australia, so emails are answered at night for those of us in the United States.

Grade: A

Reasonably priced

The Platinum package is $630 per year. This may seem expensive. If you just wanted current data, the cost is $360 for 20 years of price history. That is typical price for other data providers. That means for an additional $270 a year I am paying for delisted data and historical constituent data. Which is $22 a month. For the time that saves me, I think it is well worth it.

Grade: A

Additional Data

Included with the Platinum package is a lot of additional index, economic data. Here is a small sample:

Grade: A

Additional features

They make it easy to get the unadjusted closing price and volume. This means before adjusting for stock splits and dividends. This allows one to test with rules such that I only want to buy stocks greater than $10.

unadjusted_close = NorgateOriginalCloseTimeSeries();

unadjusted_volume= NorgateOriginalVolumeTimeSeries();

Grade: A

Extra features I do not use but you may want

Norgate Data comes with more data that I do not use but you may be interested in

Dividends

The data contains the dividend amounts and dates. For those of you looking to test dividend stocks, this would be of great help.

Fundamentals

The data contains current fundamental data. This is a screenshot of Microsoft’s data

Sector/Industry Classification

They have the GICS and ICB for most stocks. Here are the sectors

GICS with energy fully expanded out.

ICB with Oil & Gas fully expanded out

Misc.

Norgate Data allows the creation and linking of multiple AmiBroker databases. This is helpful because I like keeping three databases: one with 2 years of data for daily scans, one with 11 years of data for most of my back testing and the third with 25 years of data when I am curious about results in the 1990’s.

Norgate Data can be installed on two computers simultaneously.

Here we have a screenshot of the updating program.

 

Final Thoughts

I have been using Norgate Data exclusively for my testing for the last four years and have been very happy.  I love being able to test on the historical S&P500 and Russell 3000 indexes. The integration with AmiBroker is really well done. Customer support is top notch. If you are looking for US stock data, I highly recommend you check them out.

You can read more about the importance of good data on my post How much does not having survivorship free data change test results?

Click the logo below to get more information.

Good quant trading,

Click Here to Leave a Comment Below

Dirk - June 28, 2018 Reply

Hi Cesar,

Would you know of any service, similar to Norgate, that has the same kind of data for indivdual European stocks?

Thanks,
Dirk

    Cesar Alvarez - June 28, 2018 Reply

    Sorry but I do not.

Whit - December 19, 2018 Reply

Cesar,

Thanks for the helpful review!

What do you mean by “linking of multiple AmiBroker databases” ?

Best regards,

    Cesar Alvarez - December 20, 2018 Reply

    I mean that you can create multiple Norgate AmiBroker databases. So one could only have 1000 bars and the other one can have all the data. The reason to do this is that runs are faster on the smaller database. Depending on your computer and size of the two databases, there can be a significant difference.

MachineGhost - December 31, 2018 Reply

I would give AmiBroker Integration a C. It’s very annoying, clumsy and old school.

And pricing is also old school and not monthly recurring billing as with the competition, so B.

    Cesar Alvarez - January 2, 2019 Reply

    These are just my opinions. Could the integration be better. Yes, but from what I understand it is AmiBroker that dictates this. Either way, it is only a single button press each night. Real simple IMO. As to billing, I guess I am fine with yearly since I have no plans to change and it typically costs less.

mark leeds - January 28, 2020 Reply

Hi Cesar: I love your blog. I just had a question. If I want the russell 3000 membership for

july, 2017
july, 2018
july, 2019

does, norgate supply that ? I don’t want any prices or any other data. All I need is the tickers that are in the russell 3000. thanks for your help.

    Cesar Alvarez - January 30, 2020 Reply

    Yes, you can get that for Norgate. But it comes with all the price data too.

John McDermitt - December 21, 2020 Reply

Hi Cesar,

Your blog was really helpful. I have to clarify what is meant by S&P Historical Constituents. I am referencing the section titled, “A simple way of determining if a stock was in the S&P500 on a particular date”. If I wanted to find all of the companies listed in the S&P 500 in the year 1957, could I do that? Any feedback is helpful.

John

    Cesar Alvarez - December 22, 2020 Reply

    You can easily determine all the stocks on any particular day by using NorgateIndexConstituentTimeSeries() function call in AmiBroker. They have data back to 1992.

Dario - June 4, 2022 Reply

Hi Cesar,

I love all the work you do! have learned a lot from your blog and podcasts.
I have been testing for a couple of months with unadjusted data mean reversion, and trend following strategies. Adjusting price really degrades performance (I am still figuring out the reason) I was wondering what’s your setup for adjusting the data.

Thanks,

Dario

    Cesar Alvarez - June 8, 2022 Reply

    Do you mean adjusting price for stock splits or adjusting for stock splits & dividends?

Scott - October 29, 2023 Reply

Hi Cesar,

You end by saying “The one big negative is not being able to test against the entire stock universe.” but in the section “Ability to Backtest all stocks” you gave it grade A and mentioned it’s possible with the operating/holding company watchlist and primary exchange check. What were you referring to when saying testing all stocks is not possible, is the above method not correct?

Thanks.

    Cesar Alvarez - October 30, 2023 Reply

    This was a negative when Norgate Data first came out and then they fixed it. I updated my review then, but missed this comment to remove. I have now removed it from my post. Thank you for pointing this out.

Leave a Reply: