大家好,
如何使用選股腳本撰寫KD值達成條件後,取得當天的高中低價位?
例如:
K值貫穿20,達成條件後取得這一根的高低收價位數值,
第1根 K值為25
第2根 K值為19 高價50 低價40 收價 45
第3根 K值為15
如何取得 第2根 K值為19 的這天高低收價位數值?
大致邏輯:
1. 使用 Stochastic 函數 算出K值。
2. 如果 K值 貫穿 20 則 序列資料(相對K棒數)歸0,否則 序列資料累加1。
3. 如果 K[序列資料] = 0 則終止腳本,否則挑選出該檔股票商品;因為計算KD值,會有K值=0的狀況發生,須將此剃除。
注意:
資料讀取範圍我設定為從今年 2017/01/01 至今。
執行完該選股策略後的畫面:

完整範例選股腳本程式碼:
input: Length(9), RSVt(3), Kt(3), _LowK(20); variable: rsv(0), k(0), _d(0); setfirstbardate(20170101); SetInputName(1, "天數"); SetInputName(2, "RSVt權數"); SetInputName(3, "Kt權數"); Stochastic(Length, RSVt, Kt, rsv, k, _d); if k cross below _LowK then value1 = 0 else value1 += 1; if k[value1] = 0 then return else ret = 1; //outputfield1(value1,"K值貫穿20相對K棒數"); outputfield1(date[value1],"K值貫穿20的日期"); outputfield2(high[value1],"high"); outputfield3(low[value1],"low"); outputfield4(close[value1],"close"); outputfield5(k[value1],"k");
以上,供參考,有問題歡迎詢問。


9 評論