-- 作者:小气泡
-- 发布时间:2018/5/21 12:12:45
-- 闪灵系统问题
请问, 我把金字塔系统自带的闪灵交易者系统的进出条件改成简单的10、50均线交叉,为什么公式测评就不成交了呢? 改动后的编码如下:
//中间变量 INPUT:N1(9,1,100,1),SS(1,1,100); VARIABLE:该笔盈亏:=0;模拟持仓:=0,模拟开仓价:=0,模拟平仓价:=0,真实系统下单开关:=0; 手数:=SS; //交易条件 开多条件:=CROSS(MA(C,10),MA(C,50)); 开空条件:=CROSS(MA(C,50),MA(C,10)); 平多条件:=CROSS(MA(C,50),MA(C,10)); 平空条件:=CROSS(MA(C,10),MA(C,50));
//交易系统 //模拟交易模块 IF 开多条件 AND 模拟持仓=0 THEN BEGIN 模拟开仓价:=CLOSE;//记录开仓价 模拟持仓:=1;//模拟持仓为1 END IF 平多条件 AND 模拟持仓=1 THEN BEGIN 模拟平仓价:=CLOSE;//记录平仓价 该笔盈亏:=模拟平仓价-模拟开仓价;//在模拟交易模块中我们只需计算上一笔交易是赚还是亏,在这里我只计算盈亏最后的点数 模拟持仓:=0;//将全局变量*模拟持仓*初始化为0 IF 该笔盈亏>0 THEN BEGIN 真实系统下单开关:=0;//0代表模拟交易上一笔是赚钱的。 模拟开仓价:=0;//将全局变量*模拟开仓价*初始化为0 模拟平仓价:=0;//将全局变量*模拟开仓价*初始化为0 END IF 该笔盈亏<=0 THEN BEGIN 真实系统下单开关:=1;//1代表模拟交易上一笔是亏钱的。 模拟开仓价:=0;//将全局变量*模拟开仓价*初始化为0 模拟平仓价:=0;//将全局变量*模拟平仓价*初始化为0 END END IF 开空条件 AND 模拟持仓=0 THEN BEGIN 模拟开仓价:=CLOSE;//记录开仓价 模拟持仓:=-1;//模拟持仓为-1 END IF 平空条件 AND 模拟持仓=-1 THEN BEGIN 模拟平仓价:=CLOSE;//记录平仓价 该笔盈亏:=模拟开仓价-模拟平仓价;//在模拟交易模块中我们只需计算上一笔交易是赚还是亏,在这里我只计算盈亏最后的点数 模拟持仓:=0;//将全局变量*模拟持仓*初始化为0 IF 该笔盈亏>0 THEN BEGIN 真实系统下单开关:=0;//0代表模拟交易上一笔是赚钱的。 模拟开仓价:=0;//将全局变量*模拟开仓价*初始化为0 模拟平仓价:=0;//将全局变量*模拟开仓价*初始化为0 END IF 该笔盈亏<=0 THEN BEGIN 真实系统下单开关:=1;//1代表模拟交易上一笔是亏钱的。 模拟开仓价:=0;//将全局变量*模拟开仓价*初始化为0 模拟平仓价:=0;//将全局变量*模拟开仓价*初始化为0 END END //真实下单模块 平空:SELLSHORT(平空条件 AND HOLDING<0,手数,MARKET); 平多:SELL(平多条件 AND HOLDING>0,手数,MARKET); 开多:BUY(开多条件 AND 真实系统下单开关=1 AND HOLDING=0,手数,MARKET); 开空:BUYSHORT(开空条件 AND 真实系统下单开关=1 AND HOLDING=0,手数,MARKET);
|