以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  [求助]图表和后台代码一样,可结果不一样  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=84066)

--  作者:jason123
--  发布时间:2015/8/17 10:11:18
--  [求助]图表和后台代码一样,可结果不一样
1今天8月17日开盘
图表的代码BUYSHORT(1,B04,LIMITR,A01,1),ignorecheckprice;  //开空  结果8375开空成功
后台的代码 TBUYSHORT((TISREMAIN(0)=0),B04,LMT,A01,0,AC,PZ);  结果在8264报单 限价 8267成交

图表的代码BUY(1,B04,LIMITR,A01,1),ignorecheckprice;  //开多
BUYSHORT(1,B04,LIMITR,A01,1),ignorecheckprice;  //开空

图表8256平空开多,后台没有信号
后台代码TSELL((TISREMAIN(0)=0),B04,LMT,A02,0,AC,PZ);
TBUYSHORT((TISREMAIN(0)=0),B04,LMT,A01,0,AC,PZ);

3 另外后台的止损代码没有信号,代码如下
{平空止损}
IF (HIGH-TAVGENTERPRICEEX(AC,PZ)>=ZSJJ AND HIGH-TAVGENTERPRICEEX(AC,PZ)<ZSJX)  THEN BEGIN
  //空损:=SELLSHORT(1,B04,LIMITR,A01+ZSDS,1);
  if Islastbar then
