這應該是很簡單的程式碼
但選出來的股票竟是錯的
難道這樣寫錯了嗎
condition1 = false;
condition1 = close < close[1] * 1.03;
if condition1 then ret = 1;
Hi tdf118,
小幫手的是正常的,如圖

您的畫面有大戶持股比例,
請問是否有完整的程式嗎?謝謝。
原始程式碼
value1 = Getfield("大戶持股比例","W",param:=100);
condition1 = close < close[1] * 1.03;
if value1 < 85 and condition1 then ret =1;
SetOutputName1("大戶持股比例");
OutputField1(value1);
這樣跑出來如圖
condition1 似乎沒作用
Hi tdf118,
測試您的原始程式碼後,確實有此狀況,
待小編詢問相關人員後,再向您說明,謝謝。
Hi tdf118,
因為選股中心列表的 "漲幅%" 是抓最新一根日線的資料,
但是腳本執行時, "大戶持股比例" 資料只有出到上週, 影響腳本用到的 close 資料也是上週五的,
這部分的問題,已反映給相關人員。
另外,可以先將 "大戶持股比例" 編譯在另外一個週資料頻率的腳本,例如以下的範例選股腳本:
setbarfreq("W");
value1 = Getfield("大戶持股比例","W",param:=100);
ret = 1;
outputfield1(value1,"大戶持股比例");
日資料頻率腳本的撰寫漲幅條件:
condition1 = close < close[1] * 1.03; if condition1 then ret = 1;
最後在同一個選股策略加入這兩個選股腳本,就可以篩選出符合條件的商品:

以上說明,謝謝。
5 評論