3.15 序列间运算:多个序列中成员的对位计算

 

多个序列中,相同位置成员间的四则运算。
求 2019 年 12 月 24 日到 26 日深证 300 (399007) 对深证成指 (399001) 的每日相对收益率。

Date Code Name Open Close Amount
2020/2/18 399001 Shenzhen 11244.7651 11306.4863 3.19E+11
2020/2/17 399001 Shenzhen 10974.9328 11241.4993 3.12E+11
2020/2/14 399001 Shenzhen 10854.4551 10916.3117 2.77E+11
2020/2/13 399001 Shenzhen 10936.5011 10864.3222 2.87E+11
2020/2/12 399001 Shenzhen 10735.0475 10940.7952 2.66E+11

使用了 A ?? B 对两序列成员按位进行 "?" 运算,其中?imagepng{+,-,*,/,%,}。

脚本:

A
1 =connect(“db”)
2 =[“399007”,“399001”].(A1.query(“select * from StockIndex where code=? and date between ‘2019-12-23’ and ‘2019-12-26’”,~))
3 >A1.close()
4 =A2.(~.calc(to(2,4),Close/Close[-1]))
5 =A4(1)–A4(2)

A1 连接数据源
A2 读取深证 300 和深证成指在 2019 年 12 月 23 日到 26 日的数据,取 23 日是为了计算涨幅
A3 分别计算 24 到 26 日每天的涨幅
A4 两个序列对位相减,即是相对收益率

运行结果:

Member
0.0031349096521252617
0.0011897141619391371
-4.4910504685946595E-4