Vars
Dic<Array<String>> dicByTime("TB_ROLLOVER_v2", True, "rb888.SHFE");
Dic<Array<String>> dicByBar("TB_ROLLOVER_v2", True, "rb888.SHFE");
Integer limitCount(999);
Global Integer id(0);
Events
OnInit()
{
id = SubscribeBar("rb888.SHFE", "1d", 20200101, 20250101);
Range[id:id]
{
SetDicFlag(dicByTime, Enum_DicFlag_BackTime);
SetDicFlag(dicByBar, Enum_DicFlag_BackBar);
}
}
OnBar(ArrayRef<Integer> indexs)
{
Range[id:id]
{
if(CurrentBar == limitCount - 1)
{
Integer i;
For i = 0 To limitCount
{
Print("dicByTime,time:" + Text(GetDicTime(dicByTime, i)) + ",value:" + TextArray(dicByTime[i]));
Print("dicByBar,time:" + Text(GetDicTime(dicByBar, i)) + ",value:" + TextArray(dicByBar[i]));
}
}
}
}
函数 | 类型 | 结果 | 说明 |
---|---|---|---|
Enum_DicFlag_BackBar | Integer | 1(20) | 返回基础数据按Bar回溯类型枚举值,默认为按Bar回溯 |
Enum_DicFlag_BackTime | Integer | 2(21) | 返回基础数据按时间回溯类型枚举值 |
2. 发布时间和数据时间有什么区别?怎么都是一样的。什么时候不一样?
函数 | 类型 | 说明 |
---|---|---|
Enum_DicFlag_VisitPubTime | Integer | 返回基础数据按发布时间访问类型枚举值,默认为按发布时间访问 |
Enum_DicFlag_VisitDataTime | Integer | 返回基础数据按数据时间访问类型枚举值 |
3.SetDicXXX,在策略研究、策略优化时不支持, 那优化怎么用发布时间回溯?
复权数据应该是没区别的
这个股票上,比如年报
举例年报发布可能是明年的3月,这个是发布时间
但是年报数据是去年的,这个是数据时间
老师看看我的其他问题,怎么样才能够既能方便地用[1]回溯,又可以加载主力的数据??Commentary("合约:"+TextArray(myPostionL)); //GetDicValue后的普通数组 不支持回溯, 只能通过改date+time获取之前的值,这样回溯很麻烦啊
Commentary("合约:"+TextArray(member_long[0])); //回溯仅DIC类型才行,但是需要预定义标的
//此处添加变量
Dic<Array<Array<String>>> member_long("TB_MEMBER_positions_long");
Array<Array<String>> myPostionL;
Events
//此处实现事件函数
//初始化事件函数,策略运行期间,首先运行且只有一次
OnInit()
{
SetDicFlag(member_long, Enum_DicFlag_BackTime);
}
//Bar更新事件函数,参数indexs表示变化的数据源图层ID数组
OnBar(ArrayRef<Integer> indexs)
{
GetDicValue("TB_MEMBER_positions_long",RelativeSymbol(),date+time,myPostionL);
Commentary("合约:"+TextArray(myPostionL)); //GetDicValue后的普通数组 不支持回溯, 只能通过改date+time获取之前的值
Commentary("合约:"+TextArray(member_long[0])); //回溯仅DIC类型才行,但是需要预定义标的
那到底该怎么样才能够既能方便地用[1]回溯,又可以加载主力的数据??
Commentary("合约:"+TextArray(myPostionL)); //GetDicValue后的普通数组 不支持回溯, 只能通过改date+time获取之前的值,这样回溯很麻烦啊
Commentary("合约:"+TextArray(member_long[0])); //回溯仅DIC类型才行,但是需要预定义标的