Ejemplo n.º 1
0
	def insert_time_to_recession(self):
		# Get Data Read
		hndl_Data_Read = EMF_DataSeries_Handle(self.hndl_DB, ticker='US_Rec_Ind')
		hndl_Data_Read.save_series_local()
		# Insert Time To
		hndl_Data_Wrte = EMF_DataSeries_Handle(	self.hndl_DB, 
												name='Months to Next Recession', 
												ticker='US_TimeUntilRec',
												insertIfNot=True)
		data = hndl_Data_Read.get_series_values()
		dates = hndl_Data_Read.get_series_dates()
		trns_Data = transform_TimeToValue(data, {TIME_TO_VALUE: 1})[DATA_KEY]
		count = self.find_time_to_recession_limits(trns_Data)
		trns_Data = trns_Data[:-count]
		trns_Dates = dates[:-count]
		hndl_Data_Wrte.save_series_db(trns_Dates, trns_Data)
		hndl_Data_Wrte.periodicity = hndl_Data_Read.periodicity
		# Insert Time Since
		hndl_Data_Wrte = EMF_DataSeries_Handle(	self.hndl_DB, 
												name='Months since Last Recession', 
												ticker='US_TimeSinceRec',
												insertIfNot=True)
		
		trns_Data = transform_TimeSinceValue(data, {TIME_SINCE_VALUE: 1})[DATA_KEY]
		count = self.find_time_since_recession_limits(trns_Data)
		trns_Data = trns_Data[count:]
		trns_Dates = dates[count:]
		hndl_Data_Wrte.save_series_db(trns_Dates, trns_Data)		
		hndl_Data_Wrte.periodicity = hndl_Data_Read.periodicity
Ejemplo n.º 2
0
	def select_resp_words_all_permutations(self):
		log.info('WORDSELECT: Response Words: Choosing All Data Tickers')
		if self._resp_data_tickers is None:
			self.__add_resp_data_tickers()
		log.info('WORDSELECT: Response Words: Choosing All Transformations')
		trns_list = {}
		for trns in self.resp_trns_ptrns:
			for (k, v_list) in self.resp_trns_kwargs.iteritems():
				for v in v_list:
					hndl_Trns = EMF_Transformation_Handle(trns)
					hndl_Trns.set_extra_parameter(k, v)
					trns_list[str(hndl_Trns)] = hndl_Trns
		trns_list = trns_list.values()
		log.info('WORDSELECT: Response Words: Created {0} Transformations'.format(len(trns_list)))
		self._resp_words = []
		count = 0
		for ticker in self.resp_data_tickers:
			hndl_Data = EMF_DataSeries_Handle(self.hndl_DB, ticker=ticker)
			hndl_Data.save_series_local()			
			for hndl_Trns in trns_list:
				hndl_Word = EMF_WordSeries_Handle(self.hndl_DB, hndl_Data, hndl_Trns)
				self._resp_words.append(hndl_Word)
				count += 1
		log.info('WORDSELECT: Response Words: Created {0} Response Words'.format(count))