Need help in verifying the way beta is calculated in below two ways: beta = { 'AAPL' : (df['AAPL'].rolling(252).corr(df['QQQ'])) * (df['AAPL'].rolling(252).std() ) / (df['QQQ'].rolling(252).std()), 'AMZN' : (df['AMZN'].rolling(252).corr(df['QQQ']) * df['AMZN'].rolling(252).std() ) / (df['QQQ'].rolling(252).std()), 'GOOGL' : (df['GOOGL'].rolling(252).corr(df['QQQ']) * df['GOOGL'].rolling(252).std() ) / (df['QQQ'].rolling(252).std()), 'META' : (df['META'].rolling(252).corr(df['QQQ']) ) * (df['META'].rolling(252).std()) / (df['QQQ'].rolling(252).std()), 'NFLX' : (df['NFLX'].rolling(252).corr(df['QQQ']) * df['NFLX'].rolling(252).std() ) / (df['QQQ'].rolling(252).std()), 'QQQ' : (df['QQQ'].rolling(252).corr(df['QQQ']) * df['QQQ'].rolling(252).std() ) / (df['QQQ'].rolling(252).std()), } beta = pd.DataFrame(beta) beta The solution (in course) to calculate beta is given as below: ''' corr = ret.rolling(252).corr(ret['QQQ']) vol = ret.rolling(252).std() beta = (corr*vol).divide(vol['QQQ'],axis=0) ''' Continue reading...