请帮忙看一下这段程序有啥问题
ZJ:=“IF04”; //指定的交易品种
AC:=“801005”; //模拟账号
DC:=TBUYHOLDINGEX('AC','ZJ',1);//取模拟账号中IF04的多单持仓数
CK:=TSELLHOLDINGEX('AC','ZJ',1);//取模拟账号中IF04的空单持仓数
if DC=0 AND CK=0 then// 没有持仓数据
begin
TBUY(条件多,1,MKT,0,0,'AC','ZJ');//交易系统之开多操作,买多IF041手
TBUYSHORT(条件空,1,MKT,0,0,'AC','ZJ'); //交易系统之开空操作,卖空IF041手
end
if 条件多单止盈止损时 then
begin
TSELL(DC>0 ,1,MKT,0,0,'AC','ZJ'); //交易系统之平多操作
end
if 条件空单止盈止损时 then
begin
TSELLSHORT(CK>0 ,1,MKT,0,0,'AC','ZJ'); //交易系统之平空操作
end
这是后台程序化交易,确认你的交易方式是否正确
建议参考 http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=332 问题4,学习一些基本的后台程序化调试技巧。如果你觉得使用调试有困难,那么请你先从图表的简单交易方式开始学习使用金字塔软件
你说您的交易条件出问题了,可是你的交易条件都没给出啊
ZJ:=“IF04”; //指定的交易品种
AC:=“801005”; //模拟账号
DC:=TBUYHOLDINGEX('AC','ZJ',1);//取模拟账号中IF04的多单持仓数
CK:=TSELLHOLDINGEX('AC','ZJ',1);//取模拟账号中IF04的空单持仓数
这里代码就有问题,TBUYHOLDINGEX('AC','ZJ',1)和TSELLHOLDINGEX('AC','ZJ',1);两句中AC、ZJ都应该是变量,可是你却用引号括起来了,这样他就是一个字符串了,而不是变量,把引号去掉看看吧。
ZJ:="IF04";
AC:="801005";
两句的双引号要改为单引号。
[此贴子已经被作者于2012-3-30 17:19:33编辑过]
发现了一个低级错误,把模拟账号弄错了。我把ZJ和AC2个变量取消
DC:=TBUYHOLDINGEX('801005’,'IF04',1);//取模拟账号中IF04的多单持仓数
CK:=TSELLHOLDINGEX('801005','IIF04',1);//取模拟账号中IF04的空单持仓数
这样对了吗?
谢谢楼上的各位。