Backtest only constituents of sp500 15 y back

Questions about MultiCharts and user contributed studies.
Salzburg
Posts: 140
Joined: 19 Sep 2018
Has thanked: 9 times
Been thanked: 35 times

Backtest only constituents of sp500 15 y back

Postby Salzburg » 04 Jun 2020

Hi,

Have anyone managed to solve how to backtest equity data lets say 15 years back, but ONLY allowing symbols that was a member of the sp500 index at the time of the trade?

This would mean that one needs to have a list of all stock that would have been a member of the index at any time during 15 years back, and trade would only be allowed if at the time of the trade, the symbol was a member.

Anyone managed this ?

Its easily done in for example AB and by using norgate as a data supplier, since norgate provides dynamic lists, and they indicate with a 1 or 0 at each date in the database, if the symbol was part of the index.

However since norgate is not supported by Multicharts, anyone have a solution ?

This should be easy to solve if Multicharts wants to, equity trading is still quite popular out there :) and anyone that understands backtesting properly would also know how important this problem is to solve if one wants to use Multicharts for equity trading.

User avatar
JoshM
Posts: 2195
Joined: 20 May 2011
Location: The Netherlands
Has thanked: 1544 times
Been thanked: 1565 times
Contact:

Re: Backtest only constituents of sp500 15 y back

Postby JoshM » 04 Jun 2020

However since norgate is not supported by Multicharts, anyone have a solution ?
If you have a list of symbols that were present in which year, I think you can code that into your strategy logic. This will unfortunately be a lot of work since there probably have been a lot of changes to the S&P 500 over the years.

Let's hope someone else has a better idea. :)

Salzburg
Posts: 140
Joined: 19 Sep 2018
Has thanked: 9 times
Been thanked: 35 times

Re: Backtest only constituents of sp500 15 y back

Postby Salzburg » 05 Jun 2020

However since norgate is not supported by Multicharts, anyone have a solution ?
If you have a list of symbols that were present in which year, I think you can code that into your strategy logic. This will unfortunately be a lot of work since there probably have been a lot of changes to the S&P 500 over the years.

Let's hope someone else has a better idea. :)
Thanks Josh for your input,

Yes i dont think this will work.
For example with norgate data and their dynamic lists, its so easily done and i just hope that MC would be able to incorporate this. Just imagine to always have a updated list going ahead, and backwards with Nasdaq top 100, sp500, etc etc, and a symbol database containing info about when and what symbol belonged to a specific index you also have the options how to handle splits and adjustments, and in code just specify to only allow the trade if it belonged at the time of the trade to the index..
So in portfolio trader you would chose for example use nasdaq 100 list, and portfolio trader asks you just current constituents or all currrent plus historic.. there should be no need to manually input individual symbols or handle messy excel lists, if one wants to test a whole index with hundreds of symbols... Since Multichart does not allow norgate access to their API to enable something like this easily, i assume this will be difficult.

For a while i thought that perhaps, one could use metastock and utilise their lists in some way to use in MC, but gave up..

Anyone else?


Return to “MultiCharts”