Using Least Squares Method and Quadratic Programming Method with different constraint to calculate optimal solution for index tracking
Index tracking, also known as passive management, is a strategy used by investment funds that aims to generate returns similar to a specific market index. The fund will choose and manage its investments to mirror the holdings of the selected index. For instance, a fund tracking the S&P 500 index will hold the same 500 stocks in approximately the same proportions as they appear in that index.
-
Diversification: Index funds are typically made up of a wide range of assets, which can provide investors with broad exposure to different segments of the market, thereby reducing risk.
-
Low costs: Since index tracking involves simply replicating the holdings of an index, it doesn't require as much active management and thus has lower management fees than actively managed funds.
-
Performance: It's difficult for active managers to consistently outperform the market over long periods. Therefore, simply tracking the market index tends to generate competitive returns over time.
We selected S&P 500 (^GSPC) as the goal index and the other 10 companies that are randomly chosen. And we will use the companies stock price to find the optimal weight. The companies includes:
- AAPL
- MSFT
- AMZN
- JNJ
- JPM
- PG
- XOM
- DIS
- V
- KO
We chosed 11 S&P indexs to run the index tracking. In the code, we will select each of the S&P index as the goal index, and try to find optimal weights for the other 10 indexs to minimize the varience between the goal index and the portfolio.
Here are the ten index:
- SPXESFUT
- SPXESUP
- SPXETCT (Heavy)
- SPXETCT (Light)
- SPXETCT (Moderate)
- SPXETCT
- SPXELSUP
- SPRESUP
- SPMESUP
- SPSESUP
- S&P United States LargeMidCap ESG Index