XS 營收選股相關問題

  •   468 
  • 最後發表   PoK  2020 十二月 30
PoK 發文於   2020/12/13

哈囉 ~ 小編

我又來叨擾了 XD

我從XQ抓營收數據如下 (form 財報狗) 圖一 ,公式如圖二

但我自己用value寫 光寫近三個月就寫了一堆value, 如圖三

想請問有沒有更快速的方法? 謝謝

P.S 直接getfiled 營收年增率 除以3 算出來的數字會跟 營收總和/去年營收總和 不同

 

附加文件

排序方式: 標準 | 最新
PoK 發文於   2020/12/14

9958 小編

XQ小幫手 發文於   2020/12/15

 PoK 您好

思考與驗證花了一些時間

小幫手覺得可以用看看  sum 功能

https://xshelp.xq.com.tw/XSHelp/index?HelpName=Summation&group=PRICECULFUNC

簡單來說 我們試一個範例

value1= sum(GetField("月營收","M"),6);   //近六個月
value2= sum(GetField("月營收","M")[12],6);  //去年同期算起往前推六個月

value3= (value1/value2-1);

這樣就可以取代您的一大串了XD

PoK 發文於   2020/12/15

 HI 小編

value1= sum(GetField("月營收","M"),3);   //近三個月 (現在是 11+10+9)

value2= sum(GetField("月營收","M"),6);   //近六個月 (現在是 11+10+9+8+7+6)

value3= sum(GetField("月營收","M")[12],3);  //去年同期算起往前推三個月

value4= sum(GetField("月營收","M")[12],6);  //去年同期算起往前推六個月

那如果是我要像財報狗那樣,當月的是11+10+9,上個月是10+9+8,請問上個月要怎寫?

是sum(GetField("月營收","M")[1],3); 這樣嗎? 謝謝

XQ小幫手 發文於   2020/12/16

PoK 您好

沒錯! 如果遇到 sum(GetField("月營收","M")[1],3);這種

[1] 代表前一個月,然後往回推3期

  • 按讚來自於
  • rowe2016
PoK 發文於   2020/12/16

帥哥啦 小編

  • 按讚來自於
  • b24524658
PoK 發文於   2020/12/29

小編我想再問一下。

如果要匯出近三年營收累計成長 是不是一樣要很多個value 即便用了sum

有自動產生數字的寫法嗎 哈哈

XQ小幫手 發文於   2020/12/29

PoK 您好

如果您是要比較近三年的營收成長的話

那可以用 GetField("營收成長率","Y")

就可以達成了

但如果您要累計三年的總營收 就要另外寫

PoK 發文於   2020/12/29

HI 小編 

我的意思是要近三年的每個月營收累積成長率,就跟我上面問的那個依樣啦 哈哈

所以應該會有36個數字...  加上六個月的 就有 72個...

XQ小幫手 發文於   2020/12/30

PoK 您好

所謂成長率: 我的認知應該是 同樣期間長度跟同樣期間長度比較  ex YoY 

如果您是要拿近三年(36個月) 跟前3年(36個月)比較

那我會覺得您可以依然使用 summation

value1=summation(GetField("月營收","M"),36);
value2=summation(GetField("月營收","M")[37],36);

ret=1;
outputfield1(value1);
outputfield2(value2);

但是要留意,如果您是要取"年"比較,那要加入條件計算式從12月開始往回抓

不然系統會是抓前"36期"的資料

發表回覆
Close