Hi,👋 we have updated the app and fixed multiple bugs. We are lacking funds, request to free user not to use Adblock. Ads are non intrusive. 😊

@pyquantnews: A step-by-step guide to build ...

@pyquantnews
10 views Feb 15, 2024
1
A step-by-step guide to build 3 optimized portfolios with a few lines of Python:
Media image
2
Here’s how skfolio helps:

• Unified library for building optimized portfolios
• Built in Python code to take care of the maths
• Built on top of scikit-learn to leverage ML

This thread will walk you through how to use it:
3
We’ll use scikit-learn for creating data splits, skfolio for optimizing the portfolios, and OpenBB for data.

We’ll do our analysis on a list of sector-based ETFs.
Media image
4
Download the historic price data, manipulate the DataFrame to use with skfolio, and split the data into training and testing sets.
Media image
5
The next step is to fit different models to the data.

We’ll use skfolio to create three separate portfolios: maximum diversification, equal weighted, and random weighted.
Media image
6
We can use skfolio to predict the portfolio weights for each of the weighting methods.
Media image
7
The result is a visualization of the weights of the sector ETFs for each of the portfolios.
Media image
8
Generate the cumulative returns of each strategy to visualize how they performed over the analysis period.

This is a quick way to easily assess the performance of the portfolios.
Media image
9
The portfolio with the maximum diversification underperforms both the equally weighted and randomly weighted portfolios.

You might conclude that being heavily weighted in XLU (utilities) was a drag on the overall performance of the strategy.
Media image
10
While skfolio presents a the cumulative returns of each portfolio, we need to apply periodic rebalancing to better represent a real investment strategy.

As a next step, plug skfolio into your favorite backtesting library and rebalance every month.

How do the returns change?
11
To keep this thread handy, just click the link and repost the first tweet.

Then follow me @pyquantnews to get content for algo trading and quant finance 4x daily.
Actions
Visual Editor Carousel Maker NEW
Update Thread
What You Can Do
  • Download as PDF
  • Save to Notion
  • Export as Markdown
  • Visual Editor
  • LinkedIn & Instagram Carousel Maker
Create Free Account

Includes 7-day Premium trial