想用選股中心找出在20221026這日RSI出現黃金交叉的個股

  •   193 
  • 最後發表   林玲  2022 十一月 30
林玲 發文於   2022/11/17

小幫手您好:

我想用選股中心找出在20221026這日RSI出現黃金交叉的個股,寫的程式碼如下:

但跑出來的結果是RSI5和RSI10的數值都是100,只有指定日期的收盤價是正確的,可以請您幫我看那裏錯了嗎?

//RSI5-RSI10大於0

input: Length1(5), Length2(10);

input:_date(20221026,"指定日期");

 

value4 = getbaroffset(_date);

//ret = 1;

 

SetInputName(1, "天數一");

SetInputName(2, "天數二");

 

VALue1=RSI(DATE, Length1);

VALue2=RSI(DATE, Length2);

VALue3=VALue1-VALue2;

settotalbar(500);

 

Condition1=VALue3 >= 0 ;   //條件一:RSI5值>RSI10值

Condition2=VALue3 < 0 ;   //條件二:RSI5值<RSI10值

IF Condition1 THEN RET=1;

outputfield(1,value1,2,"RSI5");

outputfield(2,value2,2,"RSI10");

outputfield(3,close[value4],"指定日收盤價");

排序方式: 標準 | 最新
XQ小幫手 發文於   2022/11/23

Hello 林玲,

 

您的RSI函數第一個參數放成 Date 所以計算錯誤,修改成 close 就可以正常運算。

另外RSI所需的資料筆數您可以參考內建的選股腳本作設定,並不一定要設為500,這樣會計算得比較久。

林玲 發文於   2022/11/27

小幫手您好:我照你的方式修正了,但跑出來的RSI的數字是最近一天的RSI的數值,但我希望能跑出的是我指定過去的某個日期(例如是20190124),執行程式後,能跑出我要求的日期那天(例如是20190124)的RSI數值。而不是最近的20221123日期的RSI資料,請問我該如何修正呢?謝謝您

XQ小幫手 發文於   2022/11/30

Hello 林玲,

 

小幫手認為最簡單的方法是您用回朔的方式,直接選擇想看的日期。

不然選股會需要多運算指定日期後的資料。

您可以用 value1[value4] 和 value2[value4] 的方式取得該日的RSI資訊,就如同您取用指定日收盤價。

需注意condition 也要作調整,如果您是要用該日的數值作判斷的話。

附加文件

發表回覆
Close