首先,我們依然先跟投資朋友介紹公式及原理!
布林通道由三個數值構成,中值、上通道以及下通道。
1. 中值通常是以20根K棒的收盤價做簡單算術平均
2. 上通道為均值加上2個標準差
3. 下通道為均值減去2個標準差
不了解標準差的投資朋友,可以將標準差理解為這20根K棒的波動程度。
如果這20根K棒價格波動很大
布林通道的上通道跟下通道就會擴展開來,通道就會很寬,反之亦然!
在Multicharts上的呈現如下圖:
接著我們便來逐行解釋「布林通道的程式碼」!
由於布林通道在Multicharts上是有內建的函數,所以可以直接呼叫出來
想要自己一步一步寫出布林通道的投資朋友也可以跟我聯絡@979qbbfo,這樣其實是有助於進一步了解布林通道的組成邏輯的。
inputs: len1(20), std(2);
vars: uband(0), dband(0);
這段我們是做了宣告參數(inputs)以及宣告變數(vars)的動作,這裡有個小技巧,那就是我們可以先直接開始撰寫策略程式碼,之後再回來補宣告參數以及變數,這樣會在建構策略或指標時更有效率。
參數以及變數兩者最大的不同是,參數(inputs)不會隨著策略運行而變化,類似於常數,變數(vars)則會隨著策略的進行而不斷變化,Multicharts最佳化是去最佳化參數,這裡還不理解的投資朋友可以留個印象,之後最佳化的文章會再詳細說明!
uband = BollingerBand(C, len1, std);
dband = BollingerBand(C, len1, -std);
這裡的部分就是採用了Multicharts內建的BollingerBand()函數,第一個參數"C",意思是以每根K棒收盤價(C)去計算布林通道,第二個參數"len1",則是設定去計算多長時間周期的布林通道,最後一個參數"std"則是設定要用"幾倍"標準差。
舉例,布林上通道:uband = BollingerBand(C, 20, 2);
這個意思就是我們用收盤價(C)取20天(len1)得出布林通道中值,再把中值加上兩倍標準差,而計算出uBand即布林上通道。布林下通道也是如此同理推導。
if C>uBand then buy next bar highest(H, 5) stop;
if C<dBand then sellshort next bar lowest(L, 5) stop;
這裡要特別來介紹兩個「濾網filter」,那就是highest(H, 5)以及lowest(L, 5)。
在CuBand成立時,我們在下一根k棒丟出價格為highest(H, 5)的停損單,什麼是丟出「價格為highest(H, 5)的停損單」呢?
highest(H, 5)即是取五根K棒的最高價(High),丟出這個價格的停損單,有助於濾掉一些曇花一現的「CuBand」雜訊,可以確定價格不但突破布林上通道,而且價格還有站穩小波段新高。空單也是同樣的邏輯,投資朋友可以試著推敲看看!
下圖便是呈現在Multicharts上,策略進出場的樣子:
如以一來我們就可以檢視這樣簡單的一個策略,它的績效會是如何!?
或者它要在哪種K棒週期上運作績效才會更好!?
設定好這樣的一個策略雛型,接著便會進入到最佳化參數、其他濾網添加以及停利停損的設置等等,我們都將在之後的文章進一步說明!
尚未註冊TrdingView的投資朋友歡迎使用Kevin專屬註冊連結:
享一個月免費試用Premium帳號,到期後可享50%的續約優惠!
(即使不續約,仍可繼續使用TradingView免費版功能)
⭐目前凱龍承接三大項業務,歡迎洽詢:
- 金融量化系列|凱龍下單機租用 & TradngView & MultiCharts 程式碼諮詢撰寫
- Line官方系列|凱龍Line官方模組租用 & Line官方機器人全系列諮詢架設
- 網站SaaS平台|凱龍雲端應用 & 網站SaaS平台諮詢架設