低檔突破均線股票選股程式寫法

  •   456 
  • 最後發表   YC1234  2023 三月 10
YC1234 發文於   2023/03/08

想找滿足這三個條件的股票, 類似符合下圖線型&箭頭那根K的股票
(1)低檔的股票(今日股票小於過去高點時股價的70%), (2)前一天20日均線斜率向下/平緩/微上揚, (3)今天帶量突破均線的選股



寫了這段都選不到股票, 但自己用肉眼手動抓是有符合條件的股票的, 能否協助哪裡程式或邏輯錯誤?
 

average(getfield("Close", "D")[1], 20); //前一日 20日均線

value1 = average(getfield("Close", "D") [1], 20);

value2 = LinearRegSlope(value1,1); //計算過去10期的前一日20MA斜率

 

 

// 帶量突破均線

input: Length(20), VolFactor(2), D(180), percentofpastprice(35), MaSlope(0.35);

 

SetInputName(1, "期數");

SetInputName(2, "成交量放大倍數");

SetInputName(3, "過去幾天股價");

SetInputName(4, "今天股價是過去股價的多少%");

SetInputName(5, "均線斜率小於幾度");

settotalbar(6);

 

if close > Average(close, Length) and  close[1] <  Average(close, Length) and

   volume > Average(volume[1], Length) * VolFactor and value2 < MaSlope and close < percentofpastprice/100 *close[D]

 

then ret=1;

 

XQ小幫手 發文於   2023/03/10

Hello YC1234,

 

小幫手會建議您將相關數值print出來檢查,會比較容易看出問題原因。

 

1. 低檔的股票,這點小幫手沒有看到您的條件。

如果您使用的是選股,可以用 GetFieldStartOffset 搭配 simplehighest 來取得所有資料的高點。

 

2. 斜率和弧度(度數)是不同的,如果您是要算度數的話應該使用 LinearRegAngle 函數。 

 

需注意XQ的技術線圖是有調整過讓用戶比較好觀看,並不是用絕對座標。

所以您覺得的 "斜率微上漲" 可能會和實際數值相差不小。

發表回覆
Close