Portfolio Stocks and Assets: Selection and Optimization

Posted on Oct 31, 2019
The skills I demoed here can be learned through taking Data Science with Machine Learning bootcamp with NYC Data Science Academy.

LinkedInGitHubEmail | Data | Web App


Portfolio is a term used to describe a selection of assets like stocks, currency, bonds, cash, etc. A portfolio's holdings should reflect the owner’s requirements and needs (such as risk tolerance/aversion and expected return). Those requirements depend on the reason for and the time horizon of the investment.

Portfolio selection and stock analysis can be extremely complicated if the main intention is to capitalize on minute-to-minute stock price changes. But if you want to evaluate different portfolio alternatives based on different degrees of risk and return, there are easy ways to do it.


The Main Variables and Sharpe Ratio

The 2 main variables that helps us evaluate a portfolio are the variance (volatility) and the expected return.

  • Volatility (standard deviation): this simply tells us how much the price of a particular asset changes. It would never tell us if an asset is good or bad, just its day to day variation.
  • Return: this can indicate if one asset is better than another one, but the main problem is that past performance can’t guarantee future behavior, so it is basically just a reference for evaluation.

 Sharpe Ratio: Sharpe ratio (named for William F. Sharpe), is an indicator that lets us measure both variables at the same time. This ratio basically tells us how much more return a particular set of assets gives us above a risk-free rate (such as a 10 year treasury bond) and then adjusts it by volatility so that they can all be compared in the same terms. It is basically the same process as normalizing the day-to-day variation compared to the risk-free rate.


How Graphing and Simulation can Help us Find the Best Portfolio

Simulation and graphing are very powerful tools for finding the best portfolio. In a ‘volatility vs return’ graph we can find the combination of assets that maximizes the return for a particular type of volatility.

If we simulate different portfolio weight combinations we can understand the main idea of the Sharpe ratio concept and how it can be compared to a portfolio that minimizes risk.

The two main points to consider as a reference in the graph are:

  • Minimum Variance Portfolio: This combination of assets will minimize the risk. It won’t necessarily give us a good return, but is a good reference for evaluating other combinations. If you don’t have very little tolerance for risk, this might be the best choice.

Max Sharpe Ratio: This point in the graph is basically the asset combination that gives us a better rate of return compared to its volatility.

Fig1. Simulation of 50,000 randomly generated weights for 3 stocks (AMZN, AAPL and MSFT) evaluated from January to October 2019.

This graphic method is particularly good if you are choosing from a few assets. However, if you try to make a graph out of more assets, it becomes less informative.

Fig2. Simulation of 50,000 randomly generated weights different amount of stocks evaluated from January to October 2019.


Prefiltering Stocks Based on Particular Needs

How can you optimize a portfolio if you have plenty of options? Based on your specific needs you can prefilter the assets in a way that you know you will only be getting the ‘good’ options.

How do I optimize a portfolio if I have plenty of options? Based on your specific needs you can prefilter the assets in a way that you know you will only be getting the ‘good’ options.

So why evaluate a particular asset with a negative return or an asset that gives you really low return and has plenty of volatility? This is when prefiltering proves beneficial.

Fig3. Comparison of top stocks based on Volatility, Return and Sharpe Ratio. Each combination gives different results.

Definitively the portfolio with the lowest volatility will never have the same result as the other two but they will most likely provide less variation. In the last graph we can see that even though the best return stock combination will more likely provide a better average return, it also carries more risk. If your time horizon for the investment is short term, you will want to avoid that. In the middle graph we can see that the best Sharpe ratio stock strikes a perfect balance between both.

Takeaway 1: Basic indicators can filter unnecessary assets that we won’t have the capacity to analyze.

Optimization of the Best Portfolio

As we saw, graphing and simulation works great for a limited amount of assets. If we prefilter those assets, we might be able to get a very good solution but it won’t necessarily be the best one.

A more efficient way to find the best option is to use optimization.In optimization, we just try to solve for the best weights combination that will maximize the Sharpe ratio or minimize the volatility.

Fig4. Comparing each of the prefiltered stocks with the optimization solution.

Takeaway 2: Optimization can help us better determine an asset portfolio when list of comparing assets is too big.

When optimizing more than 500 assets (S&P 500) we see that we can reach a better solution. This solution is intended as a guide since you will end up with a 50 assets portfolio and you probably just want to keep the top 5 so that the management can be simplified


