""" Name : c9_32_mean_and_var.py Book : Python for Finance (2nd ed.) Publisher: Packt Publishing Ltd. Author : Yuxing Yan Date : 6/6/2017 email : yany@canisius.edu paulyxy@hotmail.com """ import numpy as np import pandas as pd import scipy as sp from matplotlib.finance import quotes_historical_yahoo_ochl as getData tickers=('IBM','WMT','C') # tickers begdate=(2012,1,1) # beginning date enddate=(2016,12,31) # ending date n=len(tickers) # number of observations def ret_f(ticker,begdate,enddte): x=getData(ticker,begdate,enddate,asobject=True,adjusted=True) ret =x.aclose[1:]/x.aclose[:-1]-1 return ret def meanVarAnnual(ret): meanDaily=sp.mean(ret) varDaily=sp.var(ret) meanAnnual=(1+meanDaily)**252 varAnnual=varDaily*252 return meanAnnual, varAnnual for i in sp.arange(n): ret=ret_f(tickers[i],begdate,enddate) print(meanVarAnnual(ret))