当我们需要交易多个品种或者多个周期时,即跨周期跨品种相关的交易时。往往需要订阅多个合约的多个周期。
那么如何设置这些内容,这里展示通过设置最简单的K线图形式。
首先准备一个K线图,通常情况下默认带有一个品种

假设我们需要做跨周期跨品种交易
图上的RB888为15分钟,我们需要增加30分钟和60分钟的RB888,和日线HC888,日线I9888作为交易标的。
此时我们点击鼠标右键,选择策略单元设置:

在设置页面中,左侧是已经有的图层(rb888 15分钟),右侧为对当前图层进行的设置
左侧有两种添加方法,键盘添加和列表添加
我们添加一个rb888,30分钟
使用键盘添加:可以快速指定一个具体合约添加进来,我们选择rb888


点击后,出现对应图层,点击对应图层(这里是data1),在右侧切换其周期为30分钟。

同理可以尝试添加一个rb888,60分钟的。

接下来我们使用列表添加,增加2个其他品种 HC888 和 I9888

选中需要的品种(可多选)添加
最后检查所有的图层设置,确认


以上多图层(跨周期跨品种)就设置完成了,你学会了吗?
补充设置:
如何K线图显示超过4个图层,右上角系统设置里
系统设置->K线设置->最大显示图层数

如单个商品在编写策略时以下代码就可实现:
Defs
//此处添加公式函数
Events
//此处实现事件函数
OnInit()
//设置周期
{
SubscribeBar(data0.Symbol,"3m",data0.BeginDateTime);
SubscribeBar(data0.Symbol,"5m",data0.BeginDateTime);
SubscribeBar(data0.Symbol,"10m",data0.BeginDateTime);
SubscribeBar(data0.Symbol,"15m",data0.BeginDateTime);
SubscribeBar(data0.Symbol,"20m",data0.BeginDateTime);
SubscribeBar(data0.Symbol,"30m",data0.BeginDateTime);
SubscribeBar(data0.Symbol,"1h",data0.BeginDateTime);
SubscribeBar(data0.Symbol,"2h",data0.BeginDateTime);
SubscribeBar(data0.Symbol,"3h",data0.BeginDateTime);
SubscribeBar(data0.Symbol,"1d",data0.BeginDateTime);
SubscribeBar(data0.Symbol,"2d",data0.BeginDateTime);
SubscribeBar(data0.Symbol,"1w",data0.BeginDateTime);
SubscribeBar(data0.Symbol,"2w",data0.BeginDateTime);
SubscribeBar(data0.Symbol,"1mon",data0.BeginDateTime);
//交易设置
Range[0:DataCount-1]
{
SetConsecEntries(1);//设置最大建仓次数
{
If(IsRollover)
{
AddDataFlag(Enum_Data_RolloverBackWard());//设置后复权
}
If(IsRolloverRealPrice)
{
AddDataFlag(Enum_Data_RolloverRealPrice());//是否映射真实价格
}
If(IsAutoSwapPosition)
{
AddDataFlag(Enum_Data_AutoSwapPosition());//设置自动换仓
}
}
}
}