您应该是想要一个元代码组成的 anyvector 吧,目前 any vector 直接 join 可能达不到您要的效果,可以用reduce(join, metrics, [<date>])
回答于 2023-09-22 15:40
如果是减去 N 日,直接用 temporalAdd 可以实现: date=[2023.01.01, 2023.01.02, 2023.01.03, 2023.01.04]temporalAdd(date, -4,`CFFEX) 如果是向量和日期按交易日进行减法运算,需要自己写一些向量内偏移的逻辑: date = getMarketCalendar(`SSE, 2023.01.01, 2023.03.01)d1 = 2023.02.15 d2 = 2023.02.28def date_dif...
回答于 2023-09-08 14:47
CacheSize 的初始值是 1000,如果小于 1000,则还是走 1000 的逻辑,而不是文档描述的 10w, 这部分我们会做出一个修改
回答于 2023-09-07 14:30
可以试一下以下这个脚本: t = table(100 0 102 103 3 4 106 108 5 6 7 8 9 101 108 1 2 3 4 as x)def f1(x): iif(x<cummax(x),-1,x)select f1(x) from t context by cumsum(iif(prev(bar(x, 108)) != 108, 0, 1))
回答于 2023-09-05 14:46
或者可以写一个通用的: def myf(colName, ft){if(isValid(ft)){return makeCall(format, sqlCol(colName), ft)}else{return sqlCol(colName)}}def generateReport(tbl, colNames, colFormat): sql(sqlColAlias(each(myf, colNames, colFormat),colNames), tbl).eval()colNames=["id", "date","price","qty", "city"]colFo...
回答于 2023-08-28 10:40
run(scriptFile, [newSession=false], [clean=true]) 函数 clean 默认是 true, 执行完成后会自动清除变量
回答于 2023-08-25 17:30
分组逻辑可以使用 context by 替代,窗口可以使用窗口函数。 rows between 13 preceding and 0 following 表示窗口是包括当前行和前 13 行的元素,但是不包括后面的行,所以是一个大小为 14 的窗口,转换成 DDB 的脚本可以写为: select mavg(ask,14) from trade context by sym csort time
回答于 2023-08-25 09:25
在节点 2 的startup.dos 写个循环语句,使用 remoteRun + isDataNodeInitialized 发送到 节点1 去等待节点 1 初始化完成。 如果是 docker 里的话, 写成 compose dependons 写一行就行。 多节点负载均衡的系统,个人不建议在节点之间建立这种强依赖关系,特别在启动的过程中。这样会严重影响整体系统的稳定性,导致非常脆...
回答于 2023-08-24 17:50