无锡微信网站建设价格,做网站 视频加载太慢,网站开发字典文档,莆田市城厢区建设局网站VCP形态的英文”Volatility Contraction Pattern”的缩写#xff0c;意思是“波动收缩形态”。VCP形态是全美交易冠军马克米勒维尼的核心交易模式之一#xff0c;在其著作《股票魔法师》中有详细介绍。
马克米勒维尼把VCP形态比喻为湿毛巾#xff0c;拧过一次后仍含水…VCP形态的英文”Volatility Contraction Pattern”的缩写意思是“波动收缩形态”。VCP形态是全美交易冠军马克·米勒维尼的核心交易模式之一在其著作《股票魔法师》中有详细介绍。
马克·米勒维尼把VCP形态比喻为湿毛巾拧过一次后仍含水重新拧一下又挤出一些。继续拧紧毛巾每次挤出的水越来越少最后毛巾变干变轻。VCP每一次收缩股价变得“更加紧实”意味着供给减少就像毛巾被拧干。经历几次收缩后股票变得更轻比之前有大量供给时更容易向一个方向移动。 一、VCP形态选股公式编写思路
编写指标描述形态一直是量化的难点技术Pie就来挑战一下。VCP形态选股公式实在太难了想了好多天改了好几版终于有所收获。
1、拟合曲线
最初使用布林线、振幅变小等方法描述VCP形态效果不尽如人意。后来想到如果把高点低找出来再进行比较不就可以了但是如何准确定位高点低是一个难题。考虑使用拟合曲线方法首先想到均线可是均线用小周期不够平滑用大周期会严重偏离真实的高点低。最终想到了一个解决方案用斜率对收盘价进行加权用加权后的价格计算均线但是得到的均线仍然不够平滑再用指数加权移动平均计算得到拟合曲线SL。 SL:EMA(EMA(SLOPE(C,10)*5C,10),2);{拟合曲线SL,斜率加权EMA二次平滑} 经过二次处理的效果如下 2、拟合曲线的底和顶
经过处理之后曲线高点低就清晰了。中间一个周期SL值比前后都大曲线SL的顶就找到了中间一个周期SL值比前后都小曲线SL的底就找到了。不需要拟合曲线的高点低和实际高点低完全相同只要偏离幅度不大就可以。 DI:REF(SL,1)REF(SL,2) AND REF(SL,1)SL;{拟合曲线底} DING:REF(SL,1)REF(SL,2) AND REF(SL,1)SL;{拟合曲线顶} 3、最高点
用BARSLAST和SUMBARS函数定位四个底距离现在的周期数再用FINDHIGH函数计算底1和底2之间的最高价DINGH1底2和底3之间的最高价DINGH2底3和底4之间的最高价DINGH3。 TDI1:BARSLAST(DI)1; TDI2:SUMBARS(DI,2); TDI3:SUMBARS(DI,3); TDI4:SUMBARS(DI,4); DINGH1:FINDHIGH(H,TDI1,TDI2-TDI1,1); DINGH2:FINDHIGH(H,TDI2,TDI3-TDI2,1); DINGH3:FINDHIGH(H,TDI3,TDI4-TDI3,1); 4、最低点
类似的计算出顶1和顶2之间的最低价DIL1顶2和顶3之间的最低价DIL2。再计算顶1后面的低点DL后面用来过滤跌破DIL1的情况。 TDING1:BARSLAST(DING)1; TDING2:SUMBARS(DING,2); TDING3:SUMBARS(DING,3); DIL1:FINDLOW(L,TDING1,TDING2-TDING1,1); DIL2:FINDLOW(L,TDING2,TDING3-TDING2,1); DL:FINDLOW(L,1,TDING1,1); 5、条件设置
经过上面的准备计算出了K线顶和底的价格可以开始设置条件。
A1:计算三个顶的最大值和最小值两者幅度限制在5%之内。幅度可以自行调整比如完全的平顶三个顶价格相等幅度就是0当然这种情况比较罕见不太现实。 MAXH:MAX(DINGH1,MAX(DINGH2,DINGH3)); MINH:MIN(DINGH1,MIN(DINGH2,DINGH3)); A1:(MAXH-MINH)/MINH*1005; A2:比较两个底后面一个底DIL1在前面一个底DIL2的-2%以上也就是可以稍微低一点但是大部分情况应该高一些。写成-2%是稍微放宽了条件。另外限制DIL大于DIL1过滤跌破DIL1的情况。 A2:(DIL1-DIL2)/DIL2*100-2 AND DLDIL1; A3:再加上触发信号创20日新高阳线。 A3:HHHV(H,20) AND CO; 二、VCP形态指标公式 SL:EMA(EMA(SLOPE(C,10)*5C,10),2); DI:REF(SL,1)REF(SL,2) AND REF(SL,1)SL; DING:REF(SL,1)REF(SL,2) AND REF(SL,1)SL; TDI1:BARSLAST(DI)1; TDI2:SUMBARS(DI,2); TDI3:SUMBARS(DI,3); TDI4:SUMBARS(DI,4); DINGH1:FINDHIGH(H,TDI1,TDI2-TDI1,1); DINGH2:FINDHIGH(H,TDI2,TDI3-TDI2,1); DINGH3:FINDHIGH(H,TDI3,TDI4-TDI3,1); TDING1:BARSLAST(DING)1; TDING2:SUMBARS(DING,2); TDING3:SUMBARS(DING,3); DIL1:FINDLOW(L,TDING1,TDING2-TDING1,1); DIL2:FINDLOW(L,TDING2,TDING3-TDING2,1); DL:FINDLOW(L,1,TDING1,1); MAXH:MAX(DINGH1,MAX(DINGH2,DINGH3)); MINH:MIN(DINGH1,MIN(DINGH2,DINGH3)); A1:(MAXH-MINH)/MINH*1005; A2:(DIL1-DIL2)/DIL2*100-2 AND DLDIL1; A3:HHHV(H,20) AND CO; AA:A1 AND A2 AND A3; XG:FILTER(AA,20); DRAWICON(XG,L,1); STICKLINE(XG,H,L,0,0),COLORYELLOW; STICKLINE(XG,O,C,3,0),COLORYELLOW; 三、VCP形态选股公式 SL:EMA(EMA(SLOPE(C,10)*5C,10),2); DI:REF(SL,1)REF(SL,2) AND REF(SL,1)SL; DING:REF(SL,1)REF(SL,2) AND REF(SL,1)SL; TDI1:BARSLAST(DI)1; TDI2:SUMBARS(DI,2); TDI3:SUMBARS(DI,3); TDI4:SUMBARS(DI,4); DINGH1:FINDHIGH(H,TDI1,TDI2-TDI1,1); DINGH2:FINDHIGH(H,TDI2,TDI3-TDI2,1); DINGH3:FINDHIGH(H,TDI3,TDI4-TDI3,1); TDING1:BARSLAST(DING)1; TDING2:SUMBARS(DING,2); TDING3:SUMBARS(DING,3); DIL1:FINDLOW(L,TDING1,TDING2-TDING1,1); DIL2:FINDLOW(L,TDING2,TDING3-TDING2,1); DL:FINDLOW(L,1,TDING1,1); MAXH:MAX(DINGH1,MAX(DINGH2,DINGH3)); MINH:MIN(DINGH1,MIN(DINGH2,DINGH3)); A1:(MAXH-MINH)/MINH*1005; A2:(DIL1-DIL2)/DIL2*100-2 AND DLDIL1; A3:HHHV(H,20) AND CO; AA:A1 AND A2 AND A3; XG:FILTER(AA,20); 四、注意点
最后的触发条件是创20日新高HHHV(H,20) 这个条件是我技术Pie自己设置的并没有按照《股票魔法师》书中的定义写。这样写触发的信号可以早一点方便后续跟踪观察。另外一个好的VCP应该要在股价的“第二阶段”本次编写的VCP形态选股公式没有加入这个条件务必注意。
后续有改进再说吧编写这个公式已经把我折磨得够呛了。
关注技术Pie学习更多通达信指标公式编写知识。
友情提醒本文仅供学习交流技术指标公式不构成任何投资建议。投资有风险入市需谨慎