IG Client Sentiment Analysis

IG client sentiment is an indicator that IG Index provides to show what percentage of clients have long or short positions.

For example looking at the NASDAQ index, we can currently see that 56% of clients are long this market and 44% are short:

NASDAQ IG client sentiment

A general consensus is that this is often a “contrarian” indicator, clients try to short when the market when it is going up and go long when the market is going down.

The Excel Price Feed Add-in provides historical client sentiment data which you can download into Excel. You can then combine this data with historical market data to see how client sentiment changes as the market changes.

Here is a chart of long client sentiment (the orange line) versus market daily close (the blue line) for the S&P500 Index over the past 4 months:

S&P500 IG client sentiment

There does appear to be a correlation, as the market moves up client long positions moves down – clients are moving from long to short positions as the market goes up.

Then at the peak (early September) client positions were long just before the market started dropping.

As the market moved down (i.e. for the past month) clients stayed long.

This example shows that client sentiment data can be used to provide trading signals, especially at “turning points” in sentiment. Obviously this would need to be tested against different markets but it is definitely a useful tool when looking for trading opportunities.

Excel: Calculate trading days between two dates

Yesterday a customer contacted us asking if our financial markets data Add-in could calculate the number of trading days between two dates. Unfortunately we don’t have this functionality as implementing it is not as easy as you may think.

You need to take into account weekends, which for most financial markets are Saturday and Sunday. Exceptions to this include several markets in the Middle East such as Saudi Arabia where the working week is Sunday to Thursday and the “weekend” is Friday and Saturday.

You also need to account for market holidays which are usually, although not always, also national holidays.

Fortunately Excel provides the NETWORKDAYS function, which:

Returns the number of whole working days between start_date and end_date. Working days exclude weekends and any dates identified in holidays.

This function can be used, together with a holiday lookup, to provide the functionality we need.

NETWORKDAYS function in Excel

In the example above we are using a holiday list lookup in column D together with the NETWORKDAYS function in cell B4 to compute the trading days between 21 July 2020 and 1 Dec 2020 for the US market.

The NETWORKDAYS function assumes that weekends are Saturday and Sunday. If you wish to specify a different weekend then you can use the NETWORKDAYS.INTL function.

Volatile Excel Functions

Today I was talking to a customer and his issue was a strange one which I hadn’t seen before.

Every time he changed ANYTHING on his spreadsheet he noticed that it would refresh unrelated formulas, i.e. formulas that did not reference the cells he was updating.

The main formula on his sheet was this:

=EPF.Yahoo.HistoricDatePeriod("AMD","Weekly","1 Jan 2020", TODAY(), "DESC", 1)

This is an Excel Price Feed dynamic array formula which returns weekly historical stock market data for AMD stock from 1 Jan 2020 to today.

This formula is non-volatile so should only update when any of its parameters change.

So, what was going on?

The culprit was actually one of the parameters: the Excel TODAY() function.

This built-in Excel function is a volatile function and will update ANYTIME ANYTHING on the spreadsheet changes.

What is a Volatile Function?

Microsoft defines a volatile function as follows:

…one whose value cannot be assumed to be the same from one moment to the next even if none of its arguments (if it takes any) has changed.

https://docs.microsoft.com/en-us/office/client-developer/excel/excel-recalculation

There are 8 built-in volatile Excel formulas, and it is worth being aware that using these in your spreadsheet could have unintended consequences:

  • NOW
  • TODAY
  • RANDBETWEEN
  • OFFSET
  • INDIRECT
  • INFO (depending on its arguments)
  • CELL (depending on its arguments)
  • SUMIF (depending on its arguments)

The Solution

The solution was simple, replace the TODAY() function with a string value of the current date. This could be either hardcoded into the formula or better still entered into a cell and referenced from the formula.

So, if you every notice your spreadsheet starting to slow-down or start doing unnecessary calculations then look out for volatile functions.

Pre-market stock prices

Stock markets are generally only open during specific times, the “trading day”. For example, the US market is open from 9:30am to 4:00pm (EST).

However, this is not the only period when trading takes place and when prices can change, there is also the pre-market which is “open” before the regular market opens.

This is a time of very little liquidity however trading during this time can enable you to take advantage of any news or events that happen outside normal market hours.

Yahoo Finance provides prices during this period, the pre-market (or before hours) prices.

For example, below we can see the current “before hours” price for Apple stock is 364.00 and the price has moved -2.53 from yesterdays close price of 366.53:

Apple stock price: live and pre-market

We have recently added some new Excel formulas to the Add-in to provide pre-market prices in Excel:

  • EPF.Yahoo.PreMarketPrice
  • EPF.Yahoo.PreMarketChange
  • EPF.Yahoo.PreMarketChangePercent
  • EPF.Yahoo.MarketState

This last formula is used to find the current state for the market eg. whether we are in regular or pre-market trading hours: “REGULAR” or “PRE”.

The example spreadsheet below shows the formulas in action, you can see column C uses the PreMarketPrice formula which references the ticker in column A:

Excel Price Feed pre-market stock prices

We hope you find these new formulas useful and as ever keep your feedback coming, preferably on the Support Forum or leave a comment below.

Building an IG Index watchlist in Excel

Excel Price Feed Streaming Watchlist

IG Index / IG Markets provides over 16,000 different markets to trade, including FX, stocks, indices, commodities and cryptocurrencies. Keeping track of potential trading opportunities within this universe is daunting, you really need a way to filter out which markets you are interested in and monitor just those markets.

This is where watchlists can help.

They help you focus on only the markets that interest you and help quickly give you an overview of the overall financial market. For example, I like to monitor a watchlist of major stock indices, currency pairs and commodities. This is especially helpful when I first arrive at my desk in the morning and want to get a quick overview of global market sentiment.

Brokers, such as IG Index, provide basic tools for building watchlists, for example here is an extract from one of my watchlists on the IG website:

IG Web Platform Watchlist

This watchlist is fine for keeping an eye on a small selection of fields such as % day change but what if you want a more customized watchlist, with filters, sorting, visualizations, custom formulas etc?

This is where the Excel Price Feed Add-in comes in.

You can use the power and customisation of Excel using formulas and visualizations together with the live market data formulas provided by the Add-in to build your own watchlist in Excel.

For example, we can use the daily high and low price to calculate the daily range and visualize where the current price is within the daily range.

In the example below I can see that the current level of the S&P500 is near the high of the daily range (83%) and the range today is 70 points:

We can add more markets and more data, including client sentiment, to give us a live view of the market, highlighting the data we are interested in:

At a glance we can see that the major stock indices are little changed on the day and towards the high of their daily ranges. We can also see that the main mover today is the cryptocurrency Ether.

Using Excel like this we can track and compare markets exactly the way that suits our trading style. Once we have setup our spreadsheet it is updated automatically with live market data so it always gives us a live view of the market.

Download Excel Price Feed today and try it for yourself.

Welcome to our blog

This blog will be a place where we will share our thoughts, ideas and news covering finance, trading and technology. We will post product news, articles about Excel as well as thoughts on developments in trading and financial markets.

We hope you enjoy what we write and we would love to hear from you, so all comments welcome!

Andy.