109-量价相关性策略
由small_q创建,最终由qxiao 被浏览 390 用户
策略介绍
本策略选取60日成交量与收盘价相关性作为因子,观察了进行股票筛选之后等权持股10只,持仓5天的策略表现。量价因子是投资中常见的一种因子,结合了交易量(量)和价格行为(价)的信息来预测股票的未来表现,盈利逻辑主要基于以下几点:
- 交易量的信号作用:交易量是市场活跃度的一个重要指标。高交易量通常意味着较强的买卖兴趣和市场参与度,可以是因为市场对某些信息的反应。例如,股票价格在交易量大增的情况下上涨,通常被视为上涨趋势的确认,反之亦然。
- 价格动量:价格动量指股票价格在一定时间内的变动趋势。量价因子通过分析价格趋势与交易量的关系来捕捉动量。例如,如果股票价格持续上涨并伴随着增加的交易量,这可能表明上涨趋势将继续。
- 量价确认:量价关系可以用来确认趋势的有效性。当价格上涨(或下跌)时,若交易量也同步增加,这通常被视为趋势的有效确认。如果价格变动没有伴随相应的交易量支持,则趋势可能不稳定,容易逆转。
策略流程
1.选股:选择基础股票池,剔除掉ST股票
2.打分:对股票按照构造的60日量价相关性因子打分
3.仓位:根据打分和持股数量来分配仓位,设定等权持股10只
4.回测:设置调仓周期为5天,买卖点均为开盘价,回测周期为2010-01-01至2024-04-23
策略实现
A股-基础选股模块
- 使用A股-基础选股模块,按照基础信息筛选股票:交易所、上市板块、指数成分(剔除北证)、ST状态
输入特征模块
m2
打分,通过输入:特征表达式,用60日量价相关性作为打分标准:
-1 * (m_corr(close / m_lag(close, 1), log(volume / m_lag(volume, 1) + 1), 60))
的计算:close / m_lag(close,1)
,今天收盘价比上过去一天的收盘价log(volume / m_lag(volume, 1) + 1)
,对应今天成交量比上过去一天的成交量,再进行对数转换m_corr(x,y,z)
,对应z日下的x和y的相关系数
注意这里“输入模式”选择为表达式,如果使用下面的sql来构造特征,则将输入模式转换为sql
即可
\
数据抽取模块
- 在抽取中选择开始结束日期时间,以及历史数据向前取的天数
\
仓位分配模块
- 依据
m2
构造的打分标准来进行评分score字段排序,设置持仓数量,可以根据仓位来调整持仓,这里就选择等权持仓
\
BigTrader模块
- BigTrader回测和交易,每5个交易日调仓,开盘时同时买入和卖出
- 主要代码,K线处理函数:
\
策略代码
https://bigquant.com/codesharev3/4b041ac6-7c18-488b-ba7c-a2181bb30615
改进建议
- 量价相关性因子的构造:量价相关性体现股票量价波动,小市值股票的量价波动表现更为明显更容易被筛选出,选取120、30日等量价相关性是否会影响策略的表现
- 特征筛选:股票的市值和行业会显著影响到选股表现,对因子进行市值和行业中性化的处理是非常有必要的
\