BackTrader 中文文档(六)(2)https://developer.aliyun.com/article/1489269
MACD
移动平均收敛发散。由杰拉尔德·阿普尔在 70 年代定义。
它测量短期和长期移动平均线的距离,以试图识别趋势。
连续-发散收敛的第二个滞后移动平均值应在被 macd 越过时提供一个“信号”
Formula:
- macd = ema(data,me1_period)- ema(data,me2_period)
- signal = ema(macd,signal_period)
见:
Lines:
- macd
- signal
Params:
- period_me1(12)
- period_me2(26)
- period_signal(9)
- movav(指数移动平均)
PlotInfo:
- plot(True)
- plotmaster(无)
- legendloc(无)
- subplot(True)
- plotname()
- plotskip(False)
- plotabove(False)
- plotlinelabels(False)
- plotlinevalues(True)
- plotvaluetags(True)
- plotymargin(0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([0.0])
- plotforce(False)
PlotLines:
- signal:
- ls(–)
- macd:
MACDHisto
别名:
- MACDHistogram
MACD 的子类,添加了 macd 和信号线之间差异的“直方图”
Formula:
- histo = macd - signal
见:
Lines:
- macd
- signal
- histo
Params:
- period_me1(12)
- period_me2(26)
- period_signal(9)
- movav(指数移动平均)
PlotInfo:
- plot(True)
- plotmaster(无)
- legendloc(无)
- subplot(True)
- plotname()
- plotskip(False)
- plotabove(False)
- plotlinelabels(False)
- plotlinevalues(True)
- plotvaluetags(True)
- plotymargin(0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([0.0])
- plotforce(False)
PlotLines:
- signal:
- ls(–)
- macd:
- histo:
- _method(bar)
- alpha(0.5)
- width(1.0)
MeanDeviation
别名:
- MeanDev
MeanDeviation(别名 MeanDev)
计算给定周期的传递数据的平均偏差
注意:
- 如果提供了 2 个数据作为参数,则第 2 个被视为第一个的平均值
Formula:
- mean = MovingAverage(data,period)(或提供的平均值)
- absdeviation = abs(data - mean)
- meandev = MovingAverage(absdeviation,period)
见:
Lines:
- meandev
Params:
- 周期(20)
- movav(MovingAverageSimple)
PlotInfo:
- plot(True)
- plotmaster(无)
- 图例位置(无)
- 子图(True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
绘图线:
- meandev:
负方向指标
别名:
- MinusDI
由 J. Welles Wilder, Jr.在他的书*“技术交易系统的新概念”*中于 1978 年定义。
旨在衡量趋势强度
此指标显示-DI:
- 使用加正向指示器(PlusDI)获取+DI
- 使用定向指示器(DI)获取+DI,-DI
- 使用平均方向指数(ADX)获取 ADX
- 使用平均定向指数评级(ADXR)获取 ADX,ADXR
- 使用定向运动指数(DMI)获取 ADX,+DI,-DI
- 使用定向运动(DM)获取 ADX,ADXR,+DI,-DI
公式:
- 上涨 = 高 - 高(-1)
- 下跌 = 低(-1) - 低
- -dm = 如果下跌大于上涨且下跌大于 0 则下跌,否则为 0
- -di = 100 * 移动平均线(-dm,周期)/ atr(周期)
所使用的移动平均线是最初由 Wilder 定义的那个,平滑移动平均线
查看:
线条:
- minusDI
参数:
- 周期(14)
- movav(平滑移动平均线)
绘图信息:
- 绘图(True)
- plotmaster(无)
- 图例位置(无)
- 子图(True)
- 绘图名称(-DirectionalIndicator)
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
绘图线:
- plusDI:
- _name(+DI)
- minusDI:
动量
通过计算当前价格与给定周期前价格之间的差异来衡量价格的变化
公式:
- 动量 = 数据 - 数据周期
查看:
线条:
- 动量
参数:
- 周期(12)
绘图信息:
- 绘图(True)
- plotmaster(无)
- 图例位置(无)
- 子图(True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([0.0])
- plotforce (False)
绘图线:
- 动量:
动量振荡器
别名:
- 动量振荡器
通过一段时间内价格变化的比率来衡量
公式:
- mosc = 100 * (data / data_period)
查看:
线条:
- momosc
参数:
- 周期(12)
- 带宽(100.0)
绘图信息:
- 绘图(True)
- plotmaster(无)
- 图例位置(无)
- 子图(True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
绘图线:
- momosc:
移动平均基础
参数:
- 周期(30)
绘图信息:
- 绘图(True)
- plotmaster(无)
- 图例位置(无)
- 子图(False)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
移动平均简单
别名:
- SMA,简单移动平均
过去 n 个周期的非加权平均值
公式:
- movav = Sum(data, period) / period
参见:
Lines:
- sma
参数:
- period (30)
PlotInfo:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (False)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
PlotLines:
- sma:
移动平均简单信封
别名:
- SMAEnvelope, SimpleMovingAverageEnvelope
简单移动平均和以“perc”分开的信封带
公式:
- sma(来自 MovingAverageSimple)
- top = sma * (1 + perc)
- bot = sma * (1 - perc)
参见:
Lines:
- sma
- top
- bot
参数:
- period (30)
- perc (2.5)
PlotInfo:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (False)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
PlotLines:
- sma:
- top:
- _samecolor (True)
- bot:
- _samecolor (True)
移动平均简单振荡器
别名:
- MovingAverageSimpleOsc, SMAOscillator, SMAOsc, SimpleMovingAverageOscillator, SimpleMovingAverageOsc
移动平均简单振荡器围绕其数据的振荡
Lines:
- sma
参数:
- period (30)
PlotInfo:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
PlotLines:
- sma:
- _0:
- _name (osc)
非零差异
别名:
- NZD
跟踪两个数据输入之间的差异,如果当前差异为零,则记住最后一个非零值
公式:
- diff = data - data1
- nzd = diff if diff else diff(-1)
Lines:
- nzd
PlotInfo:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
PlotLines:
- nzd:
OLS_BetaN
使用pandas.ols计算数据 1 对数据 0 的回归
使用pandas
Lines:
- beta
参数:
- period (10)
PlotInfo:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
PlotLines:
- beta:
OLS_Slope_InterceptN
使用statsmodel.OLS(普通最小二乘法)对 data0 进行 data1 的线性回归计算
使用pandas和statsmodels
使用prepend_constant来影响sm.add_constant的参数prepend
Lines:
- slope
- intercept
Params:
- period (10)
- prepend_constant (True)
PlotInfo:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
PlotLines:
- slope:
- intercept:
OLS_TransformationN
计算 data0 和 data1 的zscore。虽然它不直接使用任何外部包,但它依赖于OLS_SlopeInterceptN,该包使用pandas和statsmodels
Lines:
- spread
- spread_mean
- spread_std
- zscore
Params:
- period (10)
PlotInfo:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
PlotLines:
- spread:
- spread_mean:
- spread_std:
- zscore:
OperationN
计算给定周期的“func”
用于具有周期的类的基类,可以使用可调用对象表达逻辑
注意:
Base classes must provide a “func” attribute which is a callable
Formula:
- line = func(data, period)
Params:
- period (1)
PlotInfo:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
Oscillator
给定数据在另一个数据周围的振荡
Datas:
This indicator can accept 1 or 2 datas for the calculation.
- 如果提供了 1 组数据,必须是一个复杂的“Lines”对象(指标),该对象还具有“datas”。示例:移动平均线
计算的振荡将是移动平均线(示例中)围绕用于平均计算的数据的振荡 - 如果提供了 2 组数据,则计算的振荡将是第 2 组数据在第 1 组数据周围的振荡
Formula:
- 1 组数据 -> osc = data.data - data
- 2 组数据 -> osc = data0 - data1
Lines:
- osc
PlotInfo:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
PlotLines:
- _0:
- _name (osc)
- osc:
OscillatorMixIn
MixIn 类,用于与另一个指标创建一个子类。该指标的主要线将从另一个基类的主要线中减去,从而创建振荡器
使用方法是:
- 类 XXXOscillator(XXX, OscillatorMixIn)
Formula:
- XXX 计算 lines[0]
- osc = self.data - XXX.lines[0]
PlotInfo:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
绘图线:
- _0:
- _name(振荡器)
抛物线 SAR
别名:
- PSAR
由 J. Welles Wilder, Jr. 在他的书 “新技术交易系统中的新概念” 中于 1978 年定义,用于 RSI
SAR 代表 停止和转向,该指标旨在作为进入(和转向)的信号
如何选择书中第 1 个信号并未指定,增加/减少条数
查看:
线条:
- PSAR
参数:
- 期间(2)
- af(0.02)
- afmax (0.2)
图形信息:
- plot (True)
- plotmaster (None)
- 图例位置(无)
- subplot (False)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
绘图线:
- PSAR:
- 标记(.)
- 标记大小(4.0)
- 颜色(黑色)
- 填充样式(full)
- ls()
百分比变化
别名:
- 百分比变化
衡量当前值相对于周期条之前的值的百分比变化
线条:
- 百分比变化
参数:
- 期间(30)
图形信息:
- plot (True)
- plotmaster (None)
- 图例位置(无)
- subplot (True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
绘图线:
- 百分比变化:
- _name(%变化)
百分比排名
别名:
- 百分比排名
表示当前值相对于周期条之前的值的百分位等级
线条:
- 百分比排名
参数:
- 期间(50)
- func(
图形信息:
- plot (True)
- plotmaster (None)
- 图例位置(无)
- subplot (True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
绘图线:
- 百分比排名:
百分价格振荡器
别名:
- PPO,百分价格振荡器
显示短期和长期指数移动平均之间的差异,以百分比表示。MACD 也是如此,但以绝对点表示。
以百分比表示差异允许在基础值显着不同时比较不同时间点的指标。
公式:
- po = 100 *(ema(short)- ema(long))/ ema(long)
查看:
线条:
- ppo
- 信号
- 直方图
参数:
- 期间 1(12)
- 期间 2(26)
- _movav(指数移动平均)
- 信号周期(9)
图形信息:
- plot (True)
- plotmaster (None)
- 图例位置(无)
- subplot (True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([0.0])
- plotforce(False)
PlotLines:
- histo:
- _method(bar)
- alpha(0.5)
- width(1.0)
- ppo:
- signal:
PercentagePriceOscillatorShort
别名:
- PPOShort, PercPriceOscShort
显示以百分比表示的短期和长期指数移动平均值之间的差异。MACD 也是如此,但是以绝对点表示。
通过百分比表达差异允许在基础值明显不同时比较指标在不同时间点的情况。
大多数在线文献显示百分比计算将长期指数移动平均作为分母。一些像 MetaStock 这样的来源使用短期指数移动平均。
Formula:
- po = 100 *(ema(short)- ema(long))/ ema(short)
查看:
Lines:
- ppo
- signal
- histo
Params:
- period1(12)
- period2(26)
- _movav(指数移动平均)
- period_signal(9)
PlotInfo:
- 绘图(True)
- plotmaster(None)
- legendloc(None)
- subplot(True)
- plotname()
- plotskip(False)
- plotabove(False)
- plotlinelabels(False)
- plotlinevalues(True)
- plotvaluetags(True)
- plotymargin(0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([0.0])
- plotforce(False)
PlotLines:
- histo:
- _method(bar)
- alpha(0.5)
- width(1.0)
- ppo:
- signal:
PeriodN
指示器的基类,采用周期(init 必须通过 super 或显式调用)
此类没有定义的线
Params:
- period(1)
PlotInfo:
- 绘图(True)
- plotmaster(None)
- legendloc(None)
- subplot(True)
- plotname()
- plotskip(False)
- plotabove(False)
- plotlinelabels(False)
- plotlinevalues(True)
- plotvaluetags(True)
- plotymargin(0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([])
- plotforce(False)
PivotPoint
通过考虑较大时间框架的过去时期的价格条组件的平均值来定义显着性水平。例如,当操作天数时,值是从已经“过去”的月固定价格中获得的。
使用此指标的示例:
data = btfeeds.ADataFeed(dataname=x, timeframe=bt.TimeFrame.Days) cerebro.adddata(data) cerebro.resampledata(data, timeframe=bt.TimeFrame.Months)
在策略的 __init__ 方法中:
pivotindicator = btind.PivotPoiont(self.data1) # 重新采样数据
指示器将尝试自动绘制非重新采样数据。要禁用此行为,请在构造过程中使用以下内容:
- _autoplot=False
注意:
此示例显示 天 和 月,但任何时间框架的组合都可以使用。请参考文献以获取推荐的组合。
Formula:
- pivot =(h + l + c)/ 3 # 变体重复关闭或添加开放
- support1 = 2.0 * pivot - high
- support2 = pivot -(high - low)
- resistance1 = 2.0 * pivot - low
- resistance2 = pivot +(high - low)
查看:
stockcharts.com/school/doku.php?id=chart_school:technical_indicators:pivot_pointsen.wikipedia.org/wiki/Pivot_point_(technical_analysis)
Lines:
- p
- s1
- s2
- r1
- r2
参数:
- open (False)
- close (False)
- _autoplot(True)
PlotInfo:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (False)
- plotname()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines([])
- plotyticks([])
- plothlines ([])
- plotforce (False)
PlotLines:
- p:
- s1:
- s2:
- r1:
- r2:
PlusDirectionalIndicator
别名:
- PlusDI
J.韦尔斯·怀尔德(J. Welles Wilder,Jr.)在 1978 年的书 “技术交易系统中的新概念” 中定义。
旨在衡量趋势强度
此指标显示 +DI:
- 使用 MinusDirectionalIndicator(MinusDI)获取 -DI
- 使用方向指标(DI)获取 +DI、-DI
- 使用 AverageDirectionalIndex(ADX)获取 ADX
- 使用 AverageDirectionalIndexRating(ADXR)获取 ADX、ADXR
- 使用 DirectionalMovementIndex(DMI)获取 ADX、+DI、-DI
- 使用 DirectionalMovement (DM) 来获取 ADX、ADXR、+DI、-DI
公式:
- upmove = high - high(-1)
- downmove = low(-1) - low
- +dm = 如果 upmove > downmove 且 upmove > 0 则 upmove else 0
- +di = 100 * MovingAverage(+dm,period)/ atr(period)
采用最初由怀尔德定义的移动平均线,即 SmoothedMovingAverage
参见:
Lines:
- plusDI
参数:
- 期间(14)
- movav(SmoothedMovingAverage)
PlotInfo:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (True)
- plotname(+DirectionalIndicator)
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
PlotLines:
- plusDI:
- minusDI:
- _name(-DI)
PrettyGoodOscillator
别名:
- PGO,PrettyGoodOsc
“相当不错的振荡器”(PGO)由马克·约翰逊(Mark Johnson)设计,以期平均真实范围(见平均真实范围)在类似时期内的简单移动平均值为基准,表示为当前收盘价与其简单移动平均值之间的距离。
因此,例如 PGO 值为 +2.5 意味着当前收盘价比 SMA 高出 2.5 个平均日范围。
约翰逊的方法是将其用作较长期交易的突破系统。如果 PGO 上升到 3.0 以上,则做多;或者低于 -3.0,则做空,并且在两种情况下在返回零时(即 SMA 收盘)退出。
公式:
- pgo =(data.close - sma(data,period))/ atr(data,period)
另请参阅:
Lines:
- pgo
参数:
- period(14)
- _movav(MovingAverageSimple)
PlotInfo:
- plot (True)
- plotmaster(None)
- legendloc (None)
- subplot (True)
- plotname()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks([])
- plothlines ([])
- plotforce (False)
PlotLines:
- pgo:
PriceOscillator
别名:
- PriceOsc,AbsolutePriceOscillator,APO,AbsPriceOsc
显示以点表示的短期和长期指数移动平均线之间的差异。
Formula:
- po = ema(short)- ema(long)
查看:
Lines:
- po
Params:
- period1(12)
- period2(26)
- _movav(ExponentialMovingAverage)
PlotInfo:
- plot(True)
- plotmaster(None)
- legendloc(None)
- subplot(True)
- plotname()
- plotskip(False)
- plotabove(False)
- plotlinelabels(False)
- plotlinevalues(True)
- plotvaluetags(True)
- plotymargin(0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([0.0])
- plotforce(False)
PlotLines:
- po:
RSI_EMA
使用维基百科描述的指数移动平均线
查看:
Lines:
- rsi
Params:
- 期间(14)
- movav(ExponentialMovingAverage)
- upperband(70.0)
- lowerband(30.0)
- safediv(False)
- safehigh(100.0)
- safelow(50.0)
- lookback(1)
PlotInfo:
- plot(True)
- plotmaster(None)
- legendloc(None)
- subplot(True)
- plotname()
- plotskip(False)
- plotabove(False)
- plotlinelabels(False)
- plotlinevalues(True)
- plotvaluetags(True)
- plotymargin(0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([])
- plotforce(False)
PlotLines:
- rsi:
RSI_SMA
别名:
- RSI_Cutler
使用维基百科和其他来源描述的简单移动平均线
查看:
Lines:
- rsi
Params:
- 期间(14)
- movav(MovingAverageSimple)
- upperband(70.0)
- lowerband(30.0)
- safediv(False)
- safehigh(100.0)
- safelow(50.0)
- lookback(1)
PlotInfo:
- plot(True)
- plotmaster(None)
- legendloc(None)
- subplot(True)
- plotname()
- plotskip(False)
- plotabove(False)
- plotlinelabels(False)
- plotlinevalues(True)
- plotvaluetags(True)
- plotymargin(0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([])
- plotforce(False)
PlotLines:
- rsi:
RSI_Safe
RSI 的子类,将参数safediv更改为默认值True
查看:
Lines:
- rsi
Params:
- 期间(14)
- movav(SmoothedMovingAverage)
- upperband(70.0)
- lowerband(30.0)
- safediv(True)
- safehigh(100.0)
- safelow(50.0)
- lookback(1)
PlotInfo:
- plot(True)
- plotmaster(None)
- legendloc(None)
- subplot(True)
- plotname()
- plotskip(False)
- plotabove(False)
- plotlinelabels(False)
- plotlinevalues(True)
- plotvaluetags(True)
- plotymargin(0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([])
- plotforce(False)
PlotLines:
- rsi:
RateOfChange
别名:
- ROC
测量一段时间内价格变化的比率
Formula:
- roc =(data-data_period)/ data_period
查看:
Lines:
- roc
Params:
- 期间(12)
PlotInfo:
- plot(True)
- plotmaster(None)
- legendloc(None)
- subplot(True)
- plotname()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
绘图线:
- roc:
RateOfChange100
别名:
- ROC100
测量一段时间内价格变化的比率,基准为 100
这是股票图表中 ROC 的定义示例
公式:
- roc = 100 * (data - data_period) / data_period
参见:
stockcharts.com/school/doku.php?id=chart_school:technical_indicators:rate_of_change_roc_and_momentum
线:
- roc100
参数:
- period (12)
绘图信息:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
绘图线:
- roc100:
ReduceN
计算period数据点的function应用的减少值
使用内置的reduce进行计算,以及子类定义的func
公式:
- reduced = reduce(function(data, period)), initializer=initializer)
注意:
- 为了模仿 python 的
reduce,此指标将function作为第 1 个非命名参数,而不像其他指标只接受命名参数
线:
- 减少
参数:
- period (1)
绘图信息:
- plot (True)
- plotmaster (None)
- legendloc (None)
- subplot (True)
- plotname ()
- plotskip (False)
- plotabove (False)
- plotlinelabels (False)
- plotlinevalues (True)
- plotvaluetags (True)
- plotymargin (0.0)
- plotyhlines ([])
- plotyticks ([])
- plothlines ([])
- plotforce (False)
绘图线:
- 减少:
相对动量指数
别名:
- RMI
描述:相对动量指数由罗杰·奥尔特曼开发,并在 1993 年 2 月《股票与大宗商品技术分析》杂志上发表的文章中介绍。
你典型的 RSI 从收盘到收盘计算上涨和下跌天数,而相对动量指数从收盘相对于 x 天前的收盘计算上涨和下跌天数。结果是一个稍微平滑的 RSI。
用法:与其他 RSI 一样使用。有超买和超卖区域,也可用于分歧和趋势分析。
参见:
www.marketvolume.com/technicalanalysis/relativemomentumindex.aspwww.tradingview.com/script/UCm7fIvk-FREE-INDICATOR-Relative-Momentum-Index-RMI/www.prorealcode.com/prorealtime-indicators/relative-momentum-index-rmi/
线:
- rsi
参数:
- period (20)
- movav (SmoothedMovingAverage)
- upperband (70.0)
- lowerband (30.0)
- safediv (False)
- safehigh (100.0)
- safelow (50.0)
- lookback (5)
绘图信息:
- plot (True)
- plotmaster (None)
- legendloc(None)
- subplot(True)
- plotname()
- plotskip(False)
- plotabove(False)
- plotlinelabels(False)
- plotlinevalues(True)
- plotvaluetags(True)
- plotymargin(0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([])
- plotforce(False)
PlotLines:
- rsi:
- _name(rmi)
相对强弱指数
别名:
- RSI,RSI_SMMA,RSI_Wilder
由 J.威尔斯·怀尔德(J. Welles Wilder, Jr.)在 1978 年的书籍*“技术交易系统中的新概念”*中定义。
它通过计算经过平均值平滑后的更高收盘价和更低收盘价的比率来衡量动量,将结果归一化在 0 到 100 之间
公式:
- up = upday(data)
- down = downday(data)
- maup = movingaverage(up,period)
- madown = movingaverage(down,period)
- rs = maup / madown
- rsi = 100 - 100 /(1 + rs)
使用的移动平均线是最初由 Wilder 定义的 SmoothedMovingAverage
参见:
注意:
safediv(默认值:False)如果此参数为 True,则将检查 rs = maup / madown 的除法,以防发生0 / 0或x / 0除法的特殊情况safehigh(默认值:100.0)将用作x / 0情况下的 RSI 值safelow(默认值:50.0)将用作0 / 0情况下的 RSI 值
线:
- rsi
参数:
- 周期(14)
- movav(SmoothedMovingAverage)
- 上限值(70.0)
- lowerband(30.0)
- safediv(False)
- safehigh(100.0)
- safelow(50.0)
- lookback(1)
PlotInfo:
- plot(True)
- plotmaster(None)
- legendloc(None)
- subplot(True)
- plotname()
- plotskip(False)
- plotabove(False)
- plotlinelabels(False)
- plotlinevalues(True)
- plotvaluetags(True)
- plotymargin(0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([])
- plotforce(False)
PlotLines:
- rsi:
信号
线:
- 信号
PlotInfo:
- plot(True)
- plotmaster(None)
- legendloc(None)
- subplot(True)
- plotname()
- plotskip(False)
- plotabove(False)
- plotlinelabels(False)
- plotlinevalues(True)
- plotvaluetags(True)
- plotymargin(0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([])
- plotforce(False)
PlotLines:
- 信号:
SmoothedMovingAverage
别名:
- SMMA,WilderMA,MovingAverageSmoothed,MovingAverageWilder,ModifiedMovingAverage
Wilder 在他的 1978 年著作《技术交易中的新概念》中使用的平滑移动平均线
最初在他的书中定义为:
- new_value =(old_value *(period - 1)+ new_data)/ period
可以表示为具有以下因子的平滑移动平均:
- self.smfactor -> 1.0 / period
- self.smfactor1 -> 1.0 - self.smfactor
公式:
- movav = prev *(1.0 - smoothfactor)+ newdata * smoothfactor
另请参阅:
线:
- smma
参数:
- 周期(30)
PlotInfo:
- plot(True)
- plotmaster(None)
- legendloc(None)
- subplot(False)
- plotname()
- plotskip(False)
- plotabove(False)
- plotlinelabels(False)
- plotlinevalues(True)
- plotvaluetags(True)
- plotymargin(0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([])
- plotforce(False)
PlotLines:
- smma:
SmoothedMovingAverageEnvelope
Alias:
- SMMAEnvelope, WilderMAEnvelope, MovingAverageSmoothedEnvelope, MovingAverageWilderEnvelope, ModifiedMovingAverageEnvelope
SmoothedMovingAverage 和包络带从中分离了“perc”
Formula:
- smma(来自 SmoothedMovingAverage)
- top = smma * (1 + perc)
- bot = smma * (1 - perc)
另请参阅:
Lines:
- smma
- top
- bot
Params:
- period(30)
- perc(2.5)
PlotInfo:
- plot(True)
- plotmaster(None)
- legendloc(None)
- subplot(False)
- plotname()
- plotskip(False)
- plotabove(False)
- plotlinelabels(False)
- plotlinevalues(True)
- plotvaluetags(True)
- plotymargin(0.0)
- plotyhlines([])
- plotyticks([])
- plothlines([])
- plotforce(False)
BackTrader 中文文档(六)(4)https://developer.aliyun.com/article/1489274