跨頻率威廉指標數值是否有誤?

  •   124 
  • 最後發表   nicksun  2026 九月 21
nicksun 發文於   2026/09/20

// 2. 跨頻率計算還原月線的威廉指標

// ------------------------------

// 頻率參數 "AM" 代表還原月線

_WPR = xf_PercentR("AM", _Length) - 100; 

已使用跨頻率威廉指標,但在週K跟月K顯示的數值不一樣,是否為XQ本身的問題?

 

排序方式: 標準 | 最新
虎科大許教授 發文於   2026/09/20

(1)請留意,計算技術指標可能需要足夠的資料筆數才能算出正確的數值。

(2)若主頻率是日,則一個月大約有22個交易日,_Length若為14,則至少需要準備22*14=308筆資料。

nicksun 發文於   2026/09/20

xf_RSI 也一樣遇到問題

期數只有4

settotalbar 跟 SetBackBar 結果都一樣,請問程式碼應該如何寫才能解決?

settotalbar(1500);

SetBackBar(30, "M");  // 確保取得足夠的原始月線資料來計算 RSI

SetBackBar(30, "AM"); // 確保取得足夠的還原月線資料來計算 RSI

虎科大許教授 發文於   2026/09/20

跨頻率計算RSI,賦予的收盤價也必須跨頻率。你的問題應該是使用日收盤價計算月RSI,而非用月收盤價計算月RSI。

有關跨頻率、跨商品、跨商品且跨頻率的操作,你可以參考我書本第二版的第三章「時序與流程控制」,裡面有詳盡的說明。

input: _Length(4);
setTotalBar(_Length*22);
var: myRSI(0);
if symbol="2330.TW" then
    begin
        myRSI = xf_RSI("AM", GetField("收盤價", "AM") , _Length); 
        ret=1;
        outputField1(myRSI,"RSI");
    end;

nicksun 發文於   2026/09/21

有問題的程式碼其實這部分有定義

// 依據當前主頻率是否為還原頻率,分別以「字串常數」呼叫跨頻率函數

if BarAdjusted = true then begin   

    // 取得還原月線("AM")的收盤價,並計算還原月線 RSI

    _rsiValue = xf_RSI("AM", GetField("Close", "AM"), _rsiLen);

end else begin

    // 取得原始月線("M")的收盤價,並計算原始月線 RSI

    _rsiValue = xf_RSI("M", GetField("Close", "M"), _rsiLen);

 

end;

虎科大許教授 發文於   2026/09/21

我用你的程式,顯示的指標都正確的。若你的問題仍然沒解決,可能需要提供更詳盡的資訊。

 

nicksun 發文於   2026/09/21

許教授謝謝你,可以麻煩試一下週線圖與還原週線圖的部分嗎??

虎科大許教授 發文於   2026/09/21

//警示腳本
setTotalBar(1500);
ret=1;
print(date, xf_RSI("M",getField("Close","M"),4));

發表回覆
Close