Python全系列 教程
3567个小节阅读:5929.1k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
VWAP:Volume Weighted Average Price,成交量加权平均价格。是将多笔交易的价格按各自的成交量加权而算出的平均价。
计算公式:
其中:
例如:计算某一资产 5天的交易量加权平均价格。具体算法为:
同时对多只股票进行操作,当价格高于5天平均价的0.8%则买入500股,当价格小于五
天平均价的0.4%则卖出。
xxxxxxxxxx
# 导入函数库
import jqdata
from jqlib.technical_analysis import *
def initialize(context):
# 设置我们要操作的股票池
g.stocks = ['000001.XSHE','000002.XSHE','000004.XSHE','000005.XSHE']
# 设定沪深300作为基准
set_benchmark('000300.XSHG')
# 开启动态复权模式(真实价格)
set_option('use_real_price',True)
# 每隔一段时间自动调用函数
def handle_data(context,data):
# 循环每只股票
for security in g.stocks:
# 得到股票之前5天的成交量加权平均价格
vwap = data[security].vwap(5)
# 得到上一时间点股票收盘价
price = data[security].close
# 得到当前资余额
cash = context.portfolio.cash
# 如果上一时间点价格小于5天成交量加权平均价格x0.996,并且持有该股票,卖出
if price < vwap * 0.996 and context.portfolio.positions[security].closeable_amount > 0:
# 卖出500股
order(security,-500)
# 记录这次卖出
log.info('卖出股票%s'%(security))
# 如果上一时间点价格大于5天成交量加权平均价格x1.008,并且有现金余额
elif price > vwap * 1.008 and cash > 0:
# 买入500股
order(security,500)
# 记录这次买入
log.info('买入500股股票%s'%(security))