阴包阳k线组合形态测试和代码版本汇总

[复制链接]
查看651 | 回复4 | 张孟珂 | 2020-4-7 16:19:19 | 显示全部楼层 |阅读模式
阴包阳形态特征

1) 定义阴包阳

A. 形态条件1
文字描述:第二根大k线;
量化定义:第二根大k线的长度>1*ATR;
(为什么用ATR:《ATR的正确使用方法-动态度量衡》)
B. 形态条件2
文字描述:前一根k线是中k线,且不是十字星k线;
量化定义:REF(k线CD, 1)>0.5 * REF(ATR, 1) AND REF(NOT(上证X), 1)=1;
C. 形态条件3
文字描述:前一根k线是阳线,当前k线是阴线;
量化定义:REF(ISUP,1) && ISDOWN;
D. 形态条件4
文字描述:第二根k线的实体覆盖第一根k线的实体;
量化定义:C<REF(O,1) && O>REF(C,1);

2) 定义测试的买卖逻辑:
A. 测试的买入条件:出现阴包阳形态,以收盘价买入;
B. 测试的卖出条件:买入后第二天,以收盘价卖出;

回复

使用道具 举报

张孟珂 | 2020-4-7 16:23:58 | 显示全部楼层
测试一【阴包阳基础测试】
【测试逻辑】
A. 测试的买入条件:出现阴包阳形态,以收盘价买入;
B. 测试的卖出条件:买入后第二天,以收盘价卖出;

【测试代码】【N1,N2】=【1,0.5】

//定义仓位
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));//算出(当日最高-当日最低)、(当日最高-昨日收盘)的绝对值、(昨日收盘-当日最低)的绝对值,再求这3个值中的最大值
ATR:MA(TR,N);//求N个周期内的TR的简单移动平均
//定义k线长度
k线CD := ABS(H - L);
//定义十字星 K 线
k线ST : ABS(O - C);//k线实体长度
收益XCD := H - MAX(O, C);//上影线长度
XYXCD := MIN(O, C) - L;//下影线长度
上证XST := k线ST < ATR*0.1;//十字星的实体
上证X := 上证XST AND 收益XCD>0 AND XYXCD>0;//十字星定义
//定义阴包阳形态  
//1.定义前一根中k线
REF_YANG := REF(k线CD, 1)>N2 * REF(ATR, 1) AND REF(NOT(上证X), 1)=1;
//2. 定义当前大k线
YIN := k线CD > N1 * ATR;
//3. 定义当前大k线包住前一根
中k线
YIN_BAO_YANG := REF(ISUP, 1) && ISDOWN && C<REF(O, 1) && O>REF(C, 1);
//4. 定义阴包阳形态
YBYANG := REF_YANG && YIN && YIN_BAO_YANG;
//执行交易

YBYANG,BK(LOTS);//满足k线形态,开仓做多
BKVOL>0,SP(BKVOL);//第二天平仓


回复

使用道具 举报

张孟珂 | 2020-4-7 16:24:41 | 显示全部楼层
测试二【使用上涨趋势过滤】
【测试逻辑】
A. 测试的买入条件:上涨趋势中出现阴包阳形态,以收盘价买入;
B. 测试的卖出条件:买入后第二天,以收盘价卖出;

【测试代码】
【N1,N2】=【1,0.5】
//定义仓位
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));//算出(当日最高-当日最低)、(当日最高-昨日收盘)的绝对值、(昨日收盘-当日最低)的绝对值,再求这3个值中的最大值
ATR:MA(TR,N);//求N个周期内的TR的简单移动平均
//定义趋势
//1、定义上涨趋势
上证QS:=C>MA(C,20);
//定义k线长度
k线CD := ABS(H - L);
//定义十字星 K 线
k线ST : ABS(O - C);//k线实体长度
收益XCD := H - MAX(O, C);//上影线长度
XYXCD := MIN(O, C) - L;//下影线长度
上证XST := k线ST < ATR*0.1;//十字星的实体
上证X := 上证XST AND 收益XCD>0 AND XYXCD>0;//十字星定义
//定义阴包阳形态  
//1.定义前一根中k线
REF_YANG := REF(k线CD, 1)>N2 * REF(ATR, 1) AND REF(NOT(上证X), 1)=1;
//2. 定义当前大k线
YIN := k线CD > N1 * ATR;
//3. 定义当前大k线包住前一根
中k线
YIN_BAO_YANG := REF(ISUP, 1) && ISDOWN && C<REF(O, 1) && O>REF(C, 1);

//4. 定义阴包阳形态
YBYANG_JX上证:=上证QS && REF_YANG && YIN && YIN_BAO_YANG;//均线上涨趋势过滤下的阴包阳形态
//执行交易
YBYANG_JX上证,BK(LOTS);//满足k线形态,开仓做多
BKVOL>0,SP(BKVOL);//第二天平仓

回复

使用道具 举报

张孟珂 | 2020-4-7 16:27:08 | 显示全部楼层
测试三【使用下跌趋势过滤】
【测试逻辑】
A. 测试的买入条件:下跌趋势中出现阴包阳形态,以收盘价买入;
B. 测试的卖出条件:买入后第二天,以收盘价卖出;

