布林上緣軌道斜率大於45度

  •   1.1K 
  • 最後發表   里歐  2022 四月 22
里歐 發文於   2022/04/16

如標題,請問想以布林上緣軌道斜率大於45度做為條件,該如何設定?
順便還想問 布林上緣 + ( 5日、10日、20日),"至少" 一條,共兩條(包含2)以上大於45度該如何設定...
是希望能盤中抓取。

爬文找到的五日均線斜率如下:

value1 = average(GetField("收盤價","D"),5);

 

value3 = LinearRegSlope(value1,5); //計算5MA 5期的線性迴歸線斜率



內建的布林上緣程式碼如下:

Input: Length(20), UpperBand(2);

 

SetInputName(1, "期數");

SetInputName(2, "通道上緣");

 

settotalbar(3);

 

Ret = High >= bollingerband(Close, Length, UpperBand);
==============================================================


XQ小幫手 發文於   2022/04/22

Hello 里歐,

 

bollingerband(Close, Length, UpperBand) 這就會計算出布林上緣軌道的值。

您只需要用 LinearRegAngle 來計算即可。

(LinearRegSlope 計算的是斜率,LinearRegAngle 計算的是弧度)

舉例來說,日頻率的狀況下:

Input: Length(20), UpperBand(2);

SetInputName(1, "期數");

SetInputName(2, "通道上緣");

 

value1 = bollingerband(Close, Length, UpperBand);

value2 = LinearRegAngle(value1,5);   //5期布林通道上緣的線性斜率

 

value3 = average(GetField("收盤價","D"),5);

value4 = LinearRegAngle(value3,5);   //5期5ma的線性斜率

 

value5 = average(GetField("收盤價","D"),10);

value6 = LinearRegAngle(value5,5);   //5期10ma的線性斜率

 

value7 = average(GetField("收盤價","D"),20);

value8 = LinearRegAngle(value7,5);   //5期20ma的線性斜率

 

if value2 > 45 and (value4 > 45 or value6 > 45 or value8 > 45) then ret = 1;

 

小幫手要提醒您,圖上看起來有超過45度,不代表實際上有45度。

因為XQ的線圖有針對比例調整過,讓使用者比較容易觀察變化。

建議您可以先print或plot出來觀察數值再決定條件。

  • 按讚來自於
  • mk1977tw
發表回覆
Close