后台程序日内交易中,需要统计账户当前品种的日内累计开仓量(多头+空头),请帮助给出代码,谢谢。
if 持仓判断 and 开多条件 then begin
extgbdataset('kd',开多手数+extgbdata('kd'));
tbuy(1,开多手数,mkt);
end
if 持仓判断 and 开空条件 then begin
extgbdataset('kk',开空手数+extgbdata('kk'));
tbuyshort(1,开空手数,mkt);
end
if time=closetime(0) then begin
extgbdataset('kk',0);
extgbdataset('kd',0);
end
extgbdata('kd')为一天的开多总量
extgbdata('kk')为一天的开空总量
谢谢,下周我试试。
金老师,我昨天把你‘2楼’给出的代码,加到模型中,并在末尾加了msgout输出,测试结果没有开仓数量输出显示,麻烦你看看,问题出在哪里?请指正。谢谢!
KD:=extgbdataset('KD',zss+extgbdata('KD'));
KK:=extgbdataset('KK',zss+extgbdata('KK'));
//
msgout(islastbar,'开多仓数量='+numtostr(KD,0));
msgout(islastbar,'开空仓数量='+numtostr(KK,0));
2016/12/06 09:16:13 开多仓数量=32033
2016/12/06 09:16:13 开空仓数量=32036
金老师,输出的数据量太大!1分钟周期的日内交易,最多开仓量也就是几十手啊?
你的持仓判断是怎么写的?
你先去工具 数据 全局变量这里,清空下全局变量,这个是会叠加昨天的数据
if time=closetime(0) then begin
extgbdataset('kk',0);
extgbdataset('kd',0);
end
这段代码是我之前就写的,目的是在收盘时清空全局变量,不知道你在收盘时有没有运行