請問目前支援所有股票的排序或記錄了嗎?

  •   462 
  • 最後發表   Michaelxie  2023 二月 01
Michaelxie 發文於   2023/01/14

查閱過去討論記錄,若要比較所有股票的周漲幅或月漲幅做記錄,

可能要記錄本隻股票再1700隻股票中排名第幾名,或是漲幅第幾名,

但2020年XQ的客服在討論串中說不支援此記錄;

想請問現在若要做這個比較記錄該怎麼做呢?

我看的是本篇客服回覆

https://forum.xq.com.tw/thread/%e9%97%9c%e6%96%bcmarketsmith%e8%bb%9f%e9%ab%94%e7%9a%84rs%e8%ae%80%e6%95%b8/?order=all#comment-d1c6149d-dae8-43d4-862e-abe200edda0b

 甚至想做成指標,想在指標內顯示這隻股票今天或本季是所有股票中第幾強的漲幅,謝謝

 

 

排序方式: 標準 | 最新
XQ小幫手 發文於   2023/01/17

Hello Michaelxie,

 

如果您是要計算個別股票的週漲幅/月漲幅並以此作排序的話,可以參考選股中心的排行功能

但若是要在指標上標示是所有股票中的第幾強的話,就需要在指標腳本中使用 getsymbolfield 個別取得所有所需的商品來計算,在撰寫上相當耗時且管理困難。

Michaelxie 發文於   2023/01/17

對的小幫手,我就是想要自己在程式碼內依據做排序,或取得所有商品來計算漲跌幅、甚至加總漲跌幅都可能。

所以想請教如果要這麼做的話該怎麼寫?

使用array 或是 XQ有排序功能嗎? 不要選股指標的排續那種,謝謝

 

 

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

Hello Michaelxie,

 

如同小幫手上面所說,您需要在指標腳本中使用 getsymbolfield 個別取得所有所需的商品來計算。

舉例來說:

value1 = 100 * (getsymbolfield("1101.TW", "Close", "W") - getsymbolfield("1101.TW", "Close", "W")[1]) / getsymbolfield("1101.TW", "Close", "W");

這樣就會是1101的週漲跌幅。

以此類推將所有的商品漲跌幅計算出來,然後再排序看是排名第幾。

 

陣列排序可以參考 Array_SortArray_Sort2d 函數。

 

網站上有教學區,裡面有XS語法的基礎和應用可以閱覽。

  • 按讚來自於
  • michalexie
Michaelxie 發文於   2023/01/26

謝謝小幫手,那請教小幫手,arry sort , array sort2d 有辦法輸出在指標,

告訴你這個個股在array中是第幾名嗎,謝謝

 

 

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

Hello Michaelxie,

 

您可以參考該函數的說明, array_sort 跟 array_sort2d 只是將陣列依照設定的條件排序,並不會得知某個商品是位於哪個位置。

要另外用迴圈判斷商品在陣列中的位置來得知排名。

發表回覆
Close