【量化笔记】动量Momentum相关技术指标以其含义

Awesome Oscillator (AO)

参考:https://www.tradingview.com/support/solutions/43000501826-awesome-oscillator-ao/
https://currency.com/how-to-read-and-use-the-awesome-oscillator-trading-indicator

AO 是用来衡量市场动量的指标。AO 计算 34 周期和 5 周期简单移动平均线的差异。使用的简单移动平均线不是使用收盘价计算的,而是使用每个柱的中位数计算的。AO 通常用于确认趋势或预测可能的逆转。

该指标在图表底部的方框中绘制为直方图,直方图柱形为红色或绿色(红色或蓝色)。如果柱状图的值高于前一个柱状图,则该柱状图为绿色,如果其值低于前一个柱状图,则该柱状图为红色。

另一个元素是零线,指标围绕零线在正值或负值之间振荡和移动。如果指标值高于零线,则意味着较短的周期高于较长的时间范围,反之亦然,如果较快的周期低于较长的周期,则指标将低于零线。因此,当直方图移动到零线上方时,表明看涨力量推动了市场,当 AO 低于零线时,它将指向看跌势头。

计算

在这里插入图片描述

操作

Zero Line Cross(零线交叉)

当 AO 越过零线时,短期动量现在比长期动量上升得更快。这可以提供看涨的买入机会。

当 AO 低于零线时,短期动量现在比长期动量下降得更快。这可能会带来看跌的卖出机会。

Twin peaks trading(双峰交易)

  • 看涨双峰 - 当零线下方有两个连续的峰值时,第二个峰值高于第一个峰值,然后是绿色条。请记住,两个峰值之间的回调(波谷)应保持在零线以下。

  • 看跌双峰 – 当零线上方有两个峰且第二个峰低于第一个峰且后跟一个红色条时,就会出现这种设置。此外,峰值之间的回调应保持在零线上方。

Saucer strategy(飞碟策略)

Kaufman’s Adaptive Moving Average (KAMA)

参考:https://school.stockcharts.com/doku.php?id=technical_indicators:kaufman_s_adaptive_moving_average

由 Perry Kaufman 开发的 Kaufman 自适应移动平均线 (KAMA) 是一种移动平均线,旨在考虑市场噪音或波动。当价格波动相对较小且噪音较低时,KAMA 将密切关注价格。KAMA 将在价格波动扩大时进行调整,并从更远的距离跟随价格。此趋势跟踪指标可用于识别整体趋势、时间转折点和过滤价格变动(overall trend, time turning points and filter price movements)。

计算

最常见的:KAMA(10,2,30)。其中,10 是效率比 (ER) 的周期数;2 是最快 EMA 常数的周期数;30 是最慢 EMA 常数的周期数。

Step 1: Efficiency Ratio (ER)

效率比是针对每日波动性调整的价格变化。

ER = Change/Volatility

Change = ABS(Close - Close (10 periods ago))

Volatility = Sum10(ABS(Close - Prior Close))

Volatility is the sum of the absolute value of the last ten price changes (Close - Prior Close). 

如果价格连续上涨 10 个周期或连续下跌 10 个周期,ER 将为 1。如果价格在 10 个时期内保持不变,则 ER 将为零。

Step 2: Smoothing Constant (SC)

平滑常数使用 ER 和两个基于指数移动平均的平滑常数。

SC = [ER x (fastest SC - slowest SC) + slowest SC]**2

SC = [ER x (2/(2+1) - 2/(30+1)) + 2/(30+1)]**2

平滑常数在其公式中使用指数移动平均线的平滑常数。(2/30+1) 是 30 周期 EMA 的平滑常数。最快 SC 是较短 EMA(2 )的平滑常数。最慢的 SC 是最慢的 EMA(30 )的平滑常数。

Step 3: KAMA

有了效率比 (ER) 和平滑常数 (SC),我们现在可以计算考夫曼的自适应移动平均线 (KAMA)。由于我们需要一个初始值来开始计算,因此第一个 KAMA 只是一个简单的移动平均线。以下计算基于以下公式。

