def __init__(self, port_name): Data.__init__(self) self.wind_port_path = WindPortUpLoad().path self.data_weight_path = Index().data_path_weight self.data_factor_path = Index().data_data_factor self.port_name = '天风股票基金'
def __init__(self, fund_pool_name="指数+主动股票+灵活配置60基金", benchmark_name="基金持仓基准基金池", alpha_len=750, alpha_column="RegressAlphaIR", port_name="股票型基金优选750AlphaIR", style_deviate=0.10, position_deviate=0.02, fund_up_ratio=0.15, turnover=0.30 ): Data.__init__(self) self.sub_data_path = r'fund_data\nice_stock_fund' self.port_name = port_name self.fund_pool_name = fund_pool_name self.benchmark_name = benchmark_name self.alpha_len = alpha_len self.setup_date_len = self.alpha_len + 50 self.style_deviate = style_deviate self.position_deviate = position_deviate self.fund_up_ratio = fund_up_ratio self.turnover = turnover # double self.alpha_column = alpha_column self.data_path = os.path.join(self.primary_data_path, self.sub_data_path, self.port_name) self.port_path = os.path.join(WindPortUpLoad().path, self.port_name) if not os.path.exists(self.port_path): os.makedirs(self.port_path) if not os.path.exists(self.data_path): os.makedirs(self.data_path)
def __init__(self): """ 宏观数据的下载 和获取 """ Data.__init__(self) self.sub_data_path = r'macro_data\data' self.data_path = os.path.join(self.primary_data_path, self.sub_data_path)
def __init__(self): Data.__init__(self) self.sub_data_path = r'barra_data' self.load_from_path = "\\\\10.3.12.202\\fe\\risk_model\\" self.data_path = os.path.join(self.primary_data_path, self.sub_data_path)
def __init__(self): """ 优化函数母类 主要是共同的取数据函数 """ Data.__init__(self) self.port_name = "" self.benchmark_code = "" self.stock_pool_name = "" self.industry_deviate = "" self.style_deviate = "" self.stock_deviate = "" self.double_turnover = "" self.min_tor = 0.001 # 权重最小容忍值 self.style_columns = [] self.weight_sum = 0.95 self.track_error = 0.05 self.free_mv = None self.trading_status = None self.alpha_data = None self.date_series = None self.wind_port_path = WindPortUpLoad().path
def __init__(self, folder_name="SizeIndex", index_code_list=None): """ 可以修改回归的指数列表 和文件夹的名称 """ Data.__init__(self) self.folder_name = folder_name self.sub_data_path = r'fund_data\fund_exposure\fund_regression_exposure_index' self.file_prefix = "IndexExposure" self.index_exposure_path = os.path.join(self.primary_data_path, self.sub_data_path, self.folder_name) if not os.path.exists(self.index_exposure_path): os.makedirs(self.index_exposure_path) if index_code_list is None: self.index_code_list = [ "885062.WI", "885008.WI", "801853.SI", "000300.SH", "000905.SH", "000852.SH", "399006.SZ", "399005.SZ" ] else: self.index_code_list = index_code_list # 默认参数 self.regression_period = 20 self.regression_period_min = 15 self.turnover = 0.03 self.asset_pct = ""
def __init__(self): Data.__init__(self) self.sub_data_path = r'stock_data\risk_model\model' self.data_path = os.path.join(self.primary_data_path, self.sub_data_path) self.model_performance_path = os.path.join( self.primary_data_path, r'stock_data\risk_model\model_performance') self.model_path = "" self.risk_model_name = "" self.exposure_path = "" self.factor_return_path = "" self.res_return_path = "" self.factor_cov_path = "" self.stock_res_cov_path = "" self.stock_cov_path = "" self.pct_chg = None self.free_mv_data = None self.trade_status = None self.industry = None self.style_factor_name = None self.change_style_factor_name = None self.style_factor_data = None self.industry_factor_name = None self.date_series = None
def __init__(self): Data.__init__(self) self.sub_data_path = r'mfcteda_data\fund_report\quarter_report' self.data_path = os.path.join(self.primary_data_path, self.sub_data_path) self.network_path = r'\\10.1.0.7\rd\※※金融工程部数据产品※※\# 基金季报月报\基金季报'
def __init__(self): """ 初始化 """ Data.__init__(self) self.sub_data_path = r'mfcteda_data\attribution' self.data_path = os.path.join(self.primary_data_path, self.sub_data_path) self.double_fee_ratio = 0.001 + 0.0008 * 2 # 印花税 + 交易佣金 self.mg_fee_ratio = (1.2 / 100 + 0.2 / 100) / 250.0 # 管理费 self.index_code_ratio = 0.95 self.index_code = "" self.fund_code = "" self.fund_name = "" self.type = "" self.beg_date = "" self.end_date = "" self.beg_date_pre = "" self.period_name = "" self.close_unadjust = None self.adjust_factor = None self.data = None self.ipo_days = 40 self.ipo_data = Stock().get_ipo_date() self.ipo_data.columns = ['IpoDate', 'DeListDate'] self.ipo_data = pd.DataFrame(self.ipo_data['IpoDate'])
def __init__(self): """ 数据存储位置 """ Data.__init__(self) self.sub_data_path = r"index_data\timing" self.data_path = os.path.join(self.primary_data_path, self.sub_data_path)
def __init__(self, regress_length=25, regress_length_min=20, stock_ratio_up=0.95, stock_ratio_low=0.60, turnover_daily=0.035, index_code_list=None): Data.__init__(self) self.data_path = os.path.join(self.primary_data_path, r'fund_data\fund_stock_style_ratio') index_close = Index().get_index_cross_factor(factor_name='CLOSE') index_pct = index_close.pct_change() * 100 fund_return = FundFactor().get_fund_factor("Repair_Nav_Pct") self.data_return = pd.concat([index_pct, fund_return], axis=1) self.regress_length = regress_length self.regress_length_min = regress_length_min self.stock_ratio_up = stock_ratio_up self.stock_ratio_low = stock_ratio_low self.turnover_daily = turnover_daily if index_code_list is None: # 需要有债券指数 来测量股债仓位 self.index_code_list = [ "885062.WI", "801853.SI", "000300.SH", "000905.SH", "000852.SH", "399006.SZ" ] self.index_name_list = [ '短期纯债基金', '绩优股指数', '沪深300', '中证500', '中证1000', '创业板指' ] else: self.index_code_list = index_code_list
def __init__(self): Data.__init__(self) self.sub_data_path = r'mfcteda_data' self.data_path = os.path.join(self.primary_data_path, self.sub_data_path) self.ftp_path = r'\holdingdata' self.network_path = r'\\10.1.0.7\内外网文档交换\内网转外网\金融工程部\窦福成\holdingdata'
def __init__(self): """ 数据存储位置 """ Data.__init__(self) self.port_name = "ZZ500_3Factor" self.wind_port_path = WindPortUpLoad().path self.data_weight_path = Index().data_path_weight self.data_factor_path = Index().data_data_factor self.beg_date = "20170301"
def __init__(self): Data.__init__(self) self.wind_port_path = WindPortUpLoad().path self.data_weight_path = Index().data_path_weight self.data_factor_path = Index().data_data_factor self.port_name = '天风股票基金' self.fund_index_code = "885000.WI"
def __init__(self): Data.__init__(self) self.sub_data_path = r'fund_data\nice_index_fund' self.data_path = os.path.join(self.primary_data_path, self.sub_data_path) self.data_min_length = 200 # 最短有效数据长度 self.data_length = 250
def __init__(self): Data.__init__(self) self.sub_data_path = r'fund_data\fund_holding_data\fund_holding_quarter_simulation' self.data_path_holder_simulate = os.path.join(self.primary_data_path, self.sub_data_path) self.industry_data = None self.stock_data = None
def __init__(self): # 和FundFactor的路径一样 读取也利用FundFactor Data.__init__(self) self.sub_data_path = r'fund_data\fund_factor_data' self.data_path_holder_factor = os.path.join(self.primary_data_path, self.sub_data_path)
def __init__(self): """ 初始化数据存储位置和参数 """ Data.__init__(self) self.sub_data_path = 'mfcteda_data\cal_ipo_sell' self.ftp_path = "\\ipo_stock_sell\\" self.data_path = os.path.join(self.primary_data_path, self.sub_data_path) self.new_days = 60 # 60自然日
def __init__(self, fund_code): Data.__init__(self) self.port_name = "半年报%s" % fund_code self.fund_code = fund_code self.wind_port_path = WindPortUpLoad().path self.data_weight_path = Index().data_path_weight self.data_factor_path = Index().data_data_factor
def __init__(self): """ 初始化数据存储位置和参数 """ Data.__init__(self) self.sub_data_path = 'mfcteda_data\cal_ipo_buy' self.network_path = r'\\10.1.0.7\rd\※※金融工程部数据产品※※\新股申购文件' self.ftp_path = "\\ipo_stock_buy\\" self.data_path = os.path.join(self.primary_data_path, self.sub_data_path)
def __init__(self): Data.__init__(self) self.regression_exposure_name = 'Fund_Regression_Exposure_Style' self.regression_period = 60 self.regression_period_min = 40 self.sub_data_path = r'fund_data\fund_exposure' self.data_path_exposure = os.path.join(self.primary_data_path, self.sub_data_path)
def __init__(self): Data.__init__(self) self.port_name = "主动股票基金month" self.wind_port_path = WindPortUpLoad().path self.data_weight_path = Index().data_path_weight self.data_factor_path = Index().data_data_factor self.stock_ratio = None
def __init__(self): Data.__init__(self) self.data_path = os.path.join( self.primary_data_path, r"fund_data\fund_holding_data\fund_holding_benchmark") # 全部股票权重下限和前10大重仓权重下限 self.sum_weight_low = 60 self.top10_weight_low = 30
def __init__(self): Data.__init__(self) self.port_name = "普通股票型基金_等权季报_报告日" self.wind_port_path = WindPortUpLoad().path self.data_weight_path = Index().data_path_weight self.data_factor_path = Index().data_data_factor self.stock_ratio = None
def __init__(self): self.regression_exposure_name = 'Fund_Regression_Risk_Alpha_Style' self.index_code_list = [ "885062.WI", "885008.WI", "801853.SI", "000300.SH", "000905.SH", "000852.SH", "399006.SZ", "399005.SZ" ] Data.__init__(self) self.sub_data_path = r'fund_data\fund_barra_exposure' self.data_path_exposure = os.path.join(self.primary_data_path, self.sub_data_path)
def __init__(self, today=datetime.today().strftime("%Y%m%d")): """ 初始化 """ Data.__init__(self) self.sub_data_path = r'mfcteda_data\mail_holding' self.data_path = os.path.join(self.primary_data_path, self.sub_data_path) self.today = Date().change_to_str(today) self.index_code_list = [ "000300.SH", "000905.SH", "000016.SH", "881001.WI", '399101.SZ', '399102.SZ' ]
def __init__(self): """ 数据存储位置 """ Data.__init__(self) self.sub_data_path = r'stock_data\alpha_model' self.data_path = os.path.join(self.primary_data_path, self.sub_data_path) self.exposure_hdf_path = os.path.join(self.data_path, r'factor\hdf') self.exposure_csv_path = os.path.join(self.data_path, r'factor\csv') self.factor_performance_path = os.path.join(self.data_path, r'factor_performance')
def __init__(self): """ 数据存储位置 """ Data.__init__(self) self.sub_data_path = r'stock_data\stock_factor' self.data_path = os.path.join(self.primary_data_path, self.sub_data_path) self.exposure_hdf_path = os.path.join(self.data_path, r'primary_factor\hdf') self.exposure_csv_path = os.path.join(self.data_path, r'primary_factor\csv')
def __init__(self): Data.__init__(self) self.sub_data_path = r'mfcteda_data\fund_report\advertise_report' self.data_path = os.path.join(self.primary_data_path, self.sub_data_path) self.web_path = r'\\10.1.0.7\rd\※※金融工程部数据产品※※\# 基金季报月报\基金宣传单页' self.param_file = os.path.join(self.data_path, r"参数", '宣传单页参数表.xlsx') self.web_param_file = os.path.join(self.web_path, r"参数", '宣传单页参数表.xlsx') print(self.param_file) print(self.web_param_file)
def __init__(self): Data.__init__(self) self.port_name = "普通股票型基金跟随" self.wind_port_path = WindPortUpLoad().path self.data_weight_path = Index().data_path_weight self.data_factor_path = Index().data_data_factor self.stock_ratio = None self.free_mv = None self.pct = None self.group = 5