Understanding portfolio performance using different portfolio metrics

Gaurav Kumar
9 min readSep 30, 2024

Table of Contents

1. Understanding Portfolio Performance

2. The Importance of Portfolio Evaluation

3. Key Concepts in Portfolio Performance

4. Metrics for Evaluating Portfolio Performance

  • Return on Investment (ROI)
  • Maximum Drawdown
  • Portfolio Beta
  • Sharpe Ratio
  • Sortino Ratio
  • Treynor Ratio
  • Calmar Ratio
  • Ulcer Index
  • Jensen’s Alpha
  • Tracking Error
  • Information Ratio
  • Serenity Factor
  • Recovery Factor

5. Adjustments in Portfolio Performance Evaluation

  • Risk Adjustments
  • Market Adjustments

6. The Role of Diversification in Portfolio Performance

  • Benefits of Diversification
  • Measuring Diversification’s Effect on Performance

7. The Impact of Economic Factors on Portfolio Performance

  • Interest Rates and Portfolio Performance
  • Inflation and Portfolio Performance

8. How to Analyze and Monitor Portfolio Health

  • Portfolio Return vs. Benchmark
  • Standard Deviation
  • Beta
  • R-Squared

9. Bottom Line

10. Comparison of Metrics

11. Conclusion

Understanding Portfolio Performance

Portfolio performance analysis is essential for assessing the success of an investment strategy. It involves evaluating the returns and risks associated with a portfolio to understand whether the investment decisions align with the investor’s objectives. A comprehensive performance analysis helps to gauge the profitability of a portfolio, optimize asset allocation, and identify areas for improvement.

The Importance of Portfolio Evaluation

Portfolio evaluation is crucial for both individual and institutional investors. By regularly assessing portfolio performance, investors can ensure that their investments are generating adequate returns relative to the risks involved. It also aids in detecting potential inefficiencies, understanding market conditions, and making informed adjustments to the portfolio. Over time, portfolio performance evaluations help improve decision-making, optimize returns, and manage risks effectively.

Key Concepts in Portfolio Performance

Before diving into the metrics used to evaluate portfolio performance, it’s essential to understand the basic principles:

  • Return: The profit or loss derived from an investment.
  • Risk: The probability that the actual return will differ from the expected return.
  • Volatility: A statistical measure of the dispersion of returns for a portfolio.
  • Diversification: A strategy that reduces risk by investing in different assets that do not move in tandem.

Metrics for Evaluating Portfolio Performance

Return on Investment (ROI)

Return on Investment (ROI) is a basic metric used to calculate the percentage return on an investment relative to the initial investment. It provides a simple view of profitability but does not consider risk.

Formula:

def calculate_roi(initial_investment, final_value):
roi = (final_value - initial_investment) / initial_investment * 100
return roi

# Example
initial_investment = 10000
final_value = 12000
roi = calculate_roi(initial_investment, final_value)
print(f"ROI: {roi}%")

Output:
ROI: 20.0%

Maximum Drawdown

Maximum Drawdown (MDD) measures the largest percentage loss from a portfolio’s peak to its trough during a specific time period. It is a crucial metric for understanding potential downside risks.

Formula:

def maximum_drawdown(prices):
peak = prices[0]
max_drawdown = 0
for price in prices:
peak = max(peak, price)
drawdown = (peak - price) / peak
max_drawdown = max(max_drawdown, drawdown)
return max_drawdown

prices = [100, 120, 115, 130, 90, 95, 110, 80, 85]
max_dd = maximum_drawdown(prices)
print(f"Maximum Drawdown: {max_dd * 100:.2f}%")

Output:
Maximum Drawdown: 38.46%

Portfolio Beta

Portfolio Beta measures the sensitivity of the portfolio to the movements of the overall market. A beta greater than 1 indicates higher volatility compared to the market, while a beta less than 1 indicates lower volatility.

Formula:

import numpy as np

def portfolio_beta(portfolio_returns, market_returns):
covariance = np.cov(portfolio_returns, market_returns)[0, 1]
variance = np.var(market_returns)
beta = covariance / variance
return beta

# Example data
portfolio_returns = [0.05, 0.1, 0.02, 0.07, 0.04] # Sample portfolio returns
market_returns = [0.06, 0.09, 0.03, 0.08, 0.05] # Sample market returns

# Calculate portfolio beta
beta = portfolio_beta(portfolio_returns, market_returns)

# Print the result
print(f"Portfolio Beta: {beta}")

Output:
Portfolio Beta: 1.5570175438596492

Sharpe Ratio

The Sharpe Ratio measures risk-adjusted returns. It shows how much excess return you receive for the extra volatility endured by holding a riskier asset. A higher Sharpe Ratio indicates better risk-adjusted performance.

