為什麼這樣選不出股票?

  •   155 
  • 最後發表   jimsun  2023 六月 01
jimsun 發文於   2023/05/27

大家好,請問一下我這樣寫到底哪裡有問題?選不股票!!

condition1=false;

if trueAll(getField("股利合計")>0,5) 

and getField("累計營收年增率","M")>0

and summation(GetField("EPS","Q"),4)>0 then condition1=true;

if condition1 then ret=1;

 

排序方式: 標準 | 最新
bowen 發文於   2023/05/27

getField("股利合計","Y")

jimsun 發文於   2023/05/27

你好,我加了getField("股利合計","Y"),但outputField顯示出的股利合計是重複的,不知問題出在哪!

bowen 發文於   2023/05/27

你是outputField甚麼

打出來看看

jimsun 發文於   2023/05/27

你好,我想把5年股利合計列出來看看對不對,結果一直出現重複年份的股利合計

condition1=false;

value8=getField("股利合計","Y");

if trueAll(value8)>0,5) 

and getField("累計營收年增率","M")>0

and summation(GetField("EPS","Q"),4)>0 then condition1=true;

if condition1 then ret=1;

outputField(1,value8[1]);

outputField(2,value8[2]);

outputField(3,value8[3]);

outputField(4,value8[4]);

outputField(5,value8[5]);

bowen 發文於   2023/05/28

以我的了解

選股腳本週期是在日K下運行

以現在的時間 

value8 是5/26日K去搜股利合計 

value8[1]是5/25日K去搜股利合計 

value8[2]是5/24日K去搜股利合計  以此類推 所以才會重複

所以應該是

outputField(1,getField("股利合計","Y")[1]);

outputField(2,getField("股利合計","Y")[2]);

outputField(3,getField("股利合計","Y")[3]);

outputField(4,getField("股利合計","Y")[4]);

outputField(5,getField("股利合計","Y")[5]);

你再核對一下資料

再來你的條件 trueAll(value8 > 0,5)  就像我上面說的 會一直重複取同樣的資料

應該改

if trueAll(getField("股利合計","Y") > 0,5) 

and getField("累計營收年增率","M")>0

and summation(GetField("EPS","Q"),4)>0 then ret = 1;

  • 按讚來自於
  • jimsun
jimsun 發文於   2023/05/28

oh,原來是這樣子!!大感謝! BOWEN

XQ小幫手 發文於   2023/06/01

Hello jimsun,

 

變數的執行頻率是跟隨著策略的執行頻率,所以在日頻率的狀況下:

value8=getField("股利合計","Y");

value8[1] 會是前一日的股利合計,getField("股利合計","Y")[1] 才會是前一年的股利合計。

故若您將執行頻率設為年的話,則 value8[1] 就會相當於 getField("股利合計","Y")[1]。

 

感謝 bowen 的熱心回覆。

 

發表回覆
Close