請問要如何寫出當日k值突破50的選股,但是條件是前幾日k值50以上的kd死亡交叉後,期間沒有再kd黃金交叉,k值直接掉到低於50後才又往上突破50,突破50選出的股票。謝謝
K值突破50選股程式
- 487
- 最後發表 Sagiter 2022 十月 26
XQ小幫手
發文於
2022/10/21
Hello Sagiter,
您可以使用 barslast 來確認近一次條件成立過了幾根Bar,搭配 trueall 確認是否沒有發生黃金交叉。
舉例來說:
input: Length(9), RSVt(3), Kt(3), _n(10);
variable: rsv(0), k(0), _d(0);
SetTotalBar(maxlist(Length,6) * 3 + _n);
SetInputName(1, "天數");
SetInputName(2, "RSVt權數");
SetInputName(3, "Kt權數");
SetInputName(4, "檢查期數");
Stochastic(Length, RSVt, Kt, rsv, k, _d);
value1 = barslast(k crosses below _d and k > 50); //上一次KD死亡交叉到當下過了幾根Bar
condition1 = value1 > 0 and value1 <= _n and trueall(not (k cross over _d), value1); //這幾根Bar都沒有發生黃金交差 (最多只檢查 _n 期)
condition2 = k cross over 50; //k 向上突破 50
if condition1 and condition2 then ret = 1;
Sagiter
發文於
2022/10/24
謝謝您的回覆,我想請問一下如果要改為當下突破50和前一次發生向上突破50間不可有兩次以上的kd死亡交岔的話,要怎麼修改,有可檢查發生幾次條件的語法嗎?謝謝您。
Sagiter
發文於
2022/10/26
謝謝。很清楚。
4 評論