begin
DEBUGFILE(\'D:\\TEST500.TXT\',\'   成本价:\'&numtostr(ENTERPRICE,2)&\'   浮动盈亏:\'&numtostr(TOPENPROFIT,2)&\'   亏损次数:\'&numtostr(TNUMLOSSTRADE,0)&\'   资产:\'&numtostr(TASSET,3)&\'   盈利次数:\'&numtostr(TNUMWINTRADE,0)&\'  交易胜率:\'&numtostr(TPERCENTWIN,2)&\'   最大连亏金额:\'&numtostr(TSEQLOSS,2)&\'   最大连盈金额:\'&numtostr(TSEQWIN,2)&\'   HIGH:\'&numtostr(HIGH,2)&\'   B01:\'&numtostr(B01,0)&\'   TISREMAIN:\'&numtostr(TISREMAIN(0),0)&\'   THOLDING2:\'&numtostr(THOLDING2,0),0); 
end
   空损:=TSELLSHORT((TISREMAIN(0)=0),B04,LMT,A01+ZSDS,0,AC,PZ);
  A43:=0;//多空开关
  A15:=0;//S开关
  JGD:=A46;
  LONG1:=(HIGH >= JGD);
 END{平空止损}
 {平空止损极限}
 IF HIGH-TAVGENTERPRICEEX(AC,PZ)>=ZSJX THEN BEGIN
   if Islastbar then
begin
DEBUGFILE(\'D:\\TEST500.TXT\',\'   成本价:\'&numtostr(ENTERPRICE,2)&\'   浮动盈亏:\'&numtostr(TOPENPROFIT,2)&\'   亏损次数:\'&numtostr(TNUMLOSSTRADE,0)&\'   资产:\'&numtostr(TASSET,3)&\'   盈利次数:\'&numtostr(TNUMWINTRADE,0)&\'  交易胜率:\'&numtostr(TPERCENTWIN,2)&\'   最大连亏金额:\'&numtostr(TSEQLOSS,2)&\'   最大连盈金额:\'&numtostr(TSEQWIN,2)&\'   HIGH:\'&numtostr(HIGH,2)&\'   B01:\'&numtostr(B01,0)&\'   TISREMAIN:\'&numtostr(TISREMAIN(0),0)&\'   THOLDING2:\'&numtostr(THOLDING2,0),0); 
end
 多损:=TSELLSHORT((TISREMAIN(0)=0),B04,MKT,0,AC,PZ);
 A43:=0;  //多空开关
  A15:=0; //S开关
  JGK:=A47;
  SHORT1:=(LOW <= JGK);  
  END {平空止损极限}

--  作者:十世
--  发布时间:2015/8/17 10:23:38
--  
 

有记录下单日志吗?把日志贴出来看下
交易-》下单设置-》程序化交易里 之前勾选下单日志的会有记录, 日志保存在金字塔安装目录的weisoftstock/setting/orderlog里


--  作者:jason123
--  发布时间:2015/8/17 10:30:38
--  
2015-08-17 10:16:24.741    【后台】IC08 TSell 第 202 行出现信号
2015-08-17 10:16:24.741    【后台】IC08 TSell 已成功触发下单操作 价格:8342.933594 数量:1 类型:0 账户:604811 品种:IC08
2015-08-17 10:16:24.741    【后台】多账户及策略系数 委托账户或者组: 604811
2015-08-17 10:16:24.741    【后台】CTP登录账户 0 个
2015-08-17 10:16:24.741    【后台】金仕达登录账户 0 个
2015-08-17 10:16:24.741    【后台】恒生登录账户 0 个
2015-08-17 10:16:24.741    【后台】子账户 登录账户 0 个
2015-08-17 10:16:24.741    【后台】扩展接口 登录账户 1 个
2015-08-17 10:16:24.741    【后台】 分帐户 604811 下单
2015-08-17 10:16:24.741    【后台】账户 604811 下单系数为1.000000 
2015-08-17 10:16:24.741    【后台】账户 604811 下单,系数调整后下单量:1 
2015-08-17 10:16:24.741    【后台】实际账户 604811 持仓 0
2015-08-17 10:16:24.741    【后台】IC08 TSell 第 211 行出现信号
2015-08-17 10:16:24.741    【后台】IC08 TSell 已成功触发下单操作 价格:8342.933594 数量:1 类型:0 账户:604811 品种:IC08
2015-08-17 10:16:24.741    【后台】多账户及策略系数 委托账户或者组: 604811
2015-08-17 10:16:24.741    【后台】CTP登录账户 0 个
2015-08-17 10:16:24.741    【后台】金仕达登录账户 0 个
2015-08-17 10:16:24.741    【后台】恒生登录账户 0 个
2015-08-17 10:16:24.757    【后台】子账户 登录账户 0 个
2015-08-17 10:16:24.757    【后台】扩展接口 登录账户 1 个
2015-08-17 10:16:24.757    【后台】 分帐户 604811 下单
2015-08-17 10:16:24.757    【后台】账户 604811 下单系数为1.000000 
2015-08-17 10:16:24.757    【后台】账户 604811 下单,系数调整后下单量:1 
2015-08-17 10:16:24.757    【后台】实际账户 604811 持仓 0
2015-08-17 10:16:24.757    【后台】IC08 TBuyShort 第 212 行出现信号
2015-08-17 10:16:24.757    【后台】IC08 TBuyShort 已成功触发下单操作 价格:8342.933594 数量:1 类型:0 账户:604811 品种:IC08
2015-08-17 10:16:24.757    【后台】多账户及策略系数 委托账户或者组: 604811
2015-08-17 10:16:24.757    【后台】CTP登录账户 0 个
2015-08-17 10:16:24.757    【后台】金仕达登录账户 0 个
2015-08-17 10:16:24.757    【后台】恒生登录账户 0 个
2015-08-17 10:16:24.757    【后台】子账户 登录账户 0 个
2015-08-17 10:16:24.757    【后台】扩展接口 登录账户 1 个
2015-08-17 10:16:24.757    【后台】 分帐户 604811 下单
2015-08-17 10:16:24.757    【后台】账户 604811 下单系数为1.000000 
2015-08-17 10:16:24.757    【后台】账户 604811 下单,系数调整后下单量:1 
2015-08-17 10:16:24.757    【后台】下单已发送
2015-08-17 10:16:24.757    【后台】IC08 运行结束
2015-08-17 10:16:24.757    【下单】IC08 价8342.933594 量1 买卖1 类型0 开平0 账户604811 Formula 1
2015-08-17 10:16:24.788    【后台】IC08 运行结束
2015-08-17 10:16:24.804    【指令】收到回报指令 ID = -2126451151
2015-08-17 10:16:24.819    【回报】604811 : IC1508 - 已报单 1 价格:8343.0 开 卖
2015-08-17 10:16:24.819    【指令】收到回报指令 ID = -2126451151
2015-08-17 10:16:25.209    【后台】IC08 运行结束
2015-08-17 10:16:25.209    【指令】收到回报指令 ID = -2126451151
2015-08-17 10:16:25.209    【指令】收到成交回报指令 ORDERID = -2126451151
2015-08-17 10:16:25.209    【回报】604811 : IC1508 - 已成交 1 价格:8343.0 开 卖
2015-08-17 10:16:25.209    【回报】604811 : IC1508 - 全部成交 1
2015-08-17 10:16:25.299    【后台】IC08 运行结束

--  作者:jason123
--  发布时间:2015/8/17 10:31:08
--  
015-08-17 10:20:51.305    【后台】IC08 TSell 第 202 行出现信号
2015-08-17 10:20:51.305    【后台】IC08 TSell 已成功触发下单操作 价格:8330.567383 数量:1 类型:0 账户:604811 品种:IC08
2015-08-17 10:20:51.305    【后台】多账户及策略系数 委托账户或者组: 604811
2015-08-17 10:20:51.305    【后台】CTP登录账户 0 个
2015-08-17 10:20:51.305    【后台】金仕达登录账户 0 个
2015-08-17 10:20:51.305    【后台】恒生登录账户 0 个
2015-08-17 10:20:51.305    【后台】子账户 登录账户 0 个
2015-08-17 10:20:51.305    【后台】扩展接口 登录账户 1 个
2015-08-17 10:20:51.305    【后台】 分帐户 604811 下单
2015-08-17 10:20:51.305    【后台】账户 604811 下单系数为1.000000 
2015-08-17 10:20:51.321    【后台】账户 604811 下单,系数调整后下单量:1 
2015-08-17 10:20:51.321    【后台】实际账户 604811 持仓 0
2015-08-17 10:20:51.321    【后台】IC08 TBuyShort 第 211 行出现信号
2015-08-17 10:20:51.321    【后台】IC08 TBuyShort 已成功触发下单操作 价格:8330.567383 数量:1 类型:0 账户:604811 品种:IC08
2015-08-17 10:20:51.321    【后台】多账户及策略系数 委托账户或者组: 604811
2015-08-17 10:20:51.321    【后台】CTP登录账户 0 个
2015-08-17 10:20:51.321    【后台】金仕达登录账户 0 个
2015-08-17 10:20:51.321    【后台】恒生登录账户 0 个
2015-08-17 10:20:51.321    【后台】子账户 登录账户 0 个
2015-08-17 10:20:51.321    【后台】扩展接口 登录账户 1 个
2015-08-17 10:20:51.321    【后台】 分帐户 604811 下单
2015-08-17 10:20:51.321    【后台】账户 604811 下单系数为1.000000 
2015-08-17 10:20:51.321    【后台】账户 604811 下单,系数调整后下单量:1 
2015-08-17 10:20:51.321    【后台】下单已发送
2015-08-17 10:20:51.321    【后台】IC08 运行结束
2015-08-17 10:20:51.321    【下单】IC08 价8330.567383 量1 买卖1 类型0 开平0 账户604811 Formula 1
2015-08-17 10:20:51.321    【后台】IC08 运行结束
2015-08-17 10:20:51.368    【指令】收到回报指令 ID = -2126451150
2015-08-17 10:20:51.383    【回报】604811 : IC1508 - 已报单 1 价格:8330.6 开 卖
2015-08-17 10:20:51.383    【指令】收到回报指令 ID = -2126451150

--  作者:jason123
--  发布时间:2015/8/17 10:31:37
--  
2015-08-17 10:21:03.131    【指令】收到回报指令 ID = -2126451150
2015-08-17 10:21:03.131    【指令】收到成交回报指令 ORDERID = -2126451150
2015-08-17 10:21:03.162    【回报】604811 : IC1508 - 已成交 1 价格:8332.8 开 卖
2015-08-17 10:21:03.162    【回报】604811 : IC1508 - 全部成交 1

--  作者:jason123
--  发布时间:2015/8/17 10:32:09
--  
2015-08-17 10:30:05.279    【后台】IC08 TSell 第 202 行出现信号
2015-08-17 10:30:05.279    【后台】IC08 TSell 已成功触发下单操作 价格:8314.666992 数量:1 类型:0 账户:604811 品种:IC08
2015-08-17 10:30:05.279    【后台】多账户及策略系数 委托账户或者组: 604811
2015-08-17 10:30:05.279    【后台】CTP登录账户 0 个
2015-08-17 10:30:05.279    【后台】金仕达登录账户 0 个
2015-08-17 10:30:05.279    【后台】恒生登录账户 0 个
2015-08-17 10:30:05.279    【后台】子账户 登录账户 0 个
2015-08-17 10:30:05.279    【后台】扩展接口 登录账户 1 个
2015-08-17 10:30:05.279    【后台】 分帐户 604811 下单
2015-08-17 10:30:05.295    【后台】账户 604811 下单系数为1.000000 
2015-08-17 10:30:05.295    【后台】账户 604811 下单,系数调整后下单量:1 
2015-08-17 10:30:05.295    【后台】实际账户 604811 持仓 0
2015-08-17 10:30:05.295    【后台】IC08 TBuyShort 第 211 行出现信号
2015-08-17 10:30:05.295    【后台】IC08 TBuyShort 已成功触发下单操作 价格:8314.666992 数量:1 类型:0 账户:604811 品种:IC08
2015-08-17 10:30:05.295    【后台】多账户及策略系数 委托账户或者组: 604811
2015-08-17 10:30:05.295    【后台】CTP登录账户 0 个
2015-08-17 10:30:05.295    【后台】金仕达登录账户 0 个
2015-08-17 10:30:05.295    【后台】恒生登录账户 0 个
2015-08-17 10:30:05.295    【后台】子账户 登录账户 0 个
2015-08-17 10:30:05.295    【后台】扩展接口 登录账户 1 个
2015-08-17 10:30:05.295    【后台】 分帐户 604811 下单
2015-08-17 10:30:05.295    【后台】账户 604811 下单系数为1.000000 
2015-08-17 10:30:05.295    【后台】账户 604811 下单,系数调整后下单量:1 
2015-08-17 10:30:05.295    【后台】下单已发送
2015-08-17 10:30:05.295    【后台】IC08 运行结束
2015-08-17 10:30:05.295    【下单】IC08 价8314.666992 量1 买卖1 类型0 开平0 账户604811 Formula 1
2015-08-17 10:30:05.342    【指令】收到回报指令 ID = -2126451149
2015-08-17 10:30:05.357    【回报】604811 : IC1508 - 已报单 1 价格:8314.6 开 卖
2015-08-17 10:30:05.357    【指令】收到回报指令 ID = -2126451149
2015-08-17 10:30:05.792    【后台】IC08 运行结束
2015-08-17 10:30:05.882    【后台】IC08 运行结束
2015-08-17 10:30:06.294    【后台】IC08 运行结束
2015-08-17 10:30:06.388    【后台】IC08 运行结束
2015-08-17 10:30:06.809    【后台】IC08 运行结束
2015-08-17 10:30:06.887    【后台】IC08 运行结束
2015-08-17 10:30:07.324    【后台】IC08 运行结束
2015-08-17 10:30:07.386    【后台】IC08 运行结束
2015-08-17 10:30:07.823    【后台】IC08 运行结束
2015-08-17 10:30:07.870    【后台】IC08 运行结束
2015-08-17 10:30:08.338    【后台】IC08 运行结束
2015-08-17 10:30:08.369    【后台】IC08 运行结束
2015-08-17 10:30:08.822    【后台】IC08 运行结束
2015-08-17 10:30:08.862    【后台】IC08 运行结束
2015-08-17 10:30:09.350    【后台】IC08 运行结束
2015-08-17 10:30:09.850    【后台】IC08 运行结束
2015-08-17 10:30:10.162    【指令】收到回报指令 ID = -2126451149
2015-08-17 10:30:10.177    【指令】收到成交回报指令 ORDERID = -2126451149
2015-08-17 10:30:10.193    【回报】604811 : IC1508 - 已成交 1 价格:8316.2 开 卖
2015-08-17 10:30:10.193    【回报】604811 : IC1508 - 全部成交 1
2015-08-17 10:30:10.353    【后台】IC08 运行结束

--  作者:jason123
--  发布时间:2015/8/17 10:33:09
--  
后台代码出不了 平空做多的信号
止损的信号也没有发出

--  作者:十世
--  发布时间:2015/8/17 10:40:14
--  

1、你这贴出的日志,和你第一个问题的根本不是一段时间的内容,另外你可以整理一下说明图表什么时间的报单,后台什么时间的报单。这样贴出的日志对分析问题没有帮助。

2、后台的信号没有发出,你自己用debugfile输出看看是什么条件不满足导致的,把代码中无关紧要的先精简一下,然后调试看看。


--  作者:jason123
--  发布时间:2015/8/17 10:44:01
--  
2015-08-17 09:14:35.868    【后台】 启动后台程式化交易
2015-08-17 09:16:44.726    【后台】IC08 运行结束
2015-08-17 09:16:44.773    【后台】IC08 TBuyShort 第 172 行出现信号
2015-08-17 09:16:44.773    【后台】IC08 TBuyShort 已成功触发下单操作 价格:8264.599609 数量:1 类型:0 账户:604811 品种:IC08
2015-08-17 09:16:44.773    【后台】多账户及策略系数 委托账户或者组: 604811
2015-08-17 09:16:44.773    【后台】CTP登录账户 0 个
2015-08-17 09:16:44.773    【后台】金仕达登录账户 0 个
2015-08-17 09:16:44.773    【后台】恒生登录账户 0 个
2015-08-17 09:16:44.773    【后台】子账户 登录账户 0 个
2015-08-17 09:16:44.773    【后台】扩展接口 登录账户 1 个
2015-08-17 09:16:44.773    【后台】 分帐户 604811 下单
2015-08-17 09:16:44.789    【后台】账户 604811 下单系数为1.000000 
2015-08-17 09:16:44.789    【后台】账户 604811 下单,系数调整后下单量:1 
2015-08-17 09:16:44.789    【后台】下单已发送
2015-08-17 09:16:44.789    【下单】IC08 价8264.599609 量1 买卖1 类型0 开平0 账户604811 Formula 1
2015-08-17 09:16:44.789    【后台】IC08 运行结束
2015-08-17 09:16:44.804    【后台】IC08 运行结束
2015-08-17 09:16:44.835    【指令】收到回报指令 ID = -2126451155
2015-08-17 09:16:44.835    【回报】604811 : IC1508 - 已报单 1 价格:8264.6 开 卖
2015-08-17 09:16:44.835    【指令】收到回报指令 ID = -2126451155

2015-08-17 09:17:08.736    【指令】收到回报指令 ID = -2126451155
2015-08-17 09:17:08.751    【指令】收到成交回报指令 ORDERID = -2126451155
2015-08-17 09:17:08.783    【回报】604811 : IC1508 - 已成交 1 价格:8267.2 开 卖
2015-08-17 09:17:08.783    【回报】604811 : IC1508 - 全部成交 1

图表是9点16分  8375报单的

--  作者:FexTel
--  发布时间:2015/8/17 10:46:51
--  

1,图表转后台用户要经过调试的,并不是说一些具体的函数变化就可以了哦

另外后台出现不了信号,你通过DEBUGFILE或者DEBUGOUT输出下相应的开仓变量,是不是都是有值的

 

2,上面止损代码没触发,你看下是不是TAVGENTERPRICEEX(AC,PZ)取值有问题,debugfile输出下

 

  代码问题用户一定要自行学会自我调试