SetDicValue,GetDicValue是否只能在dadt0层上起作用?
问题:发现在两个交易单元通信时,SetDicValue,GetDicValue只能在dadt0层上起作用,比如两个交易单元都为tbf0;或者两个交易单元 都有多层数据,但dadt0数据必须相同。
如果第一个交易单元dadt0数据,而第二个交易单元数据如下图,则不能通信。
也不支持如:Data1.GetDicValue("Account","",SystemDateTime,p1);这种命令。 是这样吗
//------------------------------------------------------------------------
// 简称: test_0109_2026
// 名称:
// 类别: 策略应用
// 类型: 用户应用
// 输出: Void
//------------------------------------------------------------------------
Params
//此处添加参数
Vars
//此处添加变量
array<string> q1;
Defs
//此处添加策略函数
Events
//此处实现事件函数
//Bar更新事件函数,参数indexs表示变化的数据源图层ID数组
OnBar(ArrayRef<Integer> indexs)
{
Range[0:DataCount-1]
{
if(BarStatus==0)
{
GetDicValue("TB_ROLLOVER_v2", Symbol, date + time, q1);
print(symbol + "|" + TextArray(q1));
}
}
}
//------------------------------------------------------------------------
// 编译版本 2026/1/9 93214
// 版权所有 wangkaiming
// 更改声明 TradeBlazer Software保留对TradeBlazer平台
// 每一版本的TradeBlazer策略修改和重写的权利
//------------------------------------------------------------------------
显然可以基于图层操作
这是在tbquant中?我是在tbquant下遇到这个问题