【Multicharts】【KD指標策略】程式碼逐條解說

2023/03/31閱讀時間約 5 分鐘
  • 文內如有投資理財相關經驗、知識、資訊等內容,皆為創作者個人分享行為。
  • 有價證券、指數與衍生性商品之數據資料,僅供輔助說明之用,不代表創作者投資決策之推介及建議。
  • 閱讀同時,請審慎思考自身條件及自我決策,並應有為決策負責之事前認知。
  • 方格子希望您能從這些分享內容汲取投資養份,養成獨立思考的能力、判斷、行動,成就最適合您的投資理財模式。
首先我們依然先介紹KD指標的公式跟原理
RSV=(收盤價-最近n天的最低價) ÷ (最近n天的最高價-最近n天最低價)×100
K值=上一根K值 × (2/3)+RSV × (1/3)
D值=上一根D值 × (2/3)+K值 × (1/3)
(RSV中的n值,通常使用9天或14天,我們這次舉例使用9天)
KD指標跟技術指標之王MACD最主要的差別是
KD指標是用當下的收盤價去計算
而MACD指標是用12天以及26天指數平均去計算
這樣的公式特性會造成KD指標對當下行情的反應更快

接著我們逐行介紹KD指標程式碼!
inputs: Len(9), overBuy(80), overSold(20);
vars: fastK(0), fastD(0), slowK(0), slowD(0), valueJ(0);
宣告「參數(inputs)」以及「變數(vars)」
在運作程式碼的時候不會改變的,我們稱作「參數(inputs)」
會隨著程式碼運作而改變的,我們稱作「變數(vars)」

Value1 = Stochastic(H, L, C, Len, 3, 3, 1, fastK, fastD, slowK, slowD);
跟MACD比較不同的是,我們KD指標是更直接的使用Multicharts的內建函數Stochastic()
其中的fastK以及fastD是國外常用的KD值
我們台灣通常是用slowK跟slowD當作KD值

if slowK cross over slowD and 
slowD < overSold and 
slowK < overSold then
buy next bar market;
我們使用「if...then...」條件式建構進出場指令
我們先用中文把我們的多單邏輯寫出來
「當K值跟D值都小於20 且 當K值黃金交叉D值便在下一根K棒用市價買一口多單」
一開始我們先取用上一段multicharts內建KD值函數Stochastic()中的slowK跟slowD
接著我們來解釋黃金交叉的語法,即cross over
將上述兩段組合,便可以表達K值黃金交叉D值,即slowK cross over slowD
接著我們用已宣告好的參數「overSold(20)」來做比較
即slowK
之後便是用下單指令「buy」在下一根k棒用「market」市價做一口多單

if slowK cross under slowD
and slowD > overSold and slowK > overSold then
sellshort next bar market;
我們依然先將空單邏輯寫出來
「當K值跟D值都大於80 且 當K值死亡交叉D值便在下一根K棒用市價賣一口空單」
接著我們用cross under表達死亡交叉
即slowK cross under slowD
並且用已宣告好的參數「overBUY(80)」來表達K值跟D值都大於80,即slowK>overBuy以及slowD>overBuy
最後便是用下單指令「sellshort」在下一根k棒用「market」市價做一口空單

這樣我們就完成了KD指標策略的最基本形式
跟上一篇MACD指標策略一樣
我們可以用這樣基本的KD指標策略
Multicharts去做績效回測
並且用Multicharts的強項最佳化參數,去修正我們的策略
當然還有不可或缺的停損停利以及交易濾網
都將在之後一一介紹!

最後把上面分段的程式碼整理在下面
方便各位投資朋友直接複製貼在PowerLanguage Editor上
inputs: Len(9), overBuy(80), overSold(20);
vars: fastK(0), fastD(0), slowK(0), slowD(0), valueJ(0);
Value1 = Stochastic(H, L, C, Len, 3, 3, 1, fastK, fastD, slowK, slowD);
if slowK cross over slowD and
slowD < overSold and
slowK < overSold then
buy next bar market;
if slowK cross under slowD and 
slowD > overSold and 
slowK > overSold then 
sellshort next bar market;

尚未註冊TrdingView的投資朋友歡迎使用Kevin專屬註冊連結:
享一個月免費試用Premium帳號,到期後可享50%的續約優惠!
(即使不續約,仍可繼續使用TradingView免費版功能)

凱龍預約系統|凱龍下單機|MultiCharts|TradingView|凱龍官方Line💫@979qbbfo|凱龍官網:https://www.kevinwtf524.com/
為什麼會看到廣告
14會員
11內容數
凱龍下單機|MultiCharts|TradingView|凱龍預約系統|凱龍官方Line💫@979qbbfo|凱龍官網:https://www.kevinwtf524.com/
留言0
查看全部
發表第一個留言支持創作者!