Graphing and simulation are great tools for interpreting how different weights of assets can change a portfolio expected outcome. When the portfolio starts getting more complicated because due to the increasing number of options, then optimization is a better tool. Definitively, if the number of assets is very large and it takes too long to come up with the best solution during optimization, then you can apply some prefiltering to the assets since you already know some of them won’t even move your solution significantly.

About the Data

Data was used from yahoo finance using an API. All the code can be found in the file ‘portfolio_optimization.py’ inside the ‘live_portfolio_scraper’ GitHub repository (https://github.com/mavaladezt/live_portfolio_scraper).

About Author

Mario Valadez Trevino

Mario Valadez Trevino is a NYC Data Science Fellow with a B.S. in Industrial Engineering with minor in Systems Engineering and an MBA. Mario has relevant experience in demand forecasting, production and transportation planning, warehouse management systems and...
View all posts by Mario Valadez Trevino >

Related Articles

Leave a Comment

Google August 29, 2021
Google Every the moment in a even though we pick blogs that we study. Listed below would be the newest web pages that we choose.
Google December 26, 2020
Google One of our visitors not too long ago advised the following website.
Google October 13, 2020
Google Here are some hyperlinks to web-sites that we link to simply because we believe they're worth visiting.
Google September 26, 2020
Google Very couple of web sites that happen to be in depth below, from our point of view are undoubtedly very well really worth checking out.
OnHax Me August 24, 2020
OnHax Me [...]Here is an excellent Blog You may Locate Exciting that we Encourage You[...]

View Posts by Categories

Our Recent Popular Posts

View Posts by Tags

#python #trainwithnycdsa 2019 2020 Revenue 3-points agriculture air quality airbnb airline alcohol Alex Baransky algorithm alumni Alumni Interview Alumni Reviews Alumni Spotlight alumni story Alumnus ames dataset ames housing dataset apartment rent API Application artist aws bank loans beautiful soup Best Bootcamp Best Data Science 2019 Best Data Science Bootcamp Best Data Science Bootcamp 2020 Best Ranked Big Data Book Launch Book-Signing bootcamp Bootcamp Alumni Bootcamp Prep boston safety Bundles cake recipe California Cancer Research capstone car price Career Career Day citibike classic cars classpass clustering Coding Course Demo Course Report covid 19 credit credit card crime frequency crops D3.js data data analysis Data Analyst data analytics data for tripadvisor reviews data science Data Science Academy Data Science Bootcamp Data science jobs Data Science Reviews Data Scientist Data Scientist Jobs data visualization database Deep Learning Demo Day Discount disney dplyr drug data e-commerce economy employee employee burnout employer networking environment feature engineering Finance Financial Data Science fitness studio Flask flight delay gbm Get Hired ggplot2 googleVis H20 Hadoop hallmark holiday movie happiness healthcare frauds higgs boson Hiring hiring partner events Hiring Partners hotels housing housing data housing predictions housing price hy-vee Income Industry Experts Injuries Instructor Blog Instructor Interview insurance italki Job Job Placement Jobs Jon Krohn JP Morgan Chase Kaggle Kickstarter las vegas airport lasso regression Lead Data Scienctist Lead Data Scientist leaflet league linear regression Logistic Regression machine learning Maps market matplotlib Medical Research Meet the team meetup methal health miami beach movie music Napoli NBA netflix Networking neural network Neural networks New Courses NHL nlp NYC NYC Data Science nyc data science academy NYC Open Data nyc property NYCDSA NYCDSA Alumni Online Online Bootcamp Online Training Open Data painter pandas Part-time performance phoenix pollutants Portfolio Development precision measurement prediction Prework Programming public safety PwC python Python Data Analysis python machine learning python scrapy python web scraping python webscraping Python Workshop R R Data Analysis R language R Programming R Shiny r studio R Visualization R Workshop R-bloggers random forest Ranking recommendation recommendation system regression Remote remote data science bootcamp Scrapy scrapy visualization seaborn seafood type Selenium sentiment analysis sentiment classification Shiny Shiny Dashboard Spark Special Special Summer Sports statistics streaming Student Interview Student Showcase SVM Switchup Tableau teachers team team performance TensorFlow Testimonial tf-idf Top Data Science Bootcamp Top manufacturing companies Transfers tweets twitter videos visualization wallstreet wallstreetbets web scraping Weekend Course What to expect whiskey whiskeyadvocate wildfire word cloud word2vec XGBoost yelp youtube trending ZORI