def __init__(self, P):
		self.R_f = historical.risk_free_return()
		self.R_m = historical.LogReturns('^GSPC')
		self.P = P
		self.R = P.variation()
		self.first_year = max(2005, self.R.TimeWindow.begin.year)
		self.__sharpe_ratio()
		self.__alpha_beta()
示例#2
0
 def __init__(self, P):
     self.R_f = historical.risk_free_return()
     self.R_m = historical.LogReturns('^GSPC')
     self.P = P
     self.R = P.variation()
     self.first_year = max(2005, self.R.TimeWindow.begin.year)
     self.__sharpe_ratio()
     self.__alpha_beta()
	def alpha_beta(self, N = 260, market_return = None, risk_free_return = None):
		import historical
		if market_return is None: market_return = historical.LogReturns('^GSPC')
		if risk_free_return is None: risk_free_return = historical.risk_free_return()
		self_excess = self - risk_free_return
		market_excess = market_return - risk_free_return
		b = self_excess.MultLinearRegr(N, market_excess, constant = True, coef = True)[1]
		W = b.TimeWindow
		alpha = []
		beta = []
		for i in xrange(len(b)):
			alpha.append(b[i][0])
			beta.append(b[i][1])
		return TimeSerie(alpha, W), TimeSerie(beta, W)
示例#4
0
 def alpha_beta(self, N=260, market_return=None, risk_free_return=None):
     import historical
     if market_return is None:
         market_return = historical.LogReturns('^GSPC')
     if risk_free_return is None:
         risk_free_return = historical.risk_free_return()
     self_excess = self - risk_free_return
     market_excess = market_return - risk_free_return
     b = self_excess.MultLinearRegr(N,
                                    market_excess,
                                    constant=True,
                                    coef=True)[1]
     W = b.TimeWindow
     alpha = []
     beta = []
     for i in xrange(len(b)):
         alpha.append(b[i][0])
         beta.append(b[i][1])
     return TimeSerie(alpha, W), TimeSerie(beta, W)