小幫手你好
我使用跨頻率KD去做選股指標(例如今日的週%K大於週%D),並且outputfield,其中選股結果KD的數值和技術線上的KD數值有落差,請問為什麼會這樣?
另外,請問技術指標出現資料欄位無法使用的問題還要多久才能修復呢?
謝謝
小幫手你好
我使用跨頻率KD去做選股指標(例如今日的週%K大於週%D),並且outputfield,其中選股結果KD的數值和技術線上的KD數值有落差,請問為什麼會這樣?
另外,請問技術指標出現資料欄位無法使用的問題還要多久才能修復呢?
謝謝
Hi Hardy,
請提供您的自訂選股腳本程式碼,以利小編查看問題的原因,
關於修復何時完成,沒有確切的時間,待修復後,小幫手會再通知您,
造成不便請見諒,謝謝。


如圖所示,兩邊的數值有落差。
程式碼如下。謝謝。
// 跨頻率週KD指標
//
input: Length(5), RSVt(3), Kt(3);
variable: rsv(0), k(0), _d(0);
SetTotalBar(Length * 6);
SetInputName(1, "天數");
SetInputName(2, "RSVt權數");
SetInputName(3, "Kt權數");
xf_stochastic("W", Length, RSVt, Kt, rsv, k, _d);
ret = k > _d;
outputfield1(k,"周%K");
outputfield2(_d,"周%D");
HI Hardy,
資料讀取範圍不夠長,所以計算出來的數值不正確,
請您試試以下完整修改選股程式碼範例:
// 跨頻率週KD指標
//
input: Length(5), RSVt(3), Kt(3);
variable: rsv(0), k(0), _d(0);
SetTotalBar(maxlist(Length,6) * 3 * 7);
SetInputName(1, "天數");
SetInputName(2, "RSVt權數");
SetInputName(3, "Kt權數");
xf_stochastic("W", Length, RSVt, Kt, rsv, k, _d);
ret = k > _d;
outputfield1(k,"周%K");
outputfield2(_d,"周%D");
以上,謝謝。
小幫手你好,
修正過後數值已經相同。感謝你的幫忙。
另外,請問
SetTotalBar(maxlist(Length,6) * 3 * 7);
的範圍是怎麼得知的?
感謝。
另外,跨頻率的RSI也有同樣的問題(即使settotalbar的範圍用了你提供的程式碼還是一樣)。
// 跨頻率週RSI指標
//
input: Length1(6), Length2(12);
SetTotalBar(maxlist(Length2,6) * 3 * 7);
SetInputName(1, "天數一");
SetInputName(2, "天數二");
Ret = xf_RSI("W", GetField("Close","W"), Length1) > xf_RSI("W", GetField("Close","W"), Length2);
outputfield1(xf_RSI("W", GetField("Close","W"), Length1),"周RSI 1");
outputfield2(xf_RSI("W", GetField("Close","W"), Length2),"周RSI 2");
請問該如何解決?感謝
Hi Hardy,
SetTotalBar(maxlist(Length,6) * 3 * 7);
有關跨週KD的資料讀取範圍,
是參考選股腳本:KD死亡交叉(選股) 的 SetTotalBar(maxlist(Length,6) * 3);
由於跨週KD是由日資料組成,故資料讀取範圍需約 乘以 7 ( 因為一週7天 )
同理,
跨週頻率的RSI 選股腳本,
可以先參考選股腳本:RSI死亡交叉(選股) 的 settotalbar(maxlist(RSILength,6) * 9);
由於跨週RSI是由日資料組成,故資料讀取範圍需約 乘以 7 ( 因為一週7天 ),
故請修改為
settotalbar(maxlist(Length2,6) * 9 * 7);
應該就會正確,
以上說明,謝謝。
P.S. 由於資料讀取範圍的設定,會根據每個技術指標的計算方式,而有所不同,
較簡單的方式是,如果計算出來的數值不正確,則將資料筆數調更多一些,
較複雜的方式是,先查看系統腳本的相關技術指標範例,通常都有 settotalbar 的範例可參考;參考後再依據您的腳本調整settotalbar程式碼。
最後,如果以上設置後,還是計算不正確,呈請發文詢問,會有熱心的板友或者小幫手幫忙查看問題的原因。
xf_RSI("W", GetField("Close","W"), Length1) 的前一期 要如何寫?
Hi Fred,
您好,可以使用 xf_GetValue 如連結語法說明,
例如:
value1 = xf_RSI("W", GetField("Close","W"), Length1); //計算週線的RSI
value2 = xf_GetValue("W",value1,1); //取得上一週的週RSI
以上方向供您參考,謝謝。
感寫 取得上一週的週RSI 寫法 6.41版本並未獲得改善 . 指標繪圖 跑掉了. 我如何回復之前 5種跨頻率model/scrip 指標繪圖 圖形的設定 ? (除了退版外) (如setmode1 是之前 setmode2 現在)
Hi Fred,
您好,客服專人有收到您的來信,並回信請您提供相關資訊,以利相關人員查詢問題的原因,
或者請您詢問服務行銷業務同仁協助您,以上說明,謝謝。
10 評論