【测试代码】
【N1,N2】=【1,0.5】
//定义仓位
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));//算出(当日最高-当日最低)、(当日最高-昨日收盘)的绝对值、(昨日收盘-当日最低)的绝对值,再求这3个值中的最大值
ATR:MA(TR,N);//求N个周期内的TR的简单移动平均
//定义趋势
//1、定义下跌趋势
XDQS:=C<MA(C,20);
//定义k线长度
k线CD := ABS(H - L);
//定义十字星 K 线
k线ST : ABS(O - C);//k线实体长度
收益XCD := H - MAX(O, C);//上影线长度
XYXCD := MIN(O, C) - L;//下影线长度
上证XST := k线ST < ATR*0.1;//十字星的实体
上证X := 上证XST AND 收益XCD>0 AND XYXCD>0;//十字星定义
//定义阴包阳形态  
//1.定义前一根中k线
REF_YANG := REF(k线CD, 1)>N2 * REF(ATR, 1) AND REF(NOT(上证X), 1)=1;
//2. 定义当前大k线
YIN := k线CD > N1 * ATR;
//3. 定义当前大k线包住前一根
中k线
YIN_BAO_YANG := REF(ISUP, 1) && ISDOWN && C<REF(O, 1) && O>REF(C, 1);

//4.定义阴包阳形态
YBYANG_JXXD:=XDQS && REF_YANG && YIN && YIN_BAO_YANG;//均线下跌趋势过滤下的阴包阳形态
//执行交易
YBYANG_JXXD,BK(LOTS);//满足k线形态,开仓做多
BKVOL>0,SP(BKVOL);//第二天平仓


回复

使用道具 举报

张孟珂 | 2020-4-7 16:28:10 | 显示全部楼层
测试四【和MACD指标组合】
【测试逻辑】
A. 测试的买入条件:出现阴包阳形态且MACD指标金叉时,以收盘价买入;
B. 测试的卖出条件:买入后第二天,以收盘价卖出;

【测试代码】
【N1,N2】=【1,0.5】
//定义仓位
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));//算出(当日最高-当日最低)、(当日最高-昨日收盘)的绝对值、(昨日收盘-当日最低)的绝对值,再求这3个值中的最大值
ATR:MA(TR,N);//求N个周期内的TR的简单移动平均
//定义MACD指标
DIFF : EMA(CLOSE, 12) - EMA(CLOSE, 26);//短周期与长周期的收盘价的指数平滑移动平均值做差。
DEA  : EMA(DIFF, 9);//DIFF的M个周期指数平滑移动平均
2*(DIFF-DEA), COLORSTICK;//DIFF减DEA的2倍画柱状线

//定义k线长度
k线CD := ABS(H - L);
//定义十字星 K 线
k线ST : ABS(O - C);//k线实体长度
收益XCD := H - MAX(O, C);//上影线长度
XYXCD := MIN(O, C) - L;//下影线长度
上证XST := k线ST < ATR*0.1;//十字星的实体
上证X := 上证XST AND 收益XCD>0 AND XYXCD>0;//十字星定义
//定义阴包阳形态  
//1.定义前一根中k线
REF_YANG := REF(k线CD, 1)>N2 * REF(ATR, 1) AND REF(NOT(上证X), 1)=1;
//2. 定义当前大k线
YIN := k线CD > N1 * ATR;
//3. 定义当前大k线包住前一根
中k线
YIN_BAO_YANG := REF(ISUP, 1) && ISDOWN && C<REF(O, 1) && O>REF(C, 1);
//4. 定义阴包阳形态
YBYANG := REF_YANG && YIN && YIN_BAO_YANG;

//执行交易
YBYANG && DIFF>DEA,BK(LOTS);//阴包阳形态+MACD金叉状态,开仓做多
BKVOL>0,SP(BKVOL);//第二天平仓

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

媒体报道
大论文配图
刘昱妗大论文配图
大论文所有配图
论文撰写/整合智能体
刘昱妗论文撰写/整合智能体
梁心怡的交易日记与反思
心怡梁心怡的交易日记与反思
总结、学习、改进
揭秘 “5000笔交易胜率90.5%” 轻量组冠军“吾剑”老师 深度访谈 干货满满 交易策略
心怡揭秘 “5000笔交易胜率90.5%” 轻量组冠军“吾剑”老师 深度访谈 干货满满 交易策略
说话人 1 00:00:00本次大赛,他用1,035元的本金在6个月的时间里翻了169倍。而更令人瞠
昱妗交易员日记
刘昱妗昱妗交易员日记
记录教训 吸取教训 前一天提出的问题改进时机:上午的10:30 (和第一次风控一起)
巴菲特眼中的赌博
桥博士巴菲特眼中的赌博
英雄不问出处,巴菲特曾经重注 运通公司 的股票 巴菲特重注运通公司(American E
工科女在线学交易
唯格工科女在线学交易
今天我基于一个明确的技术信号进行了开仓操作:昨天大盘的收盘价和盘中最高价均创出近
工科女的量化学习
唯格工科女的量化学习
今天动手跑了第一次批量回测,测试了5、10、15、30分钟四个时间周期的策略表现。主要
相关课程推荐
K线形态组合解析
k线图基础知识怎么学? 报名宽论VA鱼识别课
没有人可以做万能交易者,但通过不断学习吸收知识从而有一套属于自己交易系统的人,就是走向了盈利的大道。
90%的时间在研究大盘指数,9.9元学习宽论VA
一买就跌,一卖就涨? 股市七亏二平一赚,怎样才能成为赚钱的10%? 看准大盘胜算过半,炒股新手也能掌握的V

43

主题

235

帖子

799

积分

宽论高级会员

Rank: 4

积分
799
  • 官方论坛

    提供最新 Discuz! 产品新闻、软件下载与技术交流