本帖最后由 资深技术05 于 2026-2-3 15:40 编辑
可以考虑利用tholdcount 函数读取账户栏的持仓品种。
然后使用全局变量设置一个锁。这个锁是这样的,如果发现 tholdcount达到10了,这个锁就锁上。之后只有账号持仓品种数量为0 时候才解锁。
有锁的时候不开仓,即可。 理论上 这样应该是可以控制住的。
[PEL] 复制代码
//持仓品种大于10 直接锁定住
if tholdcount('')>= 10 then extgbdataset('lock',1);
if tholdcount('')= 0 then extgbdataset('lock',0);
lock:extgbdata('lock');
IF lock=0 AND 开仓条件 then
begin
//开仓语句
END
下单的10个品种,建议先走股票池筛选出来,再进行下单。如果直接监控50个品种,可能由于账户数据更新时间差的缘故,导致你最终开仓超过10个品种,尤其是信号是同一时间触发情况下。 读持仓的函数更新是和柜台回报关联,必然存在物理意义上的延迟,本地执行程序速度是快于这个时间的。 |