以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2) ---- [求助]改了止损代码,反而乱了 (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=84167) |
-- 作者:jason123 -- 发布时间:2015/8/19 11:35:01 -- [求助]改了止损代码,反而乱了 debugfile输出如下 2015-08-19 11:07:26.825 平空条件:7659.60 A00:0 KTLC:7681.78 SHORTX1:0 SHORT:1 A14:0 LONG1:0 THOLDING:1 B01:0 TISREMAIN:0 THOLDING2:1 A43:-1 B02:1 A15:0 A14:0 A15:0 A43是Tbuyshort 开空后标记为负的,可现在 THOLDING:1 A43:-1 乱了 出现这个问题是因为今天早上我修改了止损代码,以下是开多后止损代码 IF (Tholding>0) AND(TAVGENTERPRICEEX(AC,PZ)-DYNAINFO(7)>=ZSJJ) AND (TAVGENTERPRICEEX(AC,PZ)-DYNAINFO(7)<ZSJX) 增加了 Tholding>0,因为原来在开多报单后,没有成交的情况下TAVGENTERPRICEEX(AC,PZ)=0,所以触发止损的条件乱了,早上想加上Tholding>0,确保在有成交的情况下 才触发止损,谁知,这样一来,原来的多空操作信息都乱了,求教解决的方法??? |
-- 作者:yukizzc -- 发布时间:2015/8/19 13:23:25 -- 不需要加tholding>0这个条件的,你之前的问题是止损条件成立然后去撤单操作,你那个代码根本不是止损。
下面是你之前的代码,tcancelex是撤单,不是平仓 IF (DYNAINFO(7)-TAVGENTERPRICEEX(AC,PZ)>=ZSJJ AND DYNAINFO(7)-TAVGENTERPRICEEX(AC,PZ)<ZSJX) THEN BEGIN
//空损:=SELLSHORT(1,B04,LIMITR,TAVGENTERPRICEEX(AC,PZ)+ZSDS,1);
TCANCELEX(1,0,AC,PZ);
|