【量化笔记】OBV指标交易策略

本文介绍了OBV(On-Balance-Volume)指标的计算原理,包括正负累加、移动型OBV和修正型OBV。当OBV增大,预示价格上涨和市场活跃,可能发出买入信号;反之,OBV减小可能表明价格下跌,释放卖出信号。
摘要由CSDN通过智能技术生成

本篇博客是量化笔记系列的最后一篇了,之后会停更一段时间量化内容,后面会写什么还待定

OVB主要计算累计成交量,将股价上涨时的成交量进行正累加,对股价下跌时的成交量进行负累加,计算公式是:

O B V n = ± V n + O B V n − 1 OBV_n=\pm V_n + OBV_{n-1} OBVn=±Vn+OBVn1

当本期股价上涨时, V n V_n Vn的符号为正,

当本期股价下跌时, V n V_n Vn的符号为负

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
# 以青岛啤酒为例
TsingTao=pd.read_csv('TsingTao.csv',index_col='Date')
TsingTao.index=pd.to_datetime(TsingTao.index)
TsingTao.Volume=TsingTao.Volume.replace(0,np.nan)
TsingTao=TsingTao.dropna()
close=TsingTao.Close
Volume=TsingTao.Volume
# 计算OBV
difClose=close.diff()
difClose[0]=0
OBV=(((difClose>=0)*2-1)*Volume).cumsum()
OBV.name='OBV'
OBV.head()
OBV.describe()
count    3.230000e+02
mean    -1.104009e+07
std      3.572700e+07
min     -6.132070e+07
25%     -3.602440e+07
50%     -2.539030e+07
75%      1.912695e+07
max      9.652380e+07
Name: OBV, dtype: float64

移动型OBV,移动型OBV是由累积OBV进行简单移动平均得到,一般选择9日或者12日为时间跨度

s m O B V t = O B V t + O B

很抱歉,作为AI语言模型,我无法编写并执行代码。但是,我可以为您提供一些基本的步骤和建议,帮助您开始编写一个obv量化交易程序。 首先,您需要了解OBV指标OBV(On Balance Volume)是一种基于成交量和价格变化之间的关系计算出来的技术指标OBV指标可以用来确认价格趋势、预测价格趋势的转折点等。 接下来,您需要选择一个编程语言和交易平台。常用的编程语言包括Python、C++、Java等。常用的交易平台包括MetaTrader、TradeStation、NinjaTrader等。 然后,您需要编写代码来计算OBV指标。这可以通过读取历史交易数据来完成,例如开盘价、收盘价、最高价、最低价和成交量等数据。您可以使用Python中的pandas库或其他适合您所选编程语言的库来处理数据。 接下来,您需要编写代码来执行交易。这可以通过设置交易规则和条件来完成。例如,当OBV指标上升时,您可以设置程序执行买入操作,当OBV指标下降时,您可以设置程序执行卖出操作。您可以使用交易平台提供的API或其他适合您所选编程语言的库来执行交易。 最后,您需要测试您的程序并进行优化。您可以使用历史交易数据来测试您的程序,找出其中的漏洞和问题,并进行调整和优化。您还可以使用模拟交易平台来测试您的程序,在实际交易之前进行充分的测试和优化。 需要注意的是,编写量化交易程序需要充分的专业知识和经验,并且需要考虑到市场波动、交易成本、风险管理等因素。因此,建议您寻求专业人士的帮助和指导。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值