The daily portfolio value is important for calculating other statistics like:
cum_retavg_daily_returnstd_daily_retsharpe_ratioGiven the following:
start_val = 1000000
start_date = 2009-1-1
end_date = 2011-12-31
symbols = ['SPY', 'XOM', 'GOOG', 'GLD']
allocs = [0.4, 0.4, 0.1, 0.1]

normed = prices/prices[0]alloced = normed * allocspos_vals = alloced * start_valport_val = pos_vals.sum(axis=1)<aside>
💡 Ignore the first value for daily_rets as it will be 0 (daily_rets = daily_rets[1:])
</aside>
# 4 different statistics
cum_ret = (port_val[-1]/port_val[0]) - 1
avg_daily_ret = daily_rets.mean()
std_daily_ret = daily_rets.std()
sharpe_ratio # See below
<aside> 📌 SUMMARY:
</aside>
Sharpe Ratio is used to calculate the risk adjusted return. A higher Sharpe Ratio might indicate a better stock
For:
<aside> 💡 Sharpe Ratio: $\frac{R_p - R_f}{\sigma_p}$, $S=\frac{E[R_p-R_f]}{std[R_p-R_f]}$
</aside>
S = mean(daily_rets - daily_rf)/std(daily_rets - daily_rf)
Traditional shortcut (e.g., if risk free was 10% and we have 252 trading days): $\sqrt[252]{1+0.1} - 1$
S = mean(daily_rets - daily_rf)/std(daily_rets)
Based on how frequently we sample for the daily returns, we need to adjust the SR accordingly
SR = sqrt(252) * (mean(daily_rets - daily_rf)/std(daily_rets))
<aside> 📌 SUMMARY: Portfolio evaluations depend on: cumulative return, average daily return, risk (std. dev of daily returns) and Sharpe Ratio.
</aside>