| 

 等级: 标准版 
注册: 2023-6-14曾用名:  | 
 
| 问题①:计算测试段内,每次平仓>=0.002的次数,修改了很多次,也计算不正确,请老师看看,我代码是哪里出问题了呢? 问题②:代码中,全局变量设定,VARIABLE:开仓价=0,平仓价=0,多单笔盈利率=0,空单笔盈利率=0,大于=0,小于=0,多成功次=0,空成功次=0;(我是把凡是涉及的变量全部都设成了全局变量,这样对不对呢?)
 问题③:代码中,if语句中套用if,我的写法对不对?
 全部代码如下,请老师改正下,谢谢!!
 
 INPUT:NMIN(10,1,100,1);
 
 
 //系统代码举例(可更换其他系统)
 ma5:MA(c,5);
 ma10:MA(C,10);
 ma30:MA(c,30);
 
 
 //交易条件
 开多条件:CROSS(ma5,ma30)and holding=0;
 开空条件:CROSS(ma30,ma5)and holding=0;
 
 
 收盘平仓:=TIME>=CLOSETIME(0)-NMIN*100;//收盘平仓
 
 
 平多条件:(CROSS(ma5,ma10) OR 收盘平仓)and holding=1,COLORWHITE;
 平空条件:(CROSS(ma5,ma10) OR 收盘平仓)and holding=-1;
 
 
 //平多条件:CROSS(ma5,ma10) and holding=1;
 //平空条件:CROSS(ma5,ma10) and holding=-1;
 
 
 
 
 //交易系统
 开多:BUY(开多条件 ,1,MARKET);
 开空:BUYSHORT(开空条件,1,MARKET);
 
 
 平多:SELL(平多条件,1,MARKET);
 平空:SELLSHORT(平空条件,1,MARKET);
 
 
 //平仓大于2%次数
 VARIABLE:开仓价=0,平仓价=0,多单笔盈利率=0,空单笔盈利率=0,大于=0,小于=0,多成功次=0,空成功次=0;
 
 
 开仓价:=ENTERPRICE;
 平仓价:=EXITPRICE;
 多单笔盈利率:=(平仓价-开仓价)/开仓价;
 空单笔盈利率:=(开仓价-平仓价)/开仓价;
 
 
 
 
 多大于:=多单笔盈利率>=0.002 ;
 空大于:=空单笔盈利率>=0.002 ;
 
 
 
 
 IF  平多条件 and holding=0  THEN
 BEGIN
 if 多大于 THEN
 BEGIN
 多成功次:=多成功次+1;
 END
 END
 
 
 IF  平空条件 and holding=0  THEN
 BEGIN
 if 空大于 THEN
 BEGIN
 空成功次:=空成功次+1;
 END
 END
 
 
 总成功次:=多成功次+空成功次;
 
 
 //输出
 多单笔盈利率1:多单笔盈利率;
 空单笔盈利率1:空单笔盈利率;
 多成功次1:多成功次;
 空成功次1:空成功次;
 总成功次1:空成功次;
 
 
 AddTestReport('多成功次',多成功次);
 AddTestReport('空成功次',空成功次);
 AddTestReport('总成功次',总成功次);
 
 
 
 
 
 
 | 
 
x本帖子中包含更多资源您需要 登录 才可以下载或查看,没有帐号?  
  |