The Fashion Industry Stock Performance & Resilience During COVID-19
By: Yasser Elsedawy
Tags: Stock Market, Fashion Trends, Covid 19, Paris, Milano

The world is being hit with an invisible enemy, COVID-19 has changed our lives for good, we are in complete lockdown, and we had to make major changes in our lifestyles and businesses, the impacts of the virus are spreading, disrupting everyday life in Milan and everywhere else in the world, cutting shopping, disrupting global supply chains, real estate market and threatening the economy, whatever crisis management responses guides that may have existed weeks ago now seem to be from another time, the situation is forcing everyone to evolve and adapt their strategies and creativity in real-time.

According to a report issued by McKinsey & Company, more than 40 percent of the global luxury-goods production happens in Italy, and all the Italian factories have temporarily shut down.

Since the stock market has had to deal with some major changes on its own. In this project, we will build a Python script to analyze the impacts of COVID-19 on stock prices regarding the Milan & Paris Stock Exchanges. We will explore the performance of some of the biggest fashion companies on the market to see how good or bad they have stood against the COVID-19 storm. We will take as reference stock prices before the outbreak in Italy and compare it to the same stock prices a few weeks later until April 21st. We will be doing this by conducting different analysis and by computing daily price changes for multiple stocks. After, we will try to explore the relationship between the stock prices and the daily new numbers of coronavirus cases in Italy.

The companies under investigations are:

AEF.MI (Aeffe in the Milan stock exchange) MONC.MI (Moncler in the Milan stock exchange) BC.MI (Brunello Cucinelli in the Milan stock exchange) SFER.MI (Salvatore Ferragamo in the Milan stock exchange) TOD.MI (Tod’s group in the Milan stock exchange) MC.PA (LVMH group in the Paris stock exchange) CDI.PA (Christian Dior in the Paris stock exchange) KER.PA (Kering group in the Paris stock exchange)

Note: To review the code and get your hands on the dataset, please visit my profile on GitHub, and if you are interested in exploring more projects, check my first project about Machine Learning, and the second project about the Real Estate Market COVID-19 disruption.

Let’s get started and have a look on our dataset. We choose to investigate the Adj. close prices.

Adjusted closing price accurately reflect that stock’s value after accounting for any corporate actions. It is considered to be the true price of that stock and is often used when examining historical returns or performing a detailed analysis of historical returns.

Notice that some days might be missing like the first day of the year as yahoo finance sometimes faces network problems.

The first thing we want to do is to try to investigate the maximum and minimum adjusted close price for each company’s stock throughout the time period. We will use a bar plot to visualize the data, we will also use a log scale for the adj. close price to normalize the values to a uniform scale. It is usually through data normalization that the information within a dataset can be formatted in such a way that it can be visualized and analyzed.

In the above representation, stocks can be classified into two groups: Reliable stocks and Volatile stocks. Reliable stocks are the ones that didn’t show much difference between the minimum adj. close price and the maximum adj. close price in the time period specified. e.g.: Kering, LVMH, Christian Dior and Moncler. However, Volatile stocks are the ones that varied the most between the minimum and maximum adj. closing price of stocks. e.g.: Aeffe

Let’s now try to split the data into two parts, before and after the outbreak to investigate the trends more.

It is now clear that most of the stocks pre COVID-19 period saw a change in volatility in their closing prices once the COVID-19 storm hit.

In the next analysis, we will try to get the returns. A return is defined as the change in price of stocks over time, which may be represented in terms of price change or percentage change. A positive return represents a profit while a negative return marks a loss. We will be using a built in function in one of Python libraries to do that.

Notice that the first day in the analysis (30–12–2019) was removed as we measure returns from the day after (02–01–2020)

Now let’s explore the Minimum and Maximum returns dates.

It is interesting to note that most of these stocks had their lowest return in 12th March 2020. In that date the USA declared a national emergency, while Italy had the highest number of deaths per day in the world (including China at its peak) for each of the previous four days.

All the companies had their highest returns in March as well. It’s interesting also to notice that in the day of March 24th Trump announced that USA Will Be “Open for Business Very Soon”.

Now, we will try to divide the returns to two datasets, before and after COVID-19, then we will apply the standard deviation on the stock returns.

In the next graphs, if the stocks occur at the right end of the chart, they are considered volatile with significant values of standard deviation while if they occur on the left they should be considered reliable.