Current KAMA = Prior KAMA + SC x (Price - Prior KAMA)

操作

图表师可以使用长期 KAMA 来定义更大的趋势,并使用短期 KAMA 来定义交易信号。

用不同时间窗口的 KAMA,交叉点会形成买卖的信号。

Percentage Price Oscillator (PPO)

PPO 衡量两种不同长度的均线,差值的相对比例。

计算

Percentage Price Oscillator (PPO): {(12-day EMA - 26-day EMA)/26-day EMA} x 100

Signal Line: 9-day EMA of PPO

PPO Histogram: PPO - Signal Line

操作

当较短的移动平均线高于较长的移动平均线时,PPO 为正。随着较短的移动平均线与较长的移动平均线的距离,该指标进一步进入正值区域。这反映了强劲的上行势头。当较短的移动平均线低于较长的移动平均线时,PPO 为负。当较短的移动平均线与较长的移动平均线距离(进一步为负)时,负读数会增加。这反映了强劲的下行势头。

直方图表示 PPO 与其 9 天 EMA(信号线)之间的差异。当 PPO 高于其 9 天 EMA 时,直方图为正,当 PPO 低于其 9 天 EMA 时,直方图为负。PPO 直方图可用于预测 PPO 中的信号线交叉。

Percentage Volume Oscillator (PVO)

PVO和PPO相似,只是衡量的是Volume。

计算

Percentage Price Oscillator (PPO): {(12-day EMA - 26-day EMA)/26-day EMA} x 100

Signal Line: 9-day EMA of PPO

PPO Histogram: PPO - Signal Line

Rate-of-Change (ROC)

参考:https://school.stockcharts.com/doku.php?id=technical_indicators:rate_of_change_roc_and_momentum

计算

ROC = [(Close - Close n periods ago) / (Close n periods ago)] * 100

操作

-10% 被设置为超卖边界。低于该水平的走势表明价格处于短期极端。超买和超卖设置取决于基础证券的波动性。波动较大的股票可能会使用 -15% 来超卖,而波动较小的股票可能会使用 -5%。超卖读数可作为为转折点做好准备的警报。价格超卖,但尚未真正转向。记住,随着下跌的继续,证券可能变得超卖并保持超卖。

超买和超卖水平可以很好地识别极端情况,但由于波动性,实际转向的时机更加困难。可以使用指数移动平均来降低这种波动性

Relative Strength Index (RSI)

参考:https://www.investopedia.com/terms/r/rsi.asp

衡量近期价格变化的幅度,以评估股票或其他资产价格的超买或超卖状况

计算

在这里插入图片描述

操作

当 RSI 超过水平 30 参考水平时,它是一个看涨信号,而当它跌破水平 70 参考水平时,它是一个看跌信号。换句话说,可以解释为 70 或更高的 RSI 值表明证券正在变得超买或高估, 并且可能为趋势逆转或修正价格 回调做好准备 。RSI 读数为 30 或以下表明处于超卖或低估状态。

RSI 指标可以在股票处于上升趋势时长时间保持在超买区域。当股票处于下跌趋势时,该指标也可能长时间处于超卖区域。

Stochastic RSI

参考:https://www.investopedia.com/terms/s/stochrsi.asp

当价值跌破 0.20 时,StochRSI 认为某些东西超卖,这意味着 RSI 值在其预定义范围的低端交易,并且基础证券的短期方向可能接近低点并可能走高。相反,如果读数高于 0.80,则表明 RSI 可能达到极高位,可用于表明基础证券将回调。

除了识别超买/超卖情况外,StochRSI 还可用于通过在中心线为 0.50 的振荡器的背景下查看来识别短期趋势。当 StochRSI 高于 0.50 时,证券可能会被视为趋势走高,反之亦然,当它低于 0.50 时。

在这里插入图片描述

Stochastic RSI 和 RSI 之间的差异

