我的下单方法是这样的,由理论持仓和实际持仓的差额来下单(多退少补),比如 理论持仓是多单10手,而实际持仓是8手多单,则开仓2手;如果实际持仓是-5手,则平空5手,再开多10手。
原理简单。这种下单方法也很实用。
但有一个关键,就是必须能够正确地获取到账户里的持仓呀,如果获取到的持仓是错误,下单动作自然就会“乱来了”
而用户要求软件平台能够正确地获取持仓,这样不过分吧
以往有发现获取持仓错误。所以一直加了debugfile语句用来监控
监控语句如下:
buyhold:=tbuyholdingex('200000',stklabel,1);
sellhold:=tsellholdingex('200000',stklabel,1);
acc:=buyhold>-0.5 and sellhold>-0.5;//这里和-0.5比较是因为担心精度问题,反正只要大于-0.5就是0或者1,不会出现“-0.6”
wt:=tremainqty(0,200000,stklabel);
if not(acc) then debugfile('D:\200000.txt',numtostr(cc200000,0)+' 错误 '+numtostr(buyhold,0)+' '+numtostr(sellhold,0)+' %.0f',wt);//发现buyhold 或者sellhold出现负数,则输出记录
结果的记录如下:
也就是buyhold的结果是 -5
求老大了,抽点时间查查此问题吧,至少有12+个专业版用户期盼着呢,未来还会更多
现在这个问题解决了没有?
求自动持仓同步的代码