商品期货量化交易-TradingviewPine语言基础课程(二十):量化交易指标:量价指标

Author: ianzeng123, Created: 2023-03-24 16:35:50, Updated: 2023-04-03 16:20:59

大家好,今天我们来学习量化指标系统中的量价指标。量价指标是金融市场技术分析中分析成交量与成交价格关系的指标。量价关系进行分析时要考虑两个要素:成交量和价格。成交量包括放量和缩量两种状态,价格则包括上涨和下跌两种状态,有时还会有平价的状态。成交量的变化与价格涨跌之间有着非常密切的联系。量价分析,就是研究成交量与成交价的相关性,并以此来预测价格运动的未来趋势。

成交量是金融市场供求关系的表现形式,它的大小表明了买卖双方对某一品种即时价格的认同程度,记录了交易者在不同价位上买卖的数量,代表着品种的活跃程度和流通性,并由此透露出市场的人气买卖意愿。人气越旺盛,则交易者进出场越自由,同时也意味着人场资金越充沛,盈利的可能性要大于亏损的可能性。因此,成交量重要的价值,是从市场人气的角度透露了市场的参与意愿和参与深度,为交易者的交易提供了参考依据。

OBV

指标介绍

OBV(On Balance Volume),中文名称:累积能量线,俗名:能量潮。其主要理论基础是市场价格的变化必须有成交量的配合,价格的波动与成交量的扩大或萎缩有密切的关连。通常价格上升所需的成交量总是较大;下跌时,则成交量总是较小。价格升降而成交量不相应升降,则市场价格的变动难以为继。

OBV的基本观点为:先见量,后见价,量是价的先行指标。当投资者价的认同愈不一致时,则成交量愈大,正是这种成交量涌动的能量及人气,将价推向新的位置。

img

计算方法

当周期收盘价比前一周期收盘价高,其成交量记为正数 当周期收盘价较前一周期收盘价低,其成交量记为负数 累计每周期之正或负成交量,即得OBV值

应用规则

(1)OBV线下降,价格上升,表示买盘无力,是卖出信号; (2)OBV线上升,价格下降,表示逢低承接强,是买进信号; (3)投资者使用OBV时,注意力应集中在OBV的形态上,其具体数值意义不大。事实上,只是一个能量潮并不能产生有效的买卖信号,因为价格在上涨下跌的初期或中期时,会出现较大幅度的变化,价格趋势一旦成立,大多数交易者的想法会趋于一致,此时该买的都已经买了,该卖的也都卖了,这时候虽然价格是上涨的,但成交量会逐渐萎缩,也就是说成交量萎缩并不代表市场趋势行情即将结束。

Pine代码

obv = ta.obv

WVAD

指标介绍

WVAD(William’s Variable Accumulation Distribution),中文名称:威廉变异离散量;它是将成交量加权的量价指标,其作用在测量从开盘至收盘期间,买方与卖方各自爆发力的程度。

计算方法

V = 当周期成交量 A = 当周期收盘价 - 当周期开盘价 B = 当周期最高价 - 当周期最低价 C = A / B * V WVAD = 累计N周期的C值

应用规则

  1. WVAD是测量价格由开盘至收盘期间,多空两方的战斗力平衡;
  2. 当WVAD指标处于上升初期时,可考虑买进;
  3. 当WVAD指标处于下降初期时,可考虑卖出;
  4. 当WVAD长期为负值时,价格也处于下跌尾声,而某周期出现正值,可以考虑建仓;
  5. 当WVAD长期为正值时,价格也处于高位,而某周期出现负值,可以考虑平仓。

Pine代码

wvad = ta.wvad

资金流量指标MFI

指标介绍

MFI指标也可以叫资金流量指标,英文全名(Money Flow Index)。MFI指标实际是将RSI加以修改后,演变而来。RSI以成交价为计算基础;MFI指标则结合价和量,将其列入综合考虑的范围。可以说,MFI指标是成交量的RSI指标。

计算方法

