過去X天內創新高的股票

  •   464 
  • 最後發表   tradeNew  2024 十一月 28
tradeNew 發文於   2024/11/25

請問以下寫法為什麼有些股票選不出來呢(創新高後,回檔的)?

過去的50天內,其中有一天創200日新高,RET出來 但我看好多股票都沒有被選到到

創高後回檔,顯示出來的,都是創新高的,要怎樣也能找出創高後回檔的呢?

 

例如8176 ,10/28號突破20原現在回檔到15元,創歷史新高

照理說下面語法也要能顯示出來吧? 但不管怎麼嘗試都沒有顯示出來,能幫忙解惑嗎...

 

或者這樣詢問 過去50天,創240天新高的股票,不管現在價格如何,這種語法要如何寫呢?

 

 

Sample:

condition2 = close >= highest(high[1],100) ;

if trueAny(condition2, 50) 

then begin 

ret = 1;

outputField1("一年","新高");

end;

排序方式: 標準 | 最新
虎科大許教授 發文於   2024/11/26

(1)close >= highest(high,200)

close不可能大於200天最高價,最多等於。

(2)收盤創過去200天收盤新高:close > highest(close[1],200);

(3)收盤比過去200天高點還高:close > highest(high[1],200);

(4)「創高後回檔」需要清楚定義,才知道怎麼處理。

 

XS小編 發文於   2024/11/28

Hello tradeNew,

 

小編補充,condition2 是個變數,需要運算過才有值,否則取到的都會是預設值 (False)。

若資料讀取筆數不夠,則 trueAny 向前取的期數沒有運算過的部分都會是False。

就以上面的範例來說,會建議設50以上才合適。

另外回檔的部分,您可以考慮用變數紀錄最高點,然後判斷接下來的收盤價跌到高點的 N% 之下。

發表回覆
Close