它们看起来很相似,但 StochRSI 依赖于生成 RSI 值的不同公式。RSI 是价格的衍生物(derivative),StochRSI 是 RSI 的衍生物本身的导数,或价格的二阶衍生物。主要区别之一是指标移动的速度。StochRSI 从超买到超卖的移动速度非常快,而 RSI 是一个慢得多的移动指标。一个并不比另一个好,StochRSI 只是比 RSI 移动得更多(更快)。

使用随机 RSI 的限制

使用 StochRSI 的一个缺点是它往往非常不稳定,从高位快速移动到低位。在这方面,平滑 StochRSI 可能会有所帮助。一些交易者会采用StochRSI的移动平均线来降低波动性并使指标更有用。例如,StochRSI 的 10 天简单移动平均线可以产生一个更平滑、更稳定的指标。

Stochastic Oscillator

https://school.stockcharts.com/doku.php?id=technical_indicators:stochastic_oscillator_fast_slow_and_full

显示了一定时期内收盘价相对于高低区间的位置。随机震荡指标“不跟随价格,也不跟随交易量或类似的东西。它跟随价格的速度或动量。通常,动量在价格之前改变方向。” 因此,随机震荡指标的看涨和看跌背离可用于预示反转。还可以使用这个振荡器来识别牛市和熊市的设置,以预测未来的逆转。由于随机震荡指标是区间震荡指标(range-bound),因此它对于识别超买和超卖水平也很有用。

计算

%K = (Current Close - Lowest Low)/(Highest High - Lowest Low) * 100
%D = 3-day SMA of %K

Lowest Low = lowest low for the look-back period
Highest High = highest high for the look-back period
%K is multiplied by 100 to move the decimal point two places

随机震荡指标的默认设置是 14 个周期,可以是天、周、月或日内时间范围。14 个周期的 %K 将使用最近的收盘价、过去 14 个周期的最高点和过去 14 个周期的最低点。%D 是%K的 3 天简单移动平均线。这条线与 %K 一起绘制,用作信号线或触发线。

操作

传统设置使用 80 作为超买阈值,20 作为超卖阈值。可以调整这些级别以适应分析需求和安全特性。20 天随机震荡指标的读数高于 80 将表明基础证券交易在其 20 天高低区间的顶部附近。当证券在其高低区间的低端交易时,读数会低于 20。

要注意超买读数不一定看跌。在强劲的上升趋势期间,证券可能变得超买并保持超买。持续接近区间顶部的收盘价表明持续的买盘压力。同样,超卖读数不一定看涨。在强劲的下跌趋势中,证券也可能变得超卖并保持超卖。收盘价始终接近区间底部表明持续的抛售压力。因此,重要的是要确定更大的趋势并朝着这个趋势的方向进行交易在上升趋势中寻找偶尔的超卖读数,而忽略频繁的超买读数。同样,在强劲的下降趋势中寻找偶尔的超买读数,而忽略频繁的超卖读数。

还可以用来识别牛市/熊市。50 是一个值得关注的重要级别。随机振荡器在 0 到 100 之间移动,这使得 50 成为中心线。看跌背离(bearish divergence)可以通过价格图表上的支撑突破或随机震荡指标跌破 50(即中线)来确认。可以通过价格图表上的阻力突破或随机震荡指标突破 50 来确认看涨背离(bullish divergence)。

True strength index (TSI)

基于双平滑价格变化的独特指标。价格变化代表了最真实形式的动量。两个指数移动平均线的双重平滑减少了噪音并产生了一个可以很好地跟踪价格的振荡器。除了通常的振荡器信号,图表分析师通常可以直接在 TSI 上绘制趋势线、支撑线和阻力线。然后可以使用这些来生成基于突破和故障的信号。与所有指标一样,TSI 信号应与其他指标和分析技术一起确认

计算

Double Smoothed PC
------------------
PC = Current Price minus Prior Price
First Smoothing = 25-period EMA of PC
Second Smoothing = 13-period EMA of 25-period EMA of PC

Double Smoothed Absolute PC
---------------------------
Absolute Price Change |PC| = Absolute Value of Current Price minus Prior Price
First Smoothing = 25-period EMA of |PC|
Second Smoothing = 13-period EMA of 25-period EMA of |PC|

