有關布林軌道之軌道進入窄口提醒

  •   815 
  • 最後發表   RainLU  2024 十月 21
RainLU 發文於   2023/01/16

請教小編

如下圖框框,要如何寫語法架構,想偵測股票走勢,當布林軌道進入窄口時候,用窄口的參數當條件等,提醒觸發策略。謝謝

排序方式: 標準 | 最新
XQ小幫手 發文於   2023/01/18

Hello RainLU,

 

小幫手不太確定您所謂的窄口指的是什麼。

不過如果是指上下通道很接近的狀況的話,由於布林通道是用均價加減標準差來計算,您可以用標準差的數值來衡量上下通道的距離。

RainLU 發文於   2023/09/22

請教小幫手:

我原先有執行自己寫的XS策略,一但遇到條件時會觸發多方或空方

可是遇到盤整盤或布林軌道縮口,就會連續頻繁觸發條件

目前想設定避開盤整或布林縮口,K棒之間或布林(上軌及下軌)收盤價約誤差10點上下,排除已符合策略訊號觸發

謝謝

XQ小幫手 發文於   2023/10/02

 Hello RainLU,

 

您可以用 not 來排除某些條件。

舉例來說:

condition1 = StandardDev(close, 20, 1) * 4 <= close * 0.06;  //布林通道上下軌差距小於等於收盤價 * 0.06

condition2 = ...您的觸發條件...;

 

if condition2 and not condition1 then ret = 1;

 

這樣就可以排除布林通道上下軌太近的狀況。

或是您也可以直接撰寫條件為布林通道上下軌需大於多少,像是:

condition1 = StandardDev(close, 20, 1) * 4 > close * 0.06;

RainLU 發文於   2023/10/05

請問小幫手大大

如果是如圖中,我的策略指標1分K/台指期商品,遇到布林橫盤軌道(上軌和下軌點位,是20點以內上下震盪),我想遇到這震盪走勢並排除掉橫盤會一直發訊號,若以期貨點位來寫語法該如何寫?謝謝。

 

XQ小幫手 發文於   2023/10/12

Hello RainLU,

 

網站上有教學區,裡面有XS語法的基礎和應用,小幫手建議您先閱覽該區文章。

 

如同小幫手上面所說,您可以撰寫條件限制上下軌間的距離。

由於布林通道是平均線 + 上下n個標準差 (一般是20期平均線 +- 2標準差),要避開上下軌差距在20點以內的震盪的話,就只要判斷4個標準差是否有大於20,像是:

condition1 = StandardDev(close, 20, 1) * 4 > 20;

穩穩賺 發文於   2024/10/17

請問小編 :

使用布林通道標準範例程式來修改 :

1.一般 股價(low)碰到 布林通道down(位置1.)買進 ---> 股價(high)碰到 布林通道up (位置8.)賣出

  if low cross under down then setposition(1);

  if high cross over up then setposition(0); 

2.修改 交易策略方式 (期貨) :

股價(low)碰到 布林通道down(位置1.) 保持到 (位置7.)  買進

股價(high)碰到 布林通道up (位置8.)  保持到(位置11.)  賣出

 

下列為設定程式 , 實際跑出來的結果 卻不是 我要的交易策略方式(期貨)

請教 是哪邊觀念 有問題 ??

 

condition1 = low cross under down;

condition2 = high cross over up;

// 買進

if condition1 then value1=1 else value1=0; // 碰到位置1. 保持value=1

if value1=0 and low cross over down then begin setposition(1);  //直到 value1=0 與 low高於down 2個條件成立時, (位置7.) 買進

end;

// 賣出

if condition2 then value2=1 else value2=0; //碰到位置8. 保持value2=1

if value2=0 and high cross under up then begin setposition(0); // 直到 value2=0 與 high低於up,2個條件成立時, (位置11.) 賣出

end;

 

虎科大許教授 發文於   2024/10/17

黃金或死亡交叉,只是一個時間點的現象,這根死亡交叉,下一根K棒就不會再次死亡交叉。若程式寫法如下,則value1只有在死亡交叉的K棒為1,下根K棒就變成0。 else value1=0應該刪除。接著每根K棒都讓value1加1,直到value1達到某個數值就進出場,並讓value1=0。

condition1 = low cross under down;

if condition1 then value1=1 else value1=0;

穩穩賺 發文於   2024/10/21

謝謝教授 解惑 ~ 來試試看

發表回覆
Close