Formula:

Output:
Sharpe Ratio: 0.6666666666666666

Sortino Ratio

The Sortino Ratio is a variation of the Sharpe Ratio that penalizes only downside volatility, or negative returns. This makes it more suitable for investors who are primarily concerned with minimizing losses rather than total volatility.

Formula:

Output:
Sortino Ratio: 0.9999999999999999

Treynor Ratio

The Treynor Ratio measures how well a portfolio has performed in relation to the risk taken, as measured by its beta (systematic risk).

Formula:

Output:
Treynor Ratio: 0.0909

Calmar Ratio

The Calmar Ratio compares the portfolio’s annualized return to its maximum drawdown, making it useful for evaluating portfolios with significant risk exposure.

Formula:

def calmar_ratio(annual_return, max_drawdown):
return annual_return / max_drawdown

# Example values
annual_return = 0.15 # 15% annual return
max_drawdown = 0.2 # 20% maximum drawdown

# Calculate Calmar Ratio
calmar = calmar_ratio(annual_return, max_drawdown)

# Print the result
print(f"Calmar Ratio: {calmar:.2f}")

Output:
Calmar Ratio: 0.75

Ulcer Index

The Ulcer Index measures downside risk and volatility by focusing on periods when portfolio prices fall. It is useful for investors worried about sustained losses.

Formula:

def ulcer_index(prices):
max_price = prices[0]
squared_drawdowns = []
for price in prices:
max_price = max(max_price, price)
drawdown = (price - max_price) / max_price
squared_drawdowns.append(drawdown**2)
ulcer = (sum(squared_drawdowns) / len(prices)) ** 0.5
return ulcer

prices = [100, 105, 102, 98, 110, 107, 115]
ulcer = ulcer_index(prices)
print(f"Ulcer Index: {ulcer:.4f}")

Output:
Ulcer Index: 0.0293

Jensen’s Alpha

Jensen’s Alpha measures the excess return of a portfolio relative to its expected return based on the market’s performance, adjusted for the portfolio’s beta.

Formula:

def jensens_alpha(portfolio_return, risk_free_rate, portfolio_beta, market_return):
expected_return = risk_free_rate + portfolio_beta * (market_return - risk_free_rate)
alpha = portfolio_return - expected_return
return alpha

# Example values
portfolio_return = 0.15 # 15% portfolio return
risk_free_rate = 0.03 # 3% risk-free rate
portfolio_beta = 1.2 # Beta of 1.2
market_return = 0.10 # 10% market return

# Calculate Jensen's Alpha
alpha = jensens_alpha(portfolio_return, risk_free_rate, portfolio_beta, market_return)

# Print the result
print(f"Jensen's Alpha: {alpha:.4f}")

Output:
Jensen’s Alpha: 0.0360

Tracking Error

Tracking Error measures how closely a portfolio’s returns follow the returns of a benchmark index. A lower tracking error indicates closer alignment with the benchmark.

Formula:

import numpy as np

# Define the tracking_error function
def tracking_error(portfolio_returns, benchmark_returns):
diff = np.array(portfolio_returns) - np.array(benchmark_returns)
return np.std(diff)

# Example data
portfolio_returns = [0.05, 0.02, 0.03, 0.04, 0.06] # 5% to 6% returns
benchmark_returns = [0.04, 0.03, 0.02, 0.05, 0.04] # 2% to 5% returns

# Calculate tracking error
te = tracking_error(portfolio_returns, benchmark_returns)

# Print the output
print(f"Tracking Error: {te:.4f}")

Output:
Tracking Error: 0.0120

Information Ratio

The information ratio evaluates portfolio performance relative to a benchmark and adjusts it for the risk taken. It’s the ratio of active return to tracking error.

Formula:

def information_ratio(portfolio_return, benchmark_return, tracking_error):
active_return = portfolio_return - benchmark_return
return active_return / tracking_error

portfolio_return = 0.12 # Example value
benchmark_return = 0.08 # Example value
tracking_error = 0.02 # Example value

info_ratio = information_ratio(portfolio_return, benchmark_return, tracking_error)
print(f"Information Ratio: {info_ratio:.2f}")

Output:
Information Ratio: 2.00

Serenity Factor

The Serenity Factor is a risk-adjusted performance metric that balances returns with downside volatility, emphasizing consistency and stability over time.

Formula:

def serenity_factor(portfolio_return, downside_risk, max_drawdown):
return portfolio_return / (downside_risk * max_drawdown)

portfolio_return = 0.1 # example value
downside_risk = 0.05 # example value
max_drawdown = 0.2 # example value

sf = serenity_factor(portfolio_return, downside_risk, max_drawdown)
print(f"Serenity Factor: {sf:.4f}")

Output:
Serenity Factor: 10.0000

Recovery Factor

The Recovery Factor measures a portfolio’s ability to recover from drawdowns, indicating the portfolio’s resilience and long-term sustainability.

Formula:

def recovery_factor(portfolio_return, max_drawdown):
return portfolio_return / max_drawdown

portfolio_return = 0.15 # Example portfolio return
max_drawdown = 0.10 # Example maximum drawdown

recovery = recovery_factor(portfolio_return, max_drawdown)
print(f"Recovery factor: {recovery:.2f}")

Output:
Recovery factor: 1.50

Adjustments in Portfolio Performance Evaluation

Risk Adjustments

Risk adjustments in performance metrics ensure that the potential downside is considered. Metrics like the Sharpe Ratio and Sortino Ratio adjust returns based on the risk associated with the portfolio, giving a more accurate picture of performance relative to volatility.

Market Adjustments

Market conditions influence portfolio returns. Market adjustments, such as adjusting for inflation or comparing performance to a market benchmark (like the S&P 500), help investors assess how their portfolio performs relative to the broader economy.

The Role of Diversification in Portfolio Performance

Benefits of Diversification

Diversification reduces risk by spreading investments across various asset classes, industries, or geographical regions. This reduces the impact of any single asset’s poor performance on the overall portfolio.

Measuring Diversification’s Effect on Performance

Metrics such as correlation between assets and Beta (a measure of a portfolio’s sensitivity to market movements) help investors assess the level of diversification. A lower correlation between assets typically indicates better diversification.

The Impact of Economic Factors on Portfolio Performance

Interest Rates and Portfolio Performance

Interest rates directly affect the performance of portfolios, especially those heavy in bonds. Rising interest rates can reduce bond prices, while falling rates can increase their value. Equity investments can also be influenced, as higher rates may lead to lower corporate earnings.

Inflation and Portfolio Performance

Inflation erodes purchasing power and can diminish real returns on investments. Investors must account for inflation when evaluating portfolio performance, as nominal gains might not reflect real profitability.

How to Analyze and Monitor Portfolio Health

Portfolio Return vs. Benchmark

Comparing portfolio returns to a relevant benchmark, such as an index, helps investors determine whether the portfolio is outperforming or underperforming the market.

Standard Deviation

Formula:

Explanation:
Standard deviation measures the volatility or risk associated with the portfolio’s returns. A higher standard deviation indicates greater variability in returns, suggesting higher risk.

Beta

Formula:

Explanation:
Beta measures a portfolio’s sensitivity to overall market movements. A beta greater than 1 indicates higher sensitivity, while a beta less than 1 suggests lower volatility than the market.

R-Squared

Explanation:
R-Squared measures how well the portfolio’s movements correlate with the benchmark index. It ranges from 0 to 100, with a higher value indicating a closer correlation.

Bottom Line

Understanding portfolio performance requires analyzing several metrics, each offering a unique perspective on returns and risks. By evaluating key ratios like ROI, Sharpe, and Sortino, and accounting for diversification and economic factors, investors can make informed decisions. Regularly monitoring performance against benchmarks and using tools like standard deviation, Beta, and R-Squared ensures a well-rounded view of portfolio health.

Comparison of Metrics:

Conclusion

Understanding portfolio performance is crucial for both novice and seasoned investors to ensure that their investments are aligned with their financial goals. A variety of metrics can be used to evaluate portfolio health, each offering unique insights into returns, risks, and market behavior.

  • Return on Investment (ROI) provides a simple, straightforward measure of profitability but lacks insight into risk.
  • Sharpe Ratio and Sortino Ratio go a step further by adjusting for risk, with the Sortino Ratio focusing on downside risk, which is particularly valuable for risk-averse investors.
  • Standard Deviation and Beta help investors assess the portfolio’s volatility and sensitivity to market movements, respectively, offering insights into risk but lacking performance insights.
  • R-squared serves as a supplementary metric, helping to measure how much of the portfolio’s performance is tied to market trends.

By selecting the right combination of metrics, investors can form a holistic view of their portfolio’s performance. Metrics that incorporate risk, such as the Sharpe and Sortino ratios, are beneficial for long-term, risk-conscious investors. Meanwhile, market-sensitive metrics like Beta and R-squared provide a better understanding of how market conditions affect portfolio performance.

Ultimately, there are only so many best metrics for evaluating portfolio performance. The choice of metrics should depend on the investor’s goals, risk tolerance, and the specific characteristics of their portfolio. Regular analysis and monitoring using these metrics enable investors to make informed decisions, adapt to changing market conditions, and optimize their portfolios for long-term success.

--

--

Gaurav Kumar
Gaurav Kumar

No responses yet