TSI = 100 x (Double Smoothed PC / Double Smoothed Absolute PC)

Williams %R

是Fast Stochastic Oscillator的相反数。从 0 到 -20 的读数被认为是超买,而从 -80 到 -100 的读数被认为是超卖。

计算

%R = (Highest High - Close)/(Highest High - Lowest Low) * -100

Lowest Low = lowest low for the look-back period
Highest High = highest high for the look-back period
%R is multiplied by -100 correct the inversion and move the decimal.

Ultimate Oscillator

旨在捕捉三个不同时间范围内的动量。多时间框架目标旨在避免其他振荡器的陷阱。许多动量震荡指标在强劲上涨开始时飙升,但随着上涨继续形成看跌背离。这是因为他们被困在一个时间范围内。Ultimate Oscillator 试图通过将更长的时间范围纳入基本公式来纠正此错误。Ultimate Oscillator 确定了基于看涨背离的买入信号和基于看跌背离的卖出信号。

计算

BP = Close - Minimum(Low or Prior Close).
 
TR = Maximum(High or Prior Close)  -  Minimum(Low or Prior Close)

Average7 = (7-period BP Sum) / (7-period TR Sum)
Average14 = (14-period BP Sum) / (14-period TR Sum)
Average28 = (28-period BP Sum) / (28-period TR Sum)

UO = 100 x [(4 x Average7)+(2 x Average14)+Average28]/(4+2+1)

操作

可以使用 50 以上的走势来触发终极震荡指标。该中心线充当指标的牛熊阈值。

Divergence(背离)

背离是指资产的价格与技术指标(例如振荡器)的方向相反,或与其他数据相反。背离警告当前价格趋势可能正在减弱,并且在某些情况下可能导致价格改变方向

正背离表明价格可能很快就会开始走高。它发生在价格走低但技术指标走高或显示看涨信号时。

负背离表明未来价格较低。它发生在价格走高但技术指标走低或显示看跌信号时。

不能完全依赖背离,因为它不能提供及时的交易信号。背离可以持续很长时间而不会发生价格逆转。

在这里插入图片描述

Bullish Divergence(看涨背离)

价格记录较低的低点而指标形成较高的低点的情况。该指标并未确认价格较低,这可能预示着逆转。背离在动量振荡器中最为常见。

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
动量指标是金融技术分析中常用的一种工具,用于衡量股票价格或市场趋势的变动速度。在Python量化回测中,这些指标可以帮助交易策略识别入场和离场信号。以下是一些常用的动量指标及其在Python中的实现: 1. **简单移动平均(SMA)**:计算一段时间内资产价格的平均值,如使用pandas库的`rolling()`函数。 ```python import pandas as pd df['SMA'] = df['price'].rolling(window=10).mean() ``` 2. **指数移动平均(EMA)**:对价格的加权平均,更侧重于近期价格变化,`empyrical`库中的`exponential_moving_average`可以实现。 ```python from statsmodels.tsa.stattools import exponential_moving_average ema_values = exponential_moving_average(df['price'], span=10) ``` 3. **相对强弱指数(RSI)**:衡量资产超买或超卖程度,`ta`库提供了RSI的计算方法。 ```python from ta.momentum import RSI rsi_values = RSI(df['price'], window=14) ``` 4. **移动平均收敛/发散(MACD)**:由快线(短期EMA)和慢线(长期EMA)之差以及信号线(9日EMA)组成的三线系统,`ta`库同样支持。 ```python from ta.trend import MACD macd, signal, hist = MACD(df['price'], fast_length=12, slow_length=26, signal_length=9) ``` 5. **布林带(Bollinger Bands)**:由移动平均线和标准差计算出来的上下波动区间,`ta`库也有相关函数。 ```python from ta.volatility import BollingerBands bb_upper, bb_middle, bb_lower = BollingerBands(df['price'], window=20, stds=2) ``` 在进行量化回测时,通常会结合这些指标创建策略规则,比如当价格突破上轨时买入,跌破下轨时卖出。完成回测后,还要分析结果并根据表现优化策略。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值