订阅问题

现在的问题我描述一下,目前我订阅是在ONINIT里面订阅10个期权合约,OnReady里面去取数据,然后ReStart再返回到oninit里面做一个判断,退订10个合约,然后再判断应该定哪一个合约,然后每天晚上开盘之前登录账户的时候ReStart重启工作区。因为晚上是同时重启工作区的情况下,200个订阅是不太够的,但是真实的情况下我不需要晚上重启那一瞬间的订阅量。

现在有几个问题,

                       第一,在OnAccountStatus(AccountStatusRef antStatus) 这个域能否设置分时间段重启(以代码的方式),比如20.45-20.48为一个时间段,20.48-20.50为一个时间段,以此类推。

                       第二,OnAccountStatus(AccountStatusRef antStatus) 这个域能否区别日盘和夜盘。

                       第三,如果上面两种都没法,那有没有更好的方式能减少那一瞬间的订阅量。

期权合约订阅问题
SubscribeBar订阅问题
节假日后SubscribeBar()图层订阅问题
单品种多合约数据订阅问题
subscribeBar使用问题
订阅行情显示问题
关于行情订阅的问题
订阅指定图层的问题
订阅行情失败的问题
合约订阅与计算的问题

”然后再判断应该定哪一个合约“,需要什么数据来判断选哪个合约呢,必须要用到价格数据吗,从这个维度是不是缩减一下订阅。

肯定是以期权价格为第一判断标准的。但是最开始订阅10个期权这里是没法缩减的。

直接买订阅 简单粗暴

这个只是最后的办法

学习了

1 自己代码控制啊 登录的时候 启动定时器 根据你设置的时间切片(比如45分重启,集合竞价是到49分 可以切2个 定时间间隔一个是60*1000 ,一个是60*1000*2)

2 可以 用TrueDate(0)对比 可以区别日盘还是夜盘

1 自己代码控制啊 登录的时候 启动定时器 根据你设置的时间切片(比如48分重启,集合竞价是到59分 可以切2个 定时间间隔一个是立即,一个是60*1000*5)

2 可以 用TrueDate(0)对比 可以区别日盘还是夜盘

这个域里面能用TrueDate(0)判断是日盘品种还是夜盘品种吗?日盘的话,我就写成早上8.45左右启动,夜盘还是写成晚上20.45左右启动,这样是否可行?

那就重启的时候,判断系统时间,>18:30 & <20:59就是夜盘

OnAccountStatus(AccountStatusRef antStatus) ////////////每天收盘且没有持仓重启工作区//////////////////


 {


 If(antStatus.status == "Logined"

&&SystemDateTime > CurrentDate + 0.2045

&&SystemDateTime < CurrentDate + 0.2054

)

{

id1 = CreateTimer(1, 0, 1);

}

 }


OnTimer(Integer id,Integer millsecs)

{

If(id1>0)

{

if(str1[1]=="SHFE")

{

id2= CreateTimer(60*1000, 0, 1);

}

Else IF(str1[1]=="DCE")

{

id2= CreateTimer(60*1000*2, 0, 1);

}

Else IF(str1[1]=="CZCE")

{

id2= CreateTimer(60*1000*3, 0, 1);

}

Else IF(str1[1]=="CFFEX")

{

id2= CreateTimer(60*1000*4, 0, 1);

}

Else IF(str1[1]=="INE")

{

id2= CreateTimer(60*1000*5, 0, 1);

}

}

If(id2>0)

{

StopTimer(id1);

StopTimer(id2);

ReStart(False);

}

}


您看一下这样是否能重启,且同时减少同时间订阅量呢