成交量加权平均价格 (VWAP) 在金融业中是指特定时间范围内交易价值与交易总数量的比率。它具有三个重要的特点和优势,为交易者提供了对价格趋势的洞察方法。机构和交易者使用 VWAP 来识别买卖区域,并帮助衡量市场情绪。
对于日内交易者而言,没有比vwap更重要的指标。
1.为什么要用VWAP?
VWAP有三个重要的特点:
2 如何用Python计算VWAP
开始之前,你要确保Python和pip已经成功安装在电脑上,如果没有,可以访问这篇文章:超详细Python安装指南 进行安装。
**(可选1) **如果你用Python的目的是数据分析,可以直接安装Anaconda:Python数据分析与挖掘好帮手—Anaconda,它内置了Python和pip.
**(可选2) **此外,推荐大家用VSCode编辑器,它有许多的优点:Python 编程的最好搭档—VSCode 详细指南。
请选择以下任一种方式输入命令安装依赖 :
pip install pandas
VWAP的计算公式如下:
TP =(最高价+最低价+收盘价)/3
V = 成交量
VWAP = (TP_1 * V_1 + TP_2 * V_2 + TP_n * V_n)/n
例如,如果一只股票以 10 美元交易 1000 股,然后以 11 美元交易 100 股,则最终交易价格为 11 美元;但是,VWAP 将更接近 10:
(1000 * 10 + 100 * 11)/(1000 + 100)) = 10.09
接下来,我们制造一些假数据来准备计算VWAP:
# Get imports
import datetime
import pandas as pd
# Create example dataframe
df = pd.DataFrame(
index=[datetime.datetime(2021,1,1,1),
datetime.datetime(2021,1,1,2),
datetime.datetime(2021,1,1,3),
datetime.datetime(2021,1,1,4)],
data={
'low':[9,10,11,12],
'close':[10,11,12,13],
'high':[11,12,13,14],
'volume':[1000,750,500,250]
}
)
df.index.rename('date', inplace=True)
数据如下:
VWAP的计算方法如下,这里采用了HLC(open、low、close)的平均值作为基准计算对象:
# Create VWAP function
def vwap(df):
v = df['volume'].values
tp = (df['low'] + df['close'] + df['high']).div(3).values
return df.assign(vwap=(tp * v).cumsum() / v.cumsum())
vwap(df)
计算完成后会在原来的数据上添加一列vwap列:
验证一下:
# Verify VWAP
## 以第二行为例
(10*1000 + 11*750) / (1000+750)
10.428571 # 正确
3.VWAP的缺点
没有全能的指标,VWAP也有其自身的缺点。
1.滞后性 。和其他的移动平均线一样,VWAP也是一个滞后的指标,而且随着日内交易量的累计,滞后性会越来越严重。
2.仅适用于短期图表 ,如秒级、分钟级。
4.VWAP 策略
我们已经知道VWAP的运行特点,那么如何利用这些特点进行交易呢?
利用其回调的特点 。当股价在一天内显着超过 VWAP 和移动平均线时,它们可能会回调。你可以选择在股价大幅度上涨时卖空股票,也可以选择在回调时等待入场。
Fade策略 。这个策略是一个逆势策略,它在强劲势头的运动后采取相反的立场。利用VWAP发的支撑和压力作为其入场和出场的信号。
午后走高策略 。这是一个油管老哥(Tim Bohen)观察出来的策略,他发现热门股票早盘走高,并且价格持续保持在vwap上方的股票,午后走高突破的几率非常大。
当然,所有策略都应该被回测后再确定是否有效。 以上策略只是一个根据VWAP做交易的思路,你还可以结合其他指标进行策略的开发和回测,有兴趣的同学可以试试看。
全部0条评论
快来发表一下你的评论吧 !