選古中心

  •   122 
  • 最後發表   小陽  2024 四月 03
小陽 發文於   2024/03/06

我想在選古中心的選股結果欄位增加一欄:

以今天收盤價為基準,今天的收盤價比前一天收盤價高,則計1。

今天收盤價比前兩天高,則計2。

今天收盤價比前三天低,則計2,並停止計算。
請問這該怎麼寫?感恩。

var : x(0);

value2 = close;//記錄當下收盤價

 

if close > close[1] then x = x + 1;

以上我是用周選股的結果,切換到日選股也是不對。

排序方式: 標準 | 最新
XQ小幫手 發文於   2024/03/15

Hello, 小陽.

 

小幫手理解您的腳本應該是要近N天紀錄一個近期創高的天數,

var: x(0), Y(0);

if 
    close > close[1] 
then begin 
    x = x + 1;
    if x > Y then Y = x;
end
else begin
    Y = x;
    x = 0;
end;

ret = 1;

outputField1(x, "今日創高天數");
outputField2(Y, "歷史創高天數");

1710321735646

但是這邊要注意的是系統預設資料讀取筆數是10,

所以選出來的結果是近十天的,若您要計算更長的天數,須設訂更長的資料筆數,

您也可以參考下列網址

https://www.xq.com.tw/lesson/xspractice/%E8%B3%87%E6%96%99%E8%AE%80%E5%8F%96%E7%AF%84%E5%9C%8D%E8%88%87%E8%85%B3%E6%9C%AC%E5%9F%B7%E8%A1%8C%E7%9A%84%E9%97%9C%E4%BF%82/

 

謝謝。

小陽 發文於   2024/03/18

1.請問"今天創高天數"意思是...? "創歷史高天數"可以理解。
2.我想詢問的是,假設今天3/18 收盤價100、3/17 收盤價97、3/16收盤價98、3/15收盤價96、3/14收盤價101(請忽略假日的問題),這樣創過去3天高。我只需要一個X(創過去幾天高)。
3.我用您的程式碼,除了創過去十天高以外(setbackbar需要自己設定),其他的數據好像不太正確,或是跟我想像中的不太一樣。麻煩您了。

附加文件

XQ小幫手 發文於   2024/04/03

Hello, 小陽.

原本的Y值是,紀錄資料讀取筆數的區間,曾經創高的天數,但是造成您的誤解,所以小幫手拿掉了,

 

X值,是創過去幾天高,

var: x(0);

if 
    close > close[1] 
then begin 
    x = x + 1;
end
else begin
    x = 0;
end;

ret = 1;

outputField1(x, "創過去幾天高"); //此欄位會受資料讀取筆數影響,若與資料讀取比數一樣長,要延長讀取筆數ㄒ

謝謝。

發表回覆
Close