以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- for 循环后编译通不过,怎么解决? (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=50322) |
-- 作者:kingovern -- 发布时间:2013/3/27 13:20:56 -- for 循环后编译通不过,怎么解决? INPUT: rolltime(55),maxwin(35),maxlose(-14); VARIABLE:var0=0; var0 = 0; for BarBackNo = rolltime downto 1 do begin if C[rolltime-BarBackNo]>C[rolltime-BarBackNo+1] THEN var0:=var0+C[rolltime-BarBackNo]; else var0:=var0-C[rolltime-BarBackNo]; END KD:= var0>0 and TIME>092000 and TIME<143900; //开多条件 PD:=C-ENTERPRICE>maxwin or C-ENTERPRICE<maxlose or TIME>145900; //平多条件 KK:= var0<0 and TIME>092000 and TIME<143900; //开空条件 PK:=ENTERPRICE-C>maxwin or ENTERPRICE-C<maxlose or TIME>145900; //平空条件 平空:SELLSHORT(PK,1,THISCLOSE); //平空信号 开多:BUY(KD AND HOLDING=0,1,THISCLOSE); //开多信号 平多:SELL(PD,1,THISCLOSE); //平多信号 开空:BUYSHORT(KK AND HOLDING=0,1,THISCLOSE); //开空信号 { 信号语句排列规则——先平后开 “费率设置”按钮——用于合理设置模型“费率”,以便在图形上正确输出如下帐户信息: 持仓:holding,linethick0; 资产:asset,noaxis; 可用现金:cash(0),linethick0; } |
-- 作者:jinzhe -- 发布时间:2013/3/27 13:22:37 -- 编译了一下,可以通过 |
-- 作者:kingovern -- 发布时间:2013/3/27 13:26:06 -- C[0]就是等于C吗? |
-- 作者:kingovern -- 发布时间:2013/3/27 13:27:20 -- 测试的说数组越界操作 |
-- 作者:admin -- 发布时间:2013/3/27 15:15:07 -- 为了避免产生混淆,金字塔的在数组的使用上继承了编程语言的模式,而没有使用TS的模式。 编程语言上的数组的定义为 CLOSE[1]则是K线图上第一个数据,当前K线数据应该使用 CLOSE[BARPOS];
更多数组的使用方法请参考
金字塔数组使用的高级编程技巧 http://www.weistock.com/bbs/dispbbs.asp?BoardID=10&ID=30380&replyID=&skin=1 |