跨頻率xf_RSI使用問題

  •   151 
  • 最後發表   PaulChen  2021 六月 25
PaulChen 發文於   2021/06/15

小幫手:

          請問我在30分鐘圖裡要跨頻率取的日線圖的RSI 3 及RSI 6的值,我用xf_RSI

rsi3=xf_RSI("D",getfield("close","D"),3);

rsi6=xf_RSI("D",getfield("close","D"),6);

或用xfmin_RSI

rsi3=xfmin_RSI("D",getfield("close","D"),3);

rsi6=xfmin_RSI("D",getfield("close","D"),6);

取得的RSI3及RSI6的值何以都是100?我用print觀察計算的數值如下

date 20210615.000000 time 84500.000000 RSI3 100.000000 RSI6 100.000000 rsi3-6 0.000000 

date 20210615.000000 time 91500.000000 RSI3 100.000000 RSI6 100.000000 rsi3-6 0.000000 

date 20210615.000000 time 94500.000000 RSI3 100.000000 RSI6 100.000000 rsi3-6 0.000000 

date 20210615.000000 time 101500.000000 RSI3 100.000000 RSI6 100.000000 rsi3-6 0.000000 

date 20210615.000000 time 104500.000000 RSI3 100.000000 RSI6 100.000000 rsi3-6 0.000000 

date 20210615.000000 time 111500.000000 RSI3 100.000000 RSI6 100.000000 rsi3-6 0.000000 

date 20210615.000000 time 114500.000000 RSI3 100.000000 RSI6 100.000000 rsi3-6 0.000000 

date 20210615.000000 time 121500.000000 RSI3 100.000000 RSI6 100.000000 rsi3-6 0.000000 

date 20210615.000000 time 124500.000000 RSI3 100.000000 RSI6 100.000000 rsi3-6 0.000000 

date 20210615.000000 time 131500.000000 RSI3 100.000000 RSI6 100.000000 rsi3-6 0.000000 

問題出在哪裡?

排序方式: 標準 | 最新
XQ小幫手 發文於   2021/06/17

Hello PaulChen,

 

小幫手用警示腳本回測作測試print出來的數值沒有發生您所敘述的情形。

有可能是您所用的預讀筆數不夠,您可以將其調長試試。(例如500筆)

附上測試的警示腳本供您參考。

 

如果還是有問題的話,需要麻煩您提供策略雷達匯出檔、警示腳本來作檢視。

您可以直接將檔案上傳,也可以Mail至客服信箱 XQservice@XQ.com.tw且附上 討論文章連結網址(小幫手才能盡早處理)。

感謝。

附加文件

PaulChen 發文於   2021/06/19

小幫手:

          我忘了說明是在FITX 30分鐘圖及FITXN 30分鐘圖裡執行出問題,在TSE 30分鐘圖裡抓日線圖裡的RSI3及RSI6是正確的,是否在getfield的參數裡需增加產品參數,如getfield("FITX","close","D"),但好像只有在跨產品跨頻率的函數getsymbolfield才有產品參數"TSE" 或"FITX". 

PaulChen 發文於   2021/06/20

而且離奇是我下班在家用全球贏家3.03.08跑主圖疊圖是正常的,在上班時間用辦公室電腦的全球贏家3.05.04,就是會出現上述的狀況(RSI3,RSI6全是100)

XQ小幫手 發文於   2021/06/22

Hello PaulChen,

 

由於您並沒有跨商品,所以使用 GetField 就可以了。

小幫手依照您所說的,測試在警示回測以及指標腳本上都沒有問題。

需要麻煩您提供出問題的 頁面匯出檔/策略雷達匯出檔 包含腳本 以及 XQ Log 來檢查問題原因。

Log資料夾(預設路徑:C:\SysJust\XQLite\LOG)直接壓縮後提供即可。

您可以直接將檔案上傳,如果檔案過大的話也可以Mail至客服信箱 XQservice@XQ.com.tw且附上 討論文章連結網址(小幫手才能盡早處理)。

感謝。

附加文件

PaulChen 發文於   2021/06/25

小幫手:

         我用mail傳了數次都不成功,可能log壓縮檔太大,我用這可否上傳.

PaulChen 發文於   2021/06/25

我先將程式上傳,程式是在台股指數近月(FITX*1)30分鐘圖,用主圖疊圖,將指示點標示在主圖上,請當我看一下問題在哪裡,謝謝.

variable: rsi3(0),rsi6(0),P5ma(0);

//價乖離

if date <> date[1] then 

begin

P5ma=average(GetField("Close","D"),5)[1];

value1=average(GetField("Close","D"),5);

end;

value2=absvalue(P5ma-close);

print("日期",date,"時間",time,"前一筆五均",P5ma,"close",close,"乖離值",value2/P5ma);

if P5ma<>0 then

begin

   if close > value1 and value2/p5ma >= 0.05 then 

      begin

        plot1(high*1.002);

  end;

   if close < value1 and value2/p5ma >= 0.05 then

      begin

        plot2(low*0.998);

  end;

end

else

begin

 if close > value1 and value2/close >= 0.05 then 

     plot1(high*1.002);

 if close < value1 and value2/close >= 0.05 then

     plot2(low*0.998);

end;

//RSI 乖離

rsi3=xf_RSI("D",getfield("close","D"),3);

rsi6=xf_RSI("D",getfield("close","D"),6);

value3=absvalue(rsi3-rsi6);

print("日期",date,"time",time,"RSI3",rsi3,"RSI6",rsi6,"rsi3-6",value3);

if rsi3 > rsi6 and value3 >= 22 then

begin

    plot3(high*1.002);

end;

if rsi3 < rsi6 and value3 >= 22 then 

begin

   //print("日期",date,"time",time,"RSI3",rsi3,"RSI6",rsi6,"rsi3-6",value3);

   plot4(low*0.998);

end;

// 準領先指標

if rsi3 >= 95 then 

begin

   //print("date",date,"time",time,"RSI3",rsi3,"RSI6",rsi6,"rsi3-6",value3);

   plot5(high*1.002);

end;

if rsi3 <=5 then

begin

   //print("date",date,"time",time,"RSI3",rsi3,"RSI6",rsi6,"rsi3-6",value3);

   plot6(low*0.998);

end;

 

XQ小幫手 發文於   2021/06/25

Hello PaulChen,

 

小幫手這邊作測試沒有問題。

附上匯出的頁面檔以及 print 資訊。

小幫手猜測或許有可能是您設定裡的XS指標計算範圍設的太短。

你可以在圖上的設定作調整。(參考附圖)

 

如果還是有問題的話,需要麻煩您提供XQ Log。

由於您提到壓縮檔太大的問題,或許可以麻煩您上傳到雲端空間後再將連結 Mail至客服信箱 XQservice@XQ.com.tw且附上 討論文章連結網址(小幫手才能盡早處理)。

感謝。

附加文件

發表回覆
Close