欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → [求助]这样的代码逻辑会错吗?

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有2670人关注过本帖树形打印复制链接

主题:[求助]这样的代码逻辑会错吗?

帅哥哟,离线,有人找我吗?
jason123
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:246 积分:0 威望:0 精华:0 注册:2015/7/20 9:05:58
[求助]这样的代码逻辑会错吗?  发帖心情 Post By:2015/8/24 14:11:51    Post IP:125.91.29.202[显示全部帖子]

代码如下
 {没有仓位}
if A43=0 and 多信号 then begin
TBUY((TBUYHOLDINGEX(AC,PZ,1)=0 AND (TSELLHOLDINGEX(AC,PZ,1) = 0)),B04,LMT,A01,0,AC,PZ); 
A43:=1;
END 

if A43=0 and 空信号 then begin
TBUYSHORT((TBUYHOLDINGEX(AC,PZ,1)=0 AND (TSELLHOLDINGEX(AC,PZ,1) = 0)),B04,LMT,A01,0,AC,PZ); 
A43:=-1;
END 
{有买持仓位}
if A43:=1   then begin
TCANCELEX(1,2,AC,PZ);//取消未成交的平多单
TCANCELEX(1,3,AC,PZ);//取消未成交的开空单

{如有没有平仓的空单,止损50个点}
IF (TSELLHOLDINGEX(AC,PZ,1)>0 AND (DYNAINFO(7)-TAVGENTERPRICEEX2(AC,PZ,1)>=ZSDS))then BEGIN
TSELLSHORT(1,TSELLHOLDINGEX(AC,PZ,1),MKT,0,0,AC,PZ);
END{如有没有平仓的空单,全部取消}

if 平多信号 then begin
TSELL(1,TBUYHOLDINGEX(AC,PZ,2),LMT,A02,0,AC,PZ);
A43:=0;
END

if 开空信号 then begin
TBUYSHORT((TBUYHOLDINGEX(AC,PZ,1)>=0),B04,LMT,A01,0,AC,PZ);
A43:=-(1)
END

END

{有卖持仓位}
if A43:=-1   then begin
TCANCELEX(1,4,AC,PZ);//取消未成交平空单
TCANCELEX(1,1,AC,PZ);//取消未成交开多单


{如有没有平仓的多单,止损50个点}
IF (TBUYHOLDINGEX(AC,PZ,1)>0 AND (TAVGENTERPRICEEX2(AC,PZ,0)-DYNAINFO(7)>=ZSDS))then BEGIN
TSELL(1,TBUYHOLDINGEX(AC,PZ,1),MKT,0,0,AC,PZ);
END{如有没有平仓的多单,止损50个点}

if 平空信号 then begin
TSELLSHORT(1,TSELLHOLDINGEX(AC,PZ,2),LMT,A02,0,AC,PZ);
A43=0;
END

if 开多信号 then begin
TBUY((TSELLHOLDINGEX(AC,PZ,1)>=0),B04,LMT,A01,0,AC,PZ);
A43:=1;
END

END



 回到顶部
帅哥哟,离线,有人找我吗?
jason123
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:246 积分:0 威望:0 精华:0 注册:2015/7/20 9:05:58
  发帖心情 Post By:2015/8/24 14:22:15    Post IP:125.91.29.202[显示全部帖子]

实际运行后,老是报单后,马上又被撤单了,日志如下
2015-08-24 13:42:35.660    【下单】实际持仓为0下单失败
2015-08-24 13:42:35.661    【下单】IC09 价6527.566406 量1 买卖0 类型0 开平0 账户512810491 Formula 1
2015-08-24 13:42:35.661    【下单】确认报单已发送 ID=-1568729433 RefID = 460
2015-08-24 13:42:35.706    【指令】收到回报指令 ID = -1568729433 RefID = 460
2015-08-24 13:42:35.723    【回报】512810491 : IC1509 - 已报单 1 价格:6527.6 开 买
2015-08-24 13:42:35.748    【指令】收到回报指令 ID = -1568729433 RefID = 460
2015-08-24 13:42:36.021    【后台】IC09 TCANCELEX 出现信号 类型:4 帐号:512810491
2015-08-24 13:42:36.022    【后台】IC09 TCANCELEX 出现信号 类型:1 帐号:512810491
2015-08-24 13:42:36.027    【后台】IC09 运行结束
2015-08-24 13:42:36.028    【后台】IF09 运行结束
2015-08-24 13:42:36.041    【指令】收到回报指令 ID = -1568729433 RefID = 460
2015-08-24 13:42:36.078    【指令】收到回报指令 ID = -1568729433 RefID = 460
2015-08-24 13:42:36.089    【回报】512810491 : IC1509 - 已撤单 量:1
2015-08-24 13:42:36.161    【后台】IC09 TCANCELEX 出现信号 类型:4 帐号:512810491
2015-08-24 13:42:36.162    【后台】IC09 TCANCELEX 出现信号 类型:1 帐号:512810491

 回到顶部
帅哥哟,离线,有人找我吗?
jason123
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:246 积分:0 威望:0 精华:0 注册:2015/7/20 9:05:58
  发帖心情 Post By:2015/8/24 14:23:15    Post IP:125.91.29.202[显示全部帖子]

debugfile 输出如下

2015-08-24 13:42:36.021       做空信号DYNAINFO(7):6534.60   A00:0   TAVGENTERPRICEEX2(AC,PZ,0):0.00   TENTERPRICE:-1.#R  SHORT:0   A14:0   LONG:1   TREMAINQTY(4,AC,PZ):0   B01:1   TBUYHOLDINGEX(AC,PZ,2):0   TSELLHOLDINGEX(AC,PZ,1):0   A43:-1   B02:0   A15:0   A14:0   A15:0
2015-08-24 13:42:36.022       多单止损前:6534.60   TBUYHOLDINGEX(AC1,PZ,1):0   TSELLHOLDINGEX(AC,PZ,1):0.00   A02:6547.03  SHORT:0   A14:0   LOW:6523.60   THOLDING:0   B01:1   TISREMAIN:1   THOLDING2:0   A43:-1   B02:0   A15:0   A14:0   A15:0
2015-08-24 13:42:36.023       空后平空:6534.60   SHORTX1:1   TSELLHOLDINGEX(AC,PZ,2):0.00   A02:6527.57  SHORT:0   A14:0   LOW:6523.60   THOLDING:0   B01:1   TISREMAIN:1   THOLDING2:0   A43:-1   B02:0   A15:0   A14:0   A15:0

 回到顶部
帅哥哟,离线,有人找我吗?
jason123
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:246 积分:0 威望:0 精华:0 注册:2015/7/20 9:05:58
  发帖心情 Post By:2015/8/24 14:34:23    Post IP:125.91.29.202[显示全部帖子]

判断 这里我写错了 实际上是 IF (((A43 = 1)   没有冒号的

 回到顶部
帅哥哟,离线,有人找我吗?
jason123
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:246 积分:0 威望:0 精华:0 注册:2015/7/20 9:05:58
  发帖心情 Post By:2015/8/24 14:43:45    Post IP:125.91.29.202[显示全部帖子]

我想达到这个目的
 A43=1 有多信号 TCANCELEX(1,2,AC,PZ);//取消未成交的平多单
TCANCELEX(1,3,AC,PZ);//取消未成交的开空单

而且{如有没有平仓的空单,止损50个点}

 A43=-1 ,有空信号  TCANCELEX(1,4,AC,PZ);//取消未成交平空单
TCANCELEX(1,1,AC,PZ);//取消未成交开多单

而且{如有没有平仓的多单,止损50个点}

 回到顶部
帅哥哟,离线,有人找我吗?
jason123
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:246 积分:0 威望:0 精华:0 注册:2015/7/20 9:05:58
  发帖心情 Post By:2015/8/24 14:49:57    Post IP:125.91.29.202[显示全部帖子]

A43:=  是赋值

A43= 是判断

这些我代码中没有错的


 回到顶部
帅哥哟,离线,有人找我吗?
jason123
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:246 积分:0 威望:0 精华:0 注册:2015/7/20 9:05:58
  发帖心情 Post By:2015/8/24 14:56:20    Post IP:125.91.29.202[显示全部帖子]

这里我写错了,在程序中我是没有错的,然后一直被撤单

 回到顶部
帅哥哟,离线,有人找我吗?
jason123
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:246 积分:0 威望:0 精华:0 注册:2015/7/20 9:05:58
  发帖心情 Post By:2015/8/24 15:09:04    Post IP:125.91.29.202[显示全部帖子]

VARIABLE:A43:=0; 是全局变量,而且在逐K模式下运行的

 回到顶部
帅哥哟,离线,有人找我吗?
jason123
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:246 积分:0 威望:0 精华:0 注册:2015/7/20 9:05:58
  发帖心情 Post By:2015/8/24 15:12:09    Post IP:125.91.29.202[显示全部帖子]

我这个代码是要带多账号的,写if 里面不能带多账号
TBUY((TBUYHOLDINGEX(AC3,PZ,1)=0 AND (TSELLHOLDINGEX(AC3,PZ,1) = 0)),B041,LMT,A01,0,AC3,PZ);
TBUY((TBUYHOLDINGEX(AC4,PZ,1)=0 AND (TSELLHOLDINGEX(AC4,PZ,1) = 0)),B041,LMT,A01,0,AC4,PZ);
TBUY((TBUYHOLDINGEX(AC5,PZ,1)=0 AND (TSELLHOLDINGEX(AC5,PZ,1) = 0)),B041,LMT,A01,0,AC5,PZ);
TBUY((TBUYHOLDINGEX(AC6,PZ,1)=0 AND (TSELLHOLDINGEX(AC6,PZ,1) = 0)),B041,LMT,A01,0,AC6,PZ);

这里我是加了这些的,如果放 if 里面,多账号不能判断了

 回到顶部
帅哥哟,离线,有人找我吗?
jason123
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:246 积分:0 威望:0 精华:0 注册:2015/7/20 9:05:58
  发帖心情 Post By:2015/8/24 15:33:18    Post IP:117.136.39.82[显示全部帖子]

超全局变量的函数是什么呢

 回到顶部
总数 11 1 2 下一页