1.TYP=(high+low+close)/3 2. upper = math.sum(volume * (ta.change(TYP) <= 0.0 ? 0.0 : TYP), length) 3. lower = math.sum(volume * (ta.change(TYP) >= 0.0 ? 0.0 : TYP), length) 3.mfi = 100-(100/(1+upper/lower)

应用规则

  1. 市价上升成交量增加,是上升市趋势。
  2. 市价上升成交量缩减,当心市场变天。
  3. 市价下跌,但成交量增加,表示多空争斗。
  4. 市价下跌,但成交量减少,反映市场为横盘局。
  5. 高过80为超买,低于20时为超卖。

Pine代码

mfi = ta.mfi(hlc3, 14)

plot(mfi, title = 'mfi', color = color.blue)

if mfi < 20
    strategy.entry('long',strategy.long)
if mfi > 80
    strategy.entry('short',strategy.short)

价/量趋势 PVT

指标介绍

英文名为Price/Volume Trend 。即从上市第一天起,对每一交易日先求收盘价与昨收的差,再求差值与昨收的比, 最后求比值与当日成交量的乘积。将每天算得的这个值逐日累加。PVT指标可以与其他技术指标一起使用,如移动平均线、相对强弱指数等,以提高其预测能力。

计算方法

PVT =(今日收盘价-昨日收盘价)/昨日收盘价×今日成交量

应用规则

  1. 价格上升,PVT指标下降,为卖出信号
  2. 价格下降,PVT指标上升,为买入信号
  3. PVT的用法基本同OBV,但PVT比OBV更快地反应趋势。

Pine代码

pvt = ta.pvt

plot(pvt, title = 'pvt', color = color.blue)

if pvt > pvt[1] and open < close[1]
    strategy.entry('long',strategy.long)
if pvt < pvt[1] and open > close[1]
    strategy.entry('short',strategy.short)

EMV

指标介绍

EMV(Ease Of Movement Value),中文名称:简易波动指标,运用成交量和人气的旺盛和枯竭,构成一个完整的价格系统循环,指示投资者在人气汇集且成交热络的时候买进品种,并且在成交量逐渐展现无力,而狂热的投资者尚未觉察能量即将用尽时卖出品种。

img

计算方法

以计算日EMV为例,计算方法如下: A = (今日最高价 + 今日最低价) / 2 B = (前日最高价 + 前日最低价) / 2 C = 今日最高价 - 今日最低价 EM = (A - B) * C / 今日成交额 EMV = 累计N天的EM值

应用规则

(1)EMV由下往上穿越0轴时,视为中期买进信号; (2)EMV由上往下穿越0轴时,视为中期卖出信号; (3)EMV属于中长线指标,须长期使用EMV,才能获得最佳利润; (4)当趋向指标DMI中的ADX低于±DI时,本指标失去效用。

Pine代码

len = input.int(5,minval=1,maxval=40)

A = (high+low) / 2
B = (high[1]+low[1]) / 2
C = high - low
EM = (A-B) * C / volume*1000
EMV = ta.sma(EM,len)

plot(EMV, title = 'EMV', color = color.blue)

if ta.crossover(EMV,0)
    strategy.entry('long',strategy.long)
if ta.crossunder(EMV,0)
    strategy.entry('short',strategy.short)

成交量和成交价是市场提供给我们最基本的资料,量价关系的研究是一切技术分析的基础。价格的涨跌来自于多空双方每时每刻的力量对比,某一时点的量和价就是他们在这一时点上共同市场行为的反映。我们可以从价格涨跌和成交量变化来考察多空双方的态度和意图,从而判明价格后期可能的走势。量价关系是一个重要的指标,可用于波段性操作的买入与卖出之中,属于技术面判断的一种,是判断市场长期趋势关键的指标。因为短期的量价可以被操作,长期的量价关系则反应市场中真实的趋势。因此,通过量价指标,可以将市场真实走向以量化的方式进行呈现,为我们提供判断市场信号的参考依据。


更多内容