%B指標

By | 2015-05-28

%B這個指標,是從佈林值演化過來的,我們要了解%B指標前,先來溫習一下佈林通道(BBand)

Input: price(numericseries), length(numericsimple), _band(numericsimple);

BollingerBand = Average(price, length) + _band * StandardDev(price, length, 1);

從上述的程式,我們了解,布林值的上下兩條線就是移動平均線各加減N個標準差。 而%B則是在(收盤價 – 布林帶下軌值) ÷ (布林帶上軌值 – 布林帶下軌值)
從這個公式來看,當收盤價愈貼近布林值下軌道線,且上下兩條線差距很大時,%B的值愈趨近於零,如果收盤價都穿過布林值上軌道線了,%B的值就會大於一。

所以如果%B從0.5以下,突破自己的五日平均線,是大盤翻多的訊號,相反的,如果在1以上,則短線有過熱的徵候。

以下就是%B的腳本

// XQ: BBandWidth指標
//%b 值 = (收盤價 - 布林帶下軌值) ÷ (布林帶上軌值 - 布林帶下軌值)
//
input: Length(20), UpperBand(2), LowerBand(2), EMALength(3);
variable: up(0), down(0), mid(0), bbandwidth(0), ema(0),pb(0);

SetInputName(1, "天數");
SetInputName(2, "上");
SetInputName(3, "下");
SetInputName(4, "EMA");

up = bollingerband(Close, Length, UpperBand);
down = bollingerband(Close, Length, -1 * LowerBand);
mid = (up + down) / 2;

bbandwidth = 100 * (up - down) / mid;
ema = XAverage(bbandwidth, EMALength);
pb=(close-down)/(up-down);
value1=average(pb,10);
{Plot1(bbandwidth , "BBand width(%)");
Plot2(ema, "Band% EMA");}
plot1(pb,"%b");
plot2(value1,"%b五日平均");

20150528

回應