From 55f209fbb31594d2730e4f0d24ae9b69f8a81728 Mon Sep 17 00:00:00 2001 From: northern-64bit <75195383+northern-64bit@users.noreply.github.com> Date: Sat, 14 Jan 2023 13:47:52 +0100 Subject: [PATCH] Fix issue 3960 --- openbb_terminal/portfolio/portfolio_model.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/openbb_terminal/portfolio/portfolio_model.py b/openbb_terminal/portfolio/portfolio_model.py index f6703b0ec6c..e13f25464dc 100644 --- a/openbb_terminal/portfolio/portfolio_model.py +++ b/openbb_terminal/portfolio/portfolio_model.py @@ -727,6 +727,13 @@ def get_summary( portfolio_engine.benchmark_returns, window ) + r2_portfolio_returns = portfolio_returns.copy() + r2_benchmark_returns = benchmark_returns.copy() + if len(portfolio_returns) > len(benchmark_returns): + r2_portfolio_returns = r2_portfolio_returns[r2_portfolio_returns.index.isin(r2_benchmark_returns.index)] + elif len(portfolio_returns) < len(benchmark_returns): + r2_benchmark_returns = r2_benchmark_returns[r2_benchmark_returns.index.isin(r2_portfolio_returns.index)] + metrics = { "Volatility": [portfolio_returns.std(), benchmark_returns.std()], "Skew": [ @@ -750,8 +757,8 @@ def get_summary( metrics_model.sortino_ratio(benchmark_returns, risk_free_rate), ], "R2 Score": [ - r2_score(portfolio_returns, benchmark_returns), - r2_score(portfolio_returns, benchmark_returns), + r2_score(r2_portfolio_returns, r2_benchmark_returns), + r2_score(r2_portfolio_returns, r2_benchmark_returns), ], }