关于我们
方案介绍
版本信息
  • 更新日志
    数据目录说明
相关参考
使用说明
  • 用户注册
    获取订阅数据
    • 访问网站直接下载数据
      通过SeaDrive下载数据
数据结构说明
权益数据说明
  • 行业因子说明
    风格因子说明
    国家因子说明
操作手册
    FactorQuad
    • 功能介绍
      数据准备
      工具包安装
      功能参数配置
      风险因子数据格式转换接口
      风险因子体系相关数据计算接口
      个股风险事件分析
行情数据准备
添加技术支持群

更新日志

📅
🏷️
  • 对2014-01-02至2014-01-08和2021-07-29至2021-08-05行业因子调整期间的行业因子暴露进行了数据清理。
  • 1.支持读取因子暴露和协方差矩阵包含国家因子的因子四元组数据。
📅
🏷️
  • 限制pandas版本小于2.0.0,避免python新版本不兼容问题导致的bug。
  • 1.新增factor_return数据,同时增加wiser_fetch_factor_return接口查询factor_return
  • 2.load_quad_to_csv方法增加csv_output_path参数允许指定目录。
📅
  • 提供中国市场特色的风险因子,日频数据
  • 支持Python接口,易于风险研究
📅
  • 提供中国市场特色的风险因子,月频数据
  • 提供本地端,自动同步化工具。

数据说明

共享文件夹名称 备注 时间范围
Case_HF25_SRAM_DAILY_TRIAL 风险因子日频数据 2021-07-01 至2022-12-31

相关参考

您可以访问清华大学全球证券市场研究院相关网站并下载《中国风险因子白皮书》

中国风险因子白皮书

用户注册

1. 访问 https://oss.wealthengine.cn/ 主页

登陆界面

2. 点击 “”,进入注册页面

输入邮箱地址,初始密码 (首次登录后,系统会要求修改这个初始密码), 点击注册按钮,完成用户注册。

正式登录查看和使用数据之前,请务必联系我方对接的商务人员,以便我们为您开通相应的数据访问权限。 注册页面
✨ 恭喜您,已经完成用户注册了,那么接下来将继续为您讲解如何同步远程服务器上的数据。 👉 获取订阅数据

获取订阅数据

我们为您提供以下两种方式获取数据:

获取订阅数据

访问网站直接下载数据

无需本地安装软件,访问网站即可下载数据,适合实验性研究和产品试用。 

1.访问登录https://oss.wealthengine.cn/

登录成功后, 点击左侧菜单,右侧所列出的文件夹即为我们为您提供的数据。

SeaDrive 2.0 或更新的版本

2.选择文件,点击下载按钮进行数据文件的下载

选择文件
✨ 恭喜您,已经完成数据下载,那么接下来将继续为您讲解如何使用数据文件。 👉 操作手冊

通过SeaDrive下载数据

批量数据自动同步下载客户端

如果您需要批量下载数据,我们为您提供了自动同步数据的客户端,推荐使用 SeaDrive 客户端进行数据同步,它是一款安全、可靠、快速的企业云盘,注重可靠性和性能。支持 Windows, Mac, Linux等多个平台。支持文件同步或者直接挂载到本地访问。

官方网站: https://www.seafile.com/home/

1.SeaDrive挂载盘客户端下载和安装

点击如下链接,下载Seadrive 挂载盘客户端。

🔗下载地址:https://www.seafile.com/download/

如果您使用的是Windows 10或以上版本用户,推荐使用SeaDrive 2.0 或更新的版本。在按照下载页面上的说明下载安装了挂载盘客户端之后,你可以双击桌面上的 SeaDrive 图标来运行挂载盘客户端。程序将会请你选择一个盘符。默认情况下会使用 "S:" 作为挂载盘的盘符。 挂载盘客户端下载和安装

2.登录远程文件服务器

云盘网址:将如下地址填入服务器地址 🔗 https://oss.wealthengine.cn

邮箱/用户名:就是您在 “”页面注册过的邮箱地址(务必使用注册时的邮箱进行登录)

添加账号

在登录成功之后, Seadriver 会自动从服务器上获取你所订阅资料库文件列表。

完成获取列表

SeaDrive 会运行在操作系统后台,显示隐藏菜单中可以看到如下图标,表示SeaDrive正常运行中。双击该图标,挂载盘目录会被自动打开,可以看到资料库和文件列表。

挂载盘里面的文件和目录可能在三种状态:只在云端,完全同步,或者部分同步。

下载数据文件
✨ 恭喜您,已经完成数据下载,那么接下来将继续为您讲解如何使用数据文件。 👉 操作手冊

数据结构说明

您所订阅的数据文件是以Parquet格式进行保存的,Parquet是一种开源列式存储文件,其数据集以嵌套结构存储,具有高效的读取能力,可用于快速查询。

Parquet采用了高效的压缩编码,可以极大降低磁盘存储空间,降低存储成本。

更多关于Parquet文件格式的知识,您可以访问 https://parquet.apache.org/

数据文件包括五种数据结构:

因子暴露(characteristic_exposure)

因子暴露数据表包含A股沪深市场所有上市个股的因子暴露数据。因子是能够解释资产收益变动的一组共同特征, 包括对数市值因子、贝塔因子、农林牧渔行业因子等。因子暴露数据反映了资产收益受因子的影响程度,在因子暴露表中每只个股都有对应的因子暴露。 因子暴露数据经过异方差调整,通过 因子暴露 可以将因子暴露还原回异方差调整前的结果。 个股风格因子暴露经过去极值和标准化处理,因子暴露值越大其收益受到因子影响程度越高;异方差调整前,个股行业因子只在其所属行业上暴露为1, 其他行业上暴露为0,个股国家因子暴露均为1。因子暴露数据可供投资者更好地了解资产的风险特征。

字段 类型 描述
case string 案例代码
date string 日期
characteristic string 因子代码
exposure float 因子暴露
code string 资产代码
type string 因子类别

因子收益率(characteristic_return)

因子收益数据包含全部风险因子的每日收益率。因子收益数据通过构造因子复制模拟投资组合得到。因子收益数据可以帮助投资者了解市场风格的变化,也可以帮助投资者进行归因分析。

字段 类型 描述
case string 案例代码
date string 日期
characteristic string 因子代码
return float 因子收益率
type string 因子类别

因子协方差(characteristic_covariance)

因子协方差矩阵表包含行业因子、风格因子和国家因子的协方差矩阵数据。因子协方差矩阵反映了因子之间的联动关系,若两个因子协方差较低说明他们在市场上的表现相对独立,在这两个因子上的暴露可以分散化投资组合的整体风险。利用因子协方差矩阵和资产的因子暴露也可以得到资产之间的联动关系从而更好地分析管理投资组合。

字段 类型 描述
case string 案例代码
date string 日期
source string 待比因子代码
target string 被比较因子代码
cov float 因子收益率协方差

个股特异性收益波动率(characteristic_idiosyncratic_variance)

个股特异性风险数据包含A股沪深市场所有上市个股的特异性风险。个股特异性风险是不受风险因子影响的个股特有的风险。 由于中国风险因子体系建模时使用了收缩乘子进行异方差调整,因此实际个股的年化特异性波动率等于 个股特异性收益波动率 ,其中psi为个股特异性风险, scale为个股收缩乘子。

字段 类型 描述
case string 案例代码
date string 日期
code string 资产代码
var float 个股特异性收益方差

个股异方差调整参数(characteristic_scale)

个股收缩乘子数据包含A股沪深市场所有上市个股的收缩乘子。收缩乘子是风险因子体系建模时进行异方差调整的权重, 收缩乘子的值等于 个股异方差调整参数

字段 类型 描述
case string 案例代码
date string 日期
code string 资产代码
scale float 用于异方差性调整

注:因子暴露表和因子收益表包含历史上出现过的所有行业,因子协方差表由算法计算得到,其中仅包括算法使用到的行业。在使用数据前应先将选取时间段内每日在因子暴露数据中而不在因子协方差矩阵中行业因子剔除,然后将因子暴露数据中因子全为0的行业剔除,使每日因子暴露与因子协方差矩阵匹配。(推荐使用我们提供的we_factor_quad包进行以上风险因子数据的处理)

行业因子说明

行业因子使用申万一级行业分类,因子数量随时间变化。行业因子名称对照表如下:

序号 行业代码 行业名称
1 industry_Agriculture_Forestry_Farming_Fishing 农林牧渔
2 industry_Mineral 煤炭
3 industry_Chemical 基础化工
4 industry_Steel 钢铁
5 industry_Non_Ferrous_Metal 有色金属
6 industry_Building_Material 建筑材料
7 industry_Mechanical_Equipment 机械设备
8 industry_Electronic 电子
9 industry_Car 汽车
10 industry_Transport_Equipment 交运设备
11 industry_Information_Device 信息设备
12 industry_Home_appliance 家用电器
13 industry_Textile_and_Clothing 纺织服饰
14 industry_Light_manufacturing 轻工制造
15 industry_Biological 医药生物
16 industry_Public_Utility 公用事业
17 industry_Transportation 交通运输
18 industry_Real_Estate 房地产
19 industry_Financial 金融服务
20 industry_Trade_and_Business 商贸零售
21 industry_Community_Service 社会服务
22 industry_Information_Service 信息服务
23 industry_Bank 银行
24 industry_Non_Bank_Financial 非银金融
25 industry_Other 综合
26 industry_Building_Decoration 建筑装饰
27 industry_Electric_Equipment 电力设备
28 industry_Military 国防军工
29 industry_Computer 计算机
30 industry_Media 传媒
31 industry_Communication 通信
32 industry_Petroleum_and_Petrochemical 石油石化
33 industry_Environment 环保
34 industry_Beauty_Care 美容护理
35 industry_Food_and_Beverage 食品饮料

风格因子说明

序号 因子代码 因子名称 因子描述
1 log_market LOG CAP 流通市值的自然对数(log(流通市值))
2 beta BETA BETA值(股票超额收益率 和 市值加权指数收益率的回归系数)
3 log_std Log Daily STD log(日度标准差)
4 log_st_mean Log Annualized Traded Value Ratio log (ewm(换手率)), 半衰期为21个交易日
5 rstr Relative Strength 相对强度(长期动量减短期动量,长期动量窗口252天滞后121天、
短期窗口11天,滞后11天)
6 reversal_short Short Term Reversal 短期反转(最近一个月加权累积对数日收益率)
7 gpm Gross Profit Margin 销售毛利率(主营业务收入-营业成本)/主营业务收入
8 mbs Moneyness Asset to Debt 资产负债充裕性( log( 总资产/总负债) /总资产收益率波动性)
9 roe Return on Equity 股本收益率 (过去12个月净利润/净资产)
10 tagr Total Asset Growth 总资产增长率(近5年总资产对斜率回归取截距/平均总资产,
取相反数)
11 log_bp Log Book to Price log BP (log(净资产/总市值))
12 etopff Predicted Earning to Price Filled 预期未来一年盈利(以盈利填充)/股价
13 ceg Capital Expenditure Growth 资本支出增长率(近五年资本支出对时间回归的斜率除平均资本支出,
取相反数)
14 dtopff Predicted Dividend to Price Filled 预期未来一年平均分红(以过去十二个月分红平均填充)/股价

国家因子说明

序号 因子代码 因子名称 因子描述
1 country 国家因子 国家因子代表在整个国家中影响所有股票的共同因子,对于每只个股取值相同

功能介绍

我们提供了基于 Python 3.9 开发的 FactorQuad 工具包,当您使用该工具包时,您将获得强大的风险管理和风险分析能力,它将帮助您更好地管理资产风险,用途包括:

  • 风险因子数据格式转换
  • 风险因子体系相关数据计算
  • 个股风险事件分析

在风险因子数据格式转换部分,您可以选择使用 FactorQuad 工具包将获取到的数据转 换为 CSV 格式的文件,以便更加方便地查看和使用这些数据。不过,转换为 CSV 格式的文件 并非必须要做,您也可以直接使用并读取 Parquet 文件,详细请参考第五章的相关内容。 在风险因子体系相关数据计算部分,您可以使用 FactorQuad 工具包来计算资产的系统 性风险和特异性风险。通过风险因子数据的处理结果,可以确定各个因素对资产表现的影响 程度。这些数据可以帮助您了解资产在面对市场风险时的表现,并帮助您制定风险管理策略。 在个股风险事件分析部分,FactorQuad 工具包可以展示风险事件发生前后个股特异性 风险和系统性风险的大小,这有助于您更好地了解个股的表现,识别潜在的风险。 FactorQuad 工具包是一个功能强大的风险管理和分析工具,可以帮助您更好地管理资 产,减少潜在风险,并提高投资表现。

技术支持

(功能示意图)

数据准备

使用 FactorQuad 工具包进行数据处理或分析之前,您需要完成如下数据准备工作,以下数据可以通过官网https://oss.wealthengine.cn下载或者从SeaDrive中获取,数据文件说明如下: 当您使用SeaDrive下载数据的时候,请手动点击相应的数据文件,使其同步到本地以便使用。 数据准备

风险因子数据包括:

  • 因子暴露(characteristic_exposure)
  • 因子暴露数据20210701至20221231 characteristic_exposure__HF25_SRAM_DAILY_TRIAL.gzip.parquet
  • 因子收益率(characteristic_return)
  • 因子收益率数据20210701至20221231 characteristic_return__HF25_SRAM_DAILY.gzip.parquet
  • 因子协方差(characteristic_covariance)
  • 因子协方差20210701至20211231 characteristic_covariance__HF25_SRAM_DAILY_TRIAL__from20210101to20211231.gzip.parquet
    因子协方差20220101至20221231 characteristic_covariance__HF25_SRAM_DAILY_TRIAL__from20220101to20221231.gzip.parquet
  • 个股特异性收益波动率(characteristic_idiosynscratic_variance)
  • 个股特异性收益波动率数据20210701至20221231 characteristic_idiosyncratic_variance__HF25_SRAM_DAILY_TRIAL.gzip.parquet
  • 个股异方差调整参数(characteristic_scale)
  • 个股异方差调整参数20210701至20221231 characteristic_scale__HF25_SRAM_DAILY_TRIAL.gzip.parquet

其他行情数据

诸如收盘价,无风险利率等,此类数据需要您自行准备。

工具包安装

我们为您提供了基于 Python 3.9 的 FactorQuad 工具包,您只需在 Windows 命令行窗口或者 Linux shell 中运行此命令,即可完成安装。

若您安装了旧版的工具包,请先卸载旧版本的工具包:

pip uninstall we_report==0.0.1.9

pip uninstall we_factor_quad==0.5.0

按照顺序安装新版本的工具包:

pip install we_report==0.1.9

pip install we_factor_quad==0.6.0

注意:目前安装包仅在阿里云镜像进行了同步,请您设置镜像为阿里云 https://mirrors.aliyun.com/pypi/simple

功能参数配置

要使用FactorQuad提供的个股风险事件分析功能,您需要进行相关配置。在完成以上工具包的安装后,浏览至FactorQuad安装路径,您会看到factor_quad_settings.py文件,它通常位于:

C:\Users\user\AppData\Roaming\Python\Python39\site-packages\we_factor_quad

您可以使用任何类型的文本编辑器打开并编辑factor_quad_settings.py文件,相关配置的修改与功能对应参照相关说明。

风险因子数据格式转换接口

factor_quad_settings.py 配置参数说明

参数 参数解释 参数配置
start_date 开始时间 字符串对象,如'20210701'
end_date 结束时间 字符串对象,如'20210801'
quad_from_local 风险因子数据来源 默认为‘1’,读取和解析数据的来源为通过SeaDrive 挂载到本地的网络磁盘路径 “0”,读取和解析的数据来源为用户指定的本地磁盘路径
seadrive_local_path 通过SeaDrive映射的网络磁盘路径 如果 quad_from_local 保持默认参数“1”时,此参数将会生效
msg_factor_case_name msg因子系统名 风险因子版本名,如“HF25_SRAM_DAILY_TRIAL”

接口:load_quad_to_csv

说明: 将因子数据的parquet文件转换为CSV文件

输入参数 参数解释
csv_output_path 指定输出保存为CSV格式文件的本地磁盘路径,默认为当前进程的工作目录(当前进程目录可通过os.getcwd( )查看)。
输出 输出说明
None

接口示例

# 导入we_factor_quad包中的文件格式转方法换

from we_factor_quad.equity_quad import factor_quad_equity

factor_quad_equity.load_quad_to_csv(csv_output_path=None)

风险因子体系相关数据计算接口

风险因子体系相关数据计算部分提供了清洗后的因子四元组和因子收益率数据,支持计算个股特异性风险和个股系统性风险。

factor_quad_settings.py 配置参数说明

参数 参数解释 参数配置
start_date 开始时间 字符串对象,如'20210701'
end_date 结束时间 字符串对象,如'20210801'
quad_from_local 风险因子数据来源 默认为‘1’,读取和解析数据的来源为通过SeaDrive 挂载到本地的网络磁盘路径 “0”,读取和解析的数据来源为用户指定的本地磁盘路径
seadrive_local_path 通过SeaDrive映射的网络磁盘路径 如果 quad_from_local 保持默认参数“1”时,此参数将会生效
msg_factor_case_name msg因子系统名 风险因子版本名,如“HF25_SRAM_DAILY_TRIAL”

接口:create_factor_quad

说明:创建一个FactorQuad对象,可用于计算因子体系相关数据

输入参数 参数解释
start_date 开始时间
end_date 结束时间
local_path 通过SeaDrive 映射的网络磁盘路径
factor_system 因子系统名,如“HF25_SRAM_DAILY_TRIAL”
from_src 风险因子数据来源,默认为‘1’,读取和解析数据的来源为通过SeaDrive 挂载到本地的网络磁盘路径
输出 输出说明
FactorQuad类对象 FactorQuad对象包含因子数据的全部内容,可用于计算个股风险。该对象包含如下属性:
  • psi_ts 特异性风险
  • sigma_ts因子协方差矩阵
  • scale_ts 缩放乘子
  • beta_ts 因子暴露

接口示例

# 导入factor_quad包

from we_factor_quad.equity_quad.factor_quad_equity import FactorQuadEQ

# 导入配置文件参数

from we_factor_quad.factor_quad_settings import settings

start_date = settings.start_date

end_date = settings.end_date

local_path = settings.seadrive_local_path

factor_system = settings.msg_factor_case_name

from_src = settings.quad_from_local

# 获取FactorQuad对象

myquad = FactorQuadEQ.create_factor_quad(factor_system, start_date, end_date, from_src, local_path)

# 获取资产特异性值

myquad.psi_ts

# 获取因子协方差矩阵

myquad.sigma_ts

# 获取资产因子暴露值

myquad.beta_ts

# 获取资产缩放乘子值

myquad.scale_ts

接口:get_ivar

说明: 获取个股特异性风险

输入参数 参数解释
None
输出 输出说明
ivar 个股特异性风险的pandas.Series格式对象,索引为日期,股票代码双重索引,列为个股特异性风险

接口示例

myquad.get_ivar( )

接口:get_systematic_var

说明: 获取个股系统性风险

输入参数 参数解释
beta_ts factor_quad获取的因子暴露数据
输出 输出说明
sys_var 个股系统性风险的pandas.DataFrame格式对象,行索引为日期,列索引为股票代码

接口示例

beta_ts=myquad.beta_ts

myquad.get_systematic_var(beta_ts)

接口:wiser_fetch_factor_return

说明: 获取因子收益率

输入参数 参数解释
start_date 开始时间
end_date 结束时间
seadrive_localpath 通过SeaDrive 映射的网络磁盘路径
factor_system 因子系统名,默认为“HF25_SRAM”
输出 输出说明
factor_return 因子收益的pandas.DataFrame格式对象,行索引为日期,列索引为因子名称

接口示例

# 获取因子收益率

from we_factor_quad.data_api import wiser_fetch_factor_return

# 导入配置文件参数

from we_factor_quad.factor_quad_settings import settings

# 所有因子在给定日期区间内的因子收益率

# factor_return 结果中的因子名称和具体含义,请参考白皮书

start_date = settings.start_date

end_date = settings.end_date

seadrive_localpath = settings.seadrive_local_path

factor_system = settings.msg_factor_case_name

factor_return = wiser_fetch_factor_return(seadrive_localpath, start_date, end_date, factor_system)

# 获取factor_return信息

factor_return.info( )

个股风险事件分析

个股风险事件分析是利用风险因子数据计算资产特异性风险和系统性风险,从而对个股风险事件进行预警。

factor_quad_settings.py 配置参数说明

参数 参数解释 参数配置
start_date 开始时间 开始时间,'20210701'
end_date 结束时间 结束时间,'20210801'
quad_from_local 风险因子数据来源 默认为'1’,读取和解析数据的来源为通过SeaDrive 挂载到本地的网络磁盘路径 '0',读取和解析的数据来源为用户指定的本地磁盘路径
seadrive_local_path 通过SeaDrive 映射的网络磁盘路径 如果 quad_from_local 保持默认参数“1”时,此参数将会生效
msg_factor_case_name msg因子系统名 风险因子版本名,如'HF25_SRAM_DAILY_TRIAL'
report_stock_codes 风险分析个股代码 字符串列表,如['000002.SZ']
report_stock_names 风险分析个股名称 字符串列表,用于报告中展示股票名,如['万科']。个股名称长度应与个股代码长度相同

接口:get_risk_report

说明:生成个股风险事件分析报告,调用该接口需要您在get_px_close api中提供收盘价日行情数据,详情请见行情数据准备章节get_px_close api。

输入参数 参数解释
report_output_path 指定报告输出的本地磁盘路径,默认为当前进程的工作目录,当前进程目录可通过os.getcwd( )查看。
输出 输出说明
None

接口示例

# 导入we_factor_quad包中的风控报告生成方法

from we_factor_quad.equity_quad.risk_control.stock_risk_control_daily import get_risk_report

from we_factor_quad.factor_quad_settings import StocksOutputReport, settings

# 运行风险事件分析报告程序

get_risk_report(report_output_path=None)

结果分析:

在指定的路径下查看stock_risk_report.xlsx得到完整个股风险事件分析报告。

风控评估报告

报告字段说明:

列名 含义
index 日期
0Close 收盘价
1msg_Vol 资产波动率
2msg_iVol 资产特异性波动率
3Forward_3M_Vol 资产未来三个月波动率
4msg_iVol_pct 资产特异性风险占总风险比重

可视化展示:

可视化展示

行情数据准备

为了生成个股风险事件分析报告,您需要提供行情数据,并通过修改data_api中的获取数据函数,以提供报告所需的行情数据。

get_px_close api准备

请您打开we_factor_quad目录中的data_api.py文件, 修改get_px_close函数使之输入开始日期和结束日期,返回个股收盘价数据。

输入参数start和end。start为返回收盘价的开始时间,end为返回数据的结束时间,格式为"年月日"8位字符串。

返回结果为A股日频收盘价数据,格式如下,返回结果行索引为datetime格式日期,列索引为股票代码。

  • | 000001.SZ | 600000.SH |
  • 2022-12-01 | 13.10 | 7.22 |
  • 2022-12-02 | 12.90 | 7.23 |
  • 2022-12-05 | 13.53 | 7.36 |
  • 2022-12-06 | 13.43 | 7.36 |

您需要修改get_px_close函数内容使之能后获取符合以上格式和内容的收盘价数据。

添加技术支持群

您在使用过程中如果遇到技术问题,微信扫码回复:MSG添加我们的服务小助手。我们将为您提供快捷有效的支持服务。如果您有任何建议或者需求,也可以联系小助手,反馈给我们哦。

技术支持
一键置顶