Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Challenge: Visualize Stock Volatility | Financial Data Visualization and Trend Analysis
Python for Financial Analysts

bookChallenge: Visualize Stock Volatility

Rolling volatility, measured as the standard deviation of returns over a moving window, is a key indicator of how much a stock's price fluctuates over time. In financial analysis, understanding volatility helps you assess risk, compare assets, and make informed investment decisions. By tracking rolling volatility, you can identify periods of market turbulence or calm, spot trends in risk, and better manage portfolio exposure.

123456789101112131415161718
import pandas as pd import numpy as np # Create a date range for one year of business days dates = pd.date_range(start="2023-01-01", end="2023-12-31", freq="B") # Simulate daily returns for four stocks with different volatility levels np.random.seed(42) returns_data = { "AAPL": np.random.normal(0, 0.012, len(dates)), "MSFT": np.random.normal(0, 0.010, len(dates)), "GOOGL": np.random.normal(0, 0.015, len(dates)), "AMZN": np.random.normal(0, 0.018, len(dates)), } returns_df = pd.DataFrame(returns_data, index=dates) # Display the first few rows print(returns_df.head())
copy

To analyze and visualize the volatility of these stocks, you will calculate the 30-day rolling standard deviation of returns for each stock. This rolling standard deviation represents the recent volatility and is commonly used to monitor risk over time. After computing the rolling volatility, plot all four stocks' rolling volatility on a single chart using matplotlib. Make sure to plot each stock as a separate line, label each line with the stock symbol, and add a legend so viewers can easily distinguish between the stocks. Label the axes and provide a clear title to make your plot informative and professional.

Завдання

Swipe to start coding

Given a DataFrame containing daily returns for four stocks over a year, your goal is to visualize their rolling volatility. Calculate the 30-day rolling standard deviation for each stock and plot the results on a single chart. Ensure that each stock's rolling volatility is clearly labeled and distinguishable.

  • Calculate the 30-day rolling standard deviation for each stock in the DataFrame.
  • Plot the rolling volatility of all four stocks on one chart, with each stock as a separate line.
  • Label each line with the corresponding stock symbol, and add a legend.
  • Label the x-axis as "Date" and the y-axis as "Rolling Std Dev (Volatility)".
  • Add a clear title to the plot.

Рішення

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 3
single

single

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Suggested prompts:

How do I calculate the 30-day rolling standard deviation for these stocks?

Can you show me how to plot the rolling volatility for all four stocks on one chart?

What does the rolling volatility plot tell me about the risk of each stock?

close

bookChallenge: Visualize Stock Volatility

Свайпніть щоб показати меню

Rolling volatility, measured as the standard deviation of returns over a moving window, is a key indicator of how much a stock's price fluctuates over time. In financial analysis, understanding volatility helps you assess risk, compare assets, and make informed investment decisions. By tracking rolling volatility, you can identify periods of market turbulence or calm, spot trends in risk, and better manage portfolio exposure.

123456789101112131415161718
import pandas as pd import numpy as np # Create a date range for one year of business days dates = pd.date_range(start="2023-01-01", end="2023-12-31", freq="B") # Simulate daily returns for four stocks with different volatility levels np.random.seed(42) returns_data = { "AAPL": np.random.normal(0, 0.012, len(dates)), "MSFT": np.random.normal(0, 0.010, len(dates)), "GOOGL": np.random.normal(0, 0.015, len(dates)), "AMZN": np.random.normal(0, 0.018, len(dates)), } returns_df = pd.DataFrame(returns_data, index=dates) # Display the first few rows print(returns_df.head())
copy

To analyze and visualize the volatility of these stocks, you will calculate the 30-day rolling standard deviation of returns for each stock. This rolling standard deviation represents the recent volatility and is commonly used to monitor risk over time. After computing the rolling volatility, plot all four stocks' rolling volatility on a single chart using matplotlib. Make sure to plot each stock as a separate line, label each line with the stock symbol, and add a legend so viewers can easily distinguish between the stocks. Label the axes and provide a clear title to make your plot informative and professional.

Завдання

Swipe to start coding

Given a DataFrame containing daily returns for four stocks over a year, your goal is to visualize their rolling volatility. Calculate the 30-day rolling standard deviation for each stock and plot the results on a single chart. Ensure that each stock's rolling volatility is clearly labeled and distinguishable.

  • Calculate the 30-day rolling standard deviation for each stock in the DataFrame.
  • Plot the rolling volatility of all four stocks on one chart, with each stock as a separate line.
  • Label each line with the corresponding stock symbol, and add a legend.
  • Label the x-axis as "Date" and the y-axis as "Rolling Std Dev (Volatility)".
  • Add a clear title to the plot.

Рішення

Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 3
single

single

some-alt