我在均线编程测试时发现一个问题,每当多定义一根均线后(仅仅是定义,还未画图),原来收益结果,就会产生改变。求指教!!!
各位大神,这里有个简单的均线策略问题求解。问题描述:我在均线编程测试时发现一个问题,每当多定义一根均线后(仅仅是定义,还未画图),原来收益结果,就会产生改变。如以下代码,“//ma2 = Average(close,jx2);” 去除“//”后,原来收益结果就会改变,但这时还未进行过任何策略改变,无法理解,求指教!!!代码如下://------------------------------------------------------------------------// 简称: demo_10_50// 名称: // 类别: 公式应用// 类型: 用户应用// 输出: Void//------------------------------------------------------------------------Params Numeric jx1(13);//短期参数 Numeric jx2(62);//中线参数 Numeric shul(101);//单手合约数量Vars series<Numeric> ma1; series<Numeric> ma2; Bool bool_crossover;//上穿短线 Bool bool_crossunder;//下穿短线 Numeric ss;//开仓手数 EventsOnBar(ArrayRef<Integer> indexs) { ma1 = Average(close,jx1); //ma2 = Average(close,jx2); PlotNumeric(\"ma1\",ma1); //PlotNumeric(\"ma2\",ma2); ss = IntPart( Portfolio_CurrentEquity() / (close *shul*MarginRatio)) ;//通过当前组合权益、收盘价,计算可以开仓手数 bool_crossover = close[1] <= ma1[1] and close > ma1; bool_crossunder = close[1] >= ma1[1] and close < ma1; //组合开仓策略 If(MarketPosition<>1 and bool_crossover) { Buy(ss,close); } If(MarketPosition<>-1 and bool_crossunder) { SellShort(ss,close) ; } }//------------------------------------------------------------------------// 编译版本 2024/03/29 083636// 版权所有 tbm2724503213// 更改声明 TradeBlazer Software保留对TradeBlazer平台// 每一版本的TradeBlazer公式修改和重写的权利//------------------------------------------------------------------------