def __init__(self): RiskFactor.__init__(self) self.exposure_path = self.data_path self.raw_factor_name = 'cne5_raw_beta' self.factor_name = 'cne5_normal_beta' self.raw_res_pct_factor_name = "cne5_raw_beta_res_pct"
def __init__(self): RiskFactor.__init__(self) self.exposure_path = self.data_path self.factor_name = 'cne5_normal_liquidity' self.raw_factor_name_month = 'cne5_raw_liquidity_month' self.factor_name_month = 'cne5_normal_liquidity_month' self.raw_factor_name_quarter = 'cne5_raw_liquidity_quarter' self.factor_name_quarter = 'cne5_normal_liquidity_quarter' self.raw_factor_name_yearly = 'cne5_raw_liquidity_yearly' self.factor_name_yearly = 'cne5_normal_liquidity_yearly'
def __init__(self): RiskFactor.__init__(self) self.exposure_path = self.data_path self.factor_name = 'cne5_normal_res_vol' self.raw_factor_name_std = 'cne5_raw_res_vol_std' self.factor_name_std = "cne5_normal_res_vol_std" self.raw_factor_name_range = 'cne5_raw_res_vol_cumulative_range' self.factor_name_range = 'cne5_normal_res_vol_cumulative_range' self.raw_factor_name_hsigma = 'cne5_raw_res_vol_hsigma' self.factor_name_hsigma = 'cne5_normal_res_vol_hsigma'
def __init__(self): RiskFactor.__init__(self) self.exposure_path = self.data_path self.factor_name = 'cne5_normal_earning_yield' self.factor_name_predicted = 'cne5_normal_earning_yield_predicted' self.raw_factor_name_predicted = 'cne5_raw_earning_yield_predicted' self.factor_name_cash = 'cne5_normal_earning_yield_cash' self.raw_factor_name_cash = 'cne5_raw_earning_yield_cash' self.factor_name_trailing = 'cne5_normal_earning_yield_trailing' self.raw_factor_name_trailing = 'cne5_raw_earning_yield_trailing'
def __init__(self): RiskFactor.__init__(self) self.exposure_path = self.data_path self.factor_name = 'cne5_normal_leverage' self.factor_name_debt_to_asset = 'cne5_normal_leverage_debt_to_asset' self.raw_factor_name_debt_to_asset = 'cne5_raw_leverage' self.factor_name_market_leverage = 'cne5_normal_leverage_market_leverage' self.raw_factor_name_market_leverage = 'cne5_raw_leverage_market_leverage' self.factor_name_book_leverage = 'cne5_normal_leverage_book_leverage' self.raw_factor_name_book_leverage = 'cne5_raw_leverage_book_leverage'
def __init__(self): RiskFactor.__init__(self) self.exposure_path = self.data_path self.factor_name = 'cne5_normal_growth' self.factor_name_long_term = 'cne5_normal_growth_long_term_predicted_earnings' self.raw_factor_name_long_term = 'cne5_raw_growth_long_term_predicted_earnings' self.raw_factor_name_short_term = 'cne5_raw_growth_short_term_predicted_earnings' self.factor_name_short_term = 'cne5_normal_growth_short_term_predicted_earning' self.raw_factor_name_5y_profit = 'cne5_raw_growth_5year_profit' self.factor_name_5y_profit = 'cne5_normal_growth_5year_profit' self.raw_factor_name_5y_sale = 'cne5_raw_growth_5year_sale' self.factor_name_5y_sale = 'cne5_normal_growth_5year_sale'
def cal_and_mail(self): """ 计算、压缩、发送邮件 """ factor_name = "risk_raw_fund_etf_holder" today = datetime.today().strftime("%Y%m%d") beg_date = Date().get_trade_date_offset(today, -12) RiskFactorFundETFHolder().update_data(beg_date, today) RiskFactorFundETFHolder().cal_factor_exposure(beg_date, today) RiskFactor().generate_patch_file(factor_name, beg_date, today) path = RiskFactor().exposure_txt_path sub_path = os.path.join(path, factor_name) zip_file = os.path.join(path, "Risk_Factor.rar") ZipFile().zip_folder(sub_path, zip_file) email = EmailSender() email.attach_file(zip_file) sender_mail_name = "*****@*****.**" receivers_mail_name = [ "*****@*****.**", "*****@*****.**" ] email.send_mail_mfcteda(sender_mail_name, receivers_mail_name, [], "Risk_Factor") os.remove(zip_file)
def get_data_all(self, risk_model_name): """ 得到所有需要的数据 """ self.set_model_name(risk_model_name) self.style_factor_name = self.get_risk_factor_list() self.industry_factor_name = Stock().get_industry_citic1_en_name() self.pct_chg = Stock().read_factor_h5("Pct_chg") self.free_mv_data = Stock().read_factor_h5( "Mkt_freeshares") / 100000000.0 self.trade_status = Stock().read_factor_h5("TradingStatus") self.industry = Stock().read_factor_h5("industry_citic1") self.style_factor_data = pd.Panel() for i_style in range(len(self.style_factor_name)): factor_name = self.style_factor_name[i_style] data = RiskFactor().get_risk_factor_exposure(factor_name) self.style_factor_data = pd.concat([self.style_factor_data, data], axis=0) self.style_factor_data.items = self.style_factor_name
def __init__(self): RiskFactor.__init__(self) self.exposure_path = self.data_path self.factor_name = 'cne5_normal_cube_size'
def __init__(self): RiskFactor.__init__(self) self.exposure_path = self.data_path self.raw_factor_name = 'cne5_raw_momentum' self.factor_name = 'cne5_normal_momentum'
def __init__(self): RiskFactor.__init__(self) self.exposure_path = self.data_path self.raw_factor_name = 'risk_raw_fund_etf_holder' self.factor_name = 'risk_normal_fund_etf_holder'
def __init__(self): RiskFactor.__init__(self) self.exposure_path = self.data_path self.raw_factor_name = 'risk_raw_gem'