量化研究---小果因子分析系统使用教程,可转债macd因子为例子

本文介绍了因子分析在量化交易中的应用,特别是如何通过因子分析法,如MACD,来评估股票的多种影响因素,如市值、估值、增长和波动性等,以预测股票表现并进行策略选择。文章详细展示了如何在Python中使用相关工具进行因子计算和回测分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章链接 量化研究---小果因子分析系统使用教程,可转债macd因子为例子 (qq.com)

因子分析是一种多维变量统计分析方法,用于从多个变量中提取少数公共因子。

具体来说,因子分析的核心目的是通过研究变量之间的相关性,将多个相关联的变量归结为几个较少的公共因子。这些公共因子能够代表原始变量中的大部分信息,而每个原始变量则可以表示为这些公共因子和一个特殊因子(独特性)的线性组合。以下是因子分析的几个关键点:

  1. 提取共性因子:因子分析最早由心理学家C.E.斯皮尔曼提出,他在研究学生的各科成绩时发现,不同科目之间存在一定的相关性,即一科成绩好的学生往往在其他科目上也有不错的表现。这种相关性启发了他从中提取共性因子的想法。

  2. 可观测变量与隐变量:在因子分析中,可观测的变量通常受到背后的公共因子(也称为隐变量)的影响。样本在公共因子上的取值变化会影响其在可观测变量上的取值。

  3. 降维处理:因子分析常用于对多个观测变量进行降维处理,例如将多个问卷题目降维为几个公共因子,这有助于简化数据结构,更容易地进行后续分析。

  4. 多元统计分析方法:它是一种多元统计方法,通过研究指标相关矩阵内部的依赖关系,将信息重叠、具有复杂关系的变量归结为少数几个不相关的综合因子。

  5. 计算因子权重和综合得分:除了用于降维,因子分析还可以用来计算因子权重,以及基于这些权重计算加权的综合得分。

股票因子分析是量化交易中用于评估因子有效性的一种方法。

在股票投资领域,因子分析是一种重要的量化研究手段,它通过对各种可能影响股票价格和收益率的因素进行分析,来预测股票的未来表现。这些因素被称为“因子”,它们可以是宏观经济数据、公司基本面信息、市场情绪指标等。以下是一些常见的股票因子:

  1. 规模因子:通常指的是公司的总市值,它是衡量公司大小的一个指标。

  2. 估值因子:如市盈率(Price to Earnings Ratio, P/E),用以评估股票的估值水平。

  3. 成长因子:例如营业利润同比增长率,反映公司的成长性。

  4. 盈利因子:如净资产收益率(Return on Equity, ROE),衡量公司的盈利能力。

  5. 动量反转因子:以前1个月的涨跌幅来衡量,反映股票的价格动量。

  6. 交投因子:以前1个月日均换手率来表示,反映股票的交易活跃程度。

  7. 波动因子:以前1个月的波动率来衡量,反映股票的价格波动性。

  8. 股东因子:如户均持股比例变化,显示股东结构的变化情况。

1导入因子分析框架

from trader_tool.unification_data import unification_datafrom factor_analysis_frame.factor_analysis_frame import factor_analysis_framefrom trader_tool import jsl_datafrom finta import TAfrom tqdm import tqdmimport pandas as pddata=unification_data(trader_tool='ths')data=data.get_unification_data()

图片

2获取全部的可转债代码

#计算计算指标bond=jsl_data.get_all_cov_bond_data()bond

图片

3计算可转债全部的macd因子

#macd为例子 # factor_data:pandas.DataFrame格式,形如        #   instrument  date      hf_fz_ykws        # 0  000001.SZ  2017-01-03  1.564644        # 1  000001.SZ  2017-01-04  1.521567        # 2  000001.SZ  2017-01-05  1.519973        # 3  000001.SZ  2017-01-06  1.553225        # 4  000001.SZ  2017-01-09  1.367971'''factor_return数据格式instrument  date daily_ret  127005  2018-03-12  NaN  127005  2018-03-13  NaN  2  127005  2018-03-14  NaN  3  127005 2018-03-15  NaN  4  127005 2018-03-16  NaN  .84620  110095 2023-08-25  0.0'''stock_list=bond['转债代码'].tolist()factor_data=pd.DataFrame()factor_return=pd.DataFrame()for i in tqdm(range(len(stock_list))):    factor_data_df=pd.DataFrame()    factor_return_df=pd.DataFrame()    stock=stock_list[i]    instrument=stock    hist=data.get_hist_data_em(start_date='20160101',end_date='20500101',stock=stock)    macd=TA.MACD(hist)    hist['MACD']=macd['MACD']    factor_data_df['date']=pd.to_datetime(hist['date'])    factor_return_df['date']=pd.to_datetime(hist['date'])    factor_data_df['MACD']=hist['MACD']    factor_return_df['daily_ret']=hist['close'].pct_change()    factor_data_df['instrument']=instrument    factor_return_df['instrument']=instrument    factor_data=pd.concat([factor_data,factor_data_df],ignore_index=True)    factor_return=pd.concat([factor_return,factor_return_df],ignore_index=True)    

图片

因子数据

图片

收益数据

图片

分组参数

#group_num分组#factor_field因子名称#instruments参考市场#benchmark参考指数#factor_direction因子方向params = {'group_num':5, 'factor_field':'MACD', 'instruments':'全市场',"benchmark":'00300', 'factor_direction':1}

图片

执行因子回测框架

models=factor_analysis_frame(params=params,factor_data=factor_data,factor_return=factor_return)models.render()

图片

分析的结果

图片

图片

图片

图片

图片

完美看因子最大的值的标的

***********因子值最大的标的**************              date   factor  instrument137083  2024-04-18  17.9279      113615101673  2024-04-18  13.5632      123118283583  2024-04-18   8.9575      123018121191  2024-04-18   8.6597      12310689769   2024-04-18   8.6009      123127***********因子值最小的标的**************              date   factor  instrument1604    2024-04-18 -16.6805      1270971803    2024-04-18 -13.1377      127096296804  2024-04-18 -10.0244      123013300924  2024-04-18  -6.7810      1280411503    2024-04-18  -5.4322      123230(              date   factor  instrument 137083  2024-04-18  17.9279      113615 101673  2024-04-18  13.5632      123118 283583  2024-04-18   8.9575      123018 121191  2024-04-18   8.6597      123106 89769   2024-04-18   8.6009      123127,               date   factor  instrument 1604    2024-04-18 -16.6805      127097 1803    2024-04-18 -13.1377      127096 296804  2024-04-18 -10.0244      123013 300924  2024-04-18  -6.7810      128041 1503    2024-04-18  -5.4322      123230)

因子分析选股交易

图片

图片

图片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xg_quant

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值