本帖最后由 张孟珂 于 2020-2-27 13:27 编辑
测试目标:
测试出现孕线形态之后,若做多,是否会盈利。据此去判断第二天涨跌的概率大小。
首先,根据对孕线形态的理解,将满足孕线形态的条件总结如下:
1. 第1根k线为一个长长的实体,它将第2天的小实体完全包容起来。(在测试过程中,我们使用ATR去描述k线实体)
2. 前一根k线实体的长度(实体长度>1倍*ATR)
3. 前一根k线实体的长度(实体长度>0.5倍*ATR)
4. 同时我们使用开盘价、收盘价以及前一天的开盘价、收盘价描述该形态
以此,我们建立逻辑检验测试结果:
进多仓信号:当出现孕线形态时,收盘价进仓;
出仓信号:下一天的收盘价平仓;
测试结果: 测试标的:上证指数 测试初始资金:1000w 开仓资金:800w 测试周期:2000-02-01 到 2020-01-31 盈利率:-12.8% 胜率:48.48% 盈亏比:0.4 交易次数:33 测试表格:
测试结论:
基于此测试的结论是:出现孕线形态之后,是可以尝试做空的;据此可以知道上证指数出现该形态之后,后市下跌的风险很大。所以如果遇到大盘出现孕线形态,离场观望是更安全的,因为在我们的测试结果中盈利率是负的。
注意:回测是基于历史数据进行的,也就是说历史数据的测试结果不代表未来一定会出现相同结果。 测试代码: //一、定义仓位 FUND:=10000000; //资金 LOTS:=INTPART(FUND*0.8/(C*MARGIN*UNIT+FEE));//INTPART(FUND*0.8/(OPEN*UNIT*0.1));//计算开仓手数 //二、定义ATR TR:MAX(MAX((H-L),ABS(REF(C,1)-HIGH)),ABS(REF(C,1)-L));//求最高价减去最低价,一个周期前的收盘价减去最高价的绝对值,一个周期前的收盘价减去最低价的绝对值,这三个值中的最大值 ATR:MA(TR,N);//求N个周期内的TR的简单移动平均 //三、定义k线实体 k线ST:=ABS(O-C); //四、定义孕线 //1.定义前一根k线 REFk线IAN:REF(k线ST,1)>N1*REF(ATR,1); //2. 定义当前k线 DQk线IAN:k线ST>N2*ATR; //3. 定义当前k线包住前一根k线 DQk线IAN_BAO_REFk线IAN:=L>REF(L,1) && H<REF(H,1) && ((O<REF(O,1) && C>REF(C,1)) || (O>REF(O,1) && C<REF(C,1))); // && O<REF(C,1) && C>REF(O,1)) && C<REF(O,1) && O>REF(C,1) //4.定义孕线形态 YX:=REFk线IAN>DQk线IAN && DQk线IAN_BAO_REFk线IAN;//孕线 YX,BK(LOTS);//满足k线形态,开仓做多 BKVOL>0,SP(BKVOL);//第二天平仓 孕线k线形态,不能仅仅看这一种k线形态,因为出现的次数太少,而且真正出现了这种k线形态后,我们还要知道如何与其他的指标均线结合使用,所以应该去系统的学一门《桥博士-k线形态组合详解》的课程。
|