PV 数据包含了股票的价格和成交量信息,这些都是预测股价最核心、最基本的数据。你可以把它们想象成股票的“体温计”和“心跳监测仪”,反映了市场的最基本动态。
股票价格与成交量数据
- 价格数据:
- 开盘价(Open): 一天中第一笔交易的价格。
- 收盘价(Close): 一天中最后一笔交易的价格。
- 最高价(High): 一天中的最高成交价。
- 最低价(Low): 一天中的最低成交价。
- 这些价格点共同构成了我们熟悉的K线图(candlestick chart),直观地展示了股票一天的走势。
- 成交量(Volume):
- 成交量表示当天买卖的股票总数量。
- 高成交量通常意味着市场关注度高、交易活跃。
- 你可以使用
adv20
(20 日平均成交量)这样的数据字段,或者用ts_mean(volume, N)
来计算任意天数的平均成交量。
- VWAP(成交量加权平均价):
- 概念: VWAP 是一种更精确地衡量股票日均价的方法。它考虑到每一笔成交量,而不是简单地计算价格平均值。
- 作用: 有时,收盘价可能只代表最后几笔交易的价格,如果这些交易量很小,就不能反映当天的真实价格水平 。而 VWAP 将交易量大的价格赋予更高的权重,因此能更好地代表一天的平均价格。
两种核心 Alpha 思想
大多数使用 PV 数据的 Alpha 策略都基于以下两种核心思想:
- 动量(Momentum):
- 核心理念: 强者恒强,弱者恒弱。
- 理论: 认为过去表现好的股票(比如涨了几个月)未来会继续表现良好,而表现差的股票会继续下跌。
- 时间周期: 动量效应通常在较长的时间周期(几个月或更久)内比较明显。
- 反转(Reversion):
- 核心理念: 物极必反,回归平均。
- 理论: 认为如果一只股票在短期内涨得太快,它可能会回调;如果跌得太深,它可能会反弹。
- 时间周期: 反转效应通常在较短的时间周期(几天或几周)内比较明显。
- 我们之前创建的
rank(-returns)
就是一个简单的反转 Alpha,因为它假设回报率会反转。
用 VWAP 尝试一个反转 Alpha
现在,让 我们把所学的知识结合起来,尝试一个更有趣的反转策略。
- 策略思想: 比较收盘价(
close
)*和*VWAP。- 如果收盘价远高于 VWAP,说明股票在收盘前有大量买入,价格被拉高了。根据反转理论,这只股票明天可能会下跌。
- 如果收盘价远低于 VWAP,说明股票在收盘前有大量卖出,价格被压低了。根据反转理论,这只股票明天可能会反弹。
- 实现方式:
- 我们可以使用
vwap/close
这个表达式。 - 当
vwap/close
的值大于 1 时,说明 VWAP 高于收盘价,模型会做多(看涨),期望价格反弹。 - 当
vwap/close
的值小于 1 时,说明 VWAP 低于收盘价,模型会做空(看跌),期望价格下跌。
- 我们可以使用
- 模拟结果与优化:
- 当你模拟这个策略时,可能会发现**夏普比率(Sharpe)很高,但换手率(Turnover)**也很高,超出了可提交的标准(通常要求低于 70%)。
- 这是因为这个策略每天都会可能产生大量的买卖信号。
- 如何解决? 你可以利用我们之前学过的**衰减(Decay)**设置,或者使用
trade_when
等操作符,来减少交易频率,从而降低换手率。这是一个在实际操作中常见的优化挑战。