首先我們依然先介紹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<overSold以及slowD<overSold,即K值D值皆小於預設參數20
之後便是用下單指令「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免費版功能)
⭐目前凱龍承接三大項業務,歡迎洽詢:
- 金融量化系列|凱龍下單機租用 & TradngView & MultiCharts 程式碼諮詢撰寫
- Line官方系列|凱龍Line官方模組租用 & Line官方機器人全系列諮詢架設
- 網站SaaS平台|凱龍雲端應用 & 網站SaaS平台諮詢架設