请选择 进入手机版 | 继续访问电脑版

早晨之星K线形态测试和代码版本汇总

[复制链接]
查看213 | 回复6 | 王博 | 2020-4-7 23:17:00 | 显示全部楼层 |阅读模式
1) 早晨之星的特征
形态条件1:形态出现在下跌行情中。
量化定义:第1根K线收盘价<20日均线
形态条件2:第1根K线是下跌棒体
量化定义:第1根K线实体>K线整体的0.5倍,并且收盘价<前一天收盘价
形态条件3:第2根K线是下跌星线
量化定义:第2根K线实体<K线整体的0.5倍,并且最低价为整个形态的最低价
形态条件4:第3根K线是上涨棒体
量化定义:第3根K线实体>K线整体的0.5倍,并且最高价是整个形态的最高价

2) 测试买卖条件:
买入条件:早晨之星形态第3根K线处,买入
卖出条件:买入后的第二天收盘前,卖出

回复

使用道具 举报

王博 | 2020-4-7 23:18:37 | 显示全部楼层
测试一代码:

//定义仓位
FUND:=10000000;
LOTS:=INTPART(FUND*0.8/(CLOSE+FEE));//计算手数,使每次开仓金额都是800W

//定义ATR
TR:MAX(MAX((H-L),ABS(REF(C,1)-H)),ABS(REF(C,1)-L));//算出(当日最高-当日最低)、(当日最高-昨日收盘)的绝对值、(昨日收盘-当日最低)的绝对值,取这3个值中的最大值为ATR
ATR:MA(TR,26);//求26个周期内的TR的简单移动平均

//定义20日均线
MA20:MA(C,20);

//定义K线
KXST:=ABS(O-C);//K线实体长度
YXCD:=H-L;//K线影线长度
BT:=KXST>YXCD*0.5;//棒体实体大于影线的0.5倍
XX:=KXST<YXCD*0.5;//星线实体小于影线的0.5倍

//定义早晨之星
//1.定义第三天的上涨棒体
ZCZX1:=BT AND YXCD>0.5*ATR AND H=HHV(H,3);
//2.定义第二天的星线
ZCZX2:=REF(XX,1) AND REF(L,1)=LLV(L,3) AND REF(H,1)<REF(H,2);
//3.定义第一天的下跌棒体
ZCZX3:=REF(BT,2) AND REF(C,2)<REF(C,3) AND REF(YXCD,2)>0.5*ATR;
//4.定义下跌趋势
ZCZX4:=REF(C,2)<REF(MA20,2);

//定义早晨之星
ZCZX:=ZCZX1 AND ZCZX2 AND ZCZX3 AND ZCZX4;

ZCZX,BK(LOTS);//出现早晨之星买入
BARSBK=1,SP(BKVOL);//1日后卖出




回复

使用道具 举报

王博 | 2020-4-7 23:24:04 | 显示全部楼层
测试二代码:

//一、定义仓位
FUND:=10000000;
LOTS:=INTPART(FUND*0.8/(CLOSE+FEE));//计算手数,使每次开仓金额都是800W

//定义ATR
TR:MAX(MAX((H-L),ABS(REF(C,1)-H)),ABS(REF(C,1)-L));//算出(当日最高-当日最低)、(当日最高-昨日收盘)的绝对值、(昨日收盘-当日最低)的绝对值,取这3个值中的最大值为ATR
ATR:MA(TR,26);//求26个周期内的TR的简单移动平均

//定义60日均线
MA60:MA(C,60);

//定义K线
KXST:=ABS(O-C);//K线实体长度
YXCD:=H-L;//K线影线长度
BT:=KXST>YXCD*0.5;//棒体实体大于影线的0.5倍
XX:=KXST<YXCD*0.5;//星线实体小于影线的0.5倍

//定义早晨之星
//1.定义第三天的上涨棒体
ZCZX1:=BT AND YXCD>0.5*ATR AND H=HHV(H,3);
//2.定义第二天的星线
ZCZX2:=REF(XX,1) AND REF(L,1)=LLV(L,3) AND REF(H,1)<REF(H,2);
//3.定义第一天的下跌棒体
ZCZX3:=REF(BT,2) AND REF(C,2)<REF(C,3) AND REF(YXCD,2)>0.5*ATR;
//4.定义下跌趋势
ZCZX4:=REF(C,2)<REF(MA60,2);

//定义早晨之星
ZCZX:=ZCZX1 AND ZCZX2 AND ZCZX3 AND ZCZX4;

ZCZX,BK(LOTS);//出现早晨之星买入
BARSBK=1,SP(BKVOL);//1日后卖出

回复

使用道具 举报

王博 | 2020-4-7 23:25:43 | 显示全部楼层
测试三代码:

//定义仓位
FUND:=10000000;
LOTS:=INTPART(FUND*0.8/(CLOSE+FEE));//计算手数,使每次开仓金额都是800W

//定义ATR
TR:MAX(MAX((H-L),ABS(REF(C,1)-H)),ABS(REF(C,1)-L));//算出(当日最高-当日最低)、(当日最高-昨日收盘)的绝对值、(昨日收盘-当日最低)的绝对值,取这3个值中的最大值为ATR
ATR:MA(TR,26);//求26个周期内的TR的简单移动平均

//定义均线
MA20:MA(C,20);

//定义K线
KXST:=ABS(O-C);//K线实体长度
YXCD:=H-L;//K线影线长度
BT:=KXST>YXCD*0.5;//棒体实体大于影线的0.5倍
XX:=KXST<YXCD*0.5;//星线实体小于影线的0.5倍

//定义早晨之星
//1.定义第三天的上涨棒体
ZCZX1:=BT AND YXCD>0.5*ATR AND H=HHV(H,3);
//2.定义第二天的星线
ZCZX2:=REF(XX,1) AND REF(L,1)=LLV(L,3) AND REF(H,1)<REF(H,2);
//3.定义第一天的下跌棒体
ZCZX3:=REF(BT,2) AND REF(C,2)<REF(C,3) AND REF(YXCD,2)>0.5*ATR;
//4.定义下跌趋势
ZCZX4:=REF(C,2)<REF(MA20,2);

//定义早晨之星
ZCZX:=ZCZX1 AND ZCZX2 AND ZCZX3 AND ZCZX4;

ZCZX,BK(LOTS);//出现早晨之星买入
BARSBK=28,SP(BKVOL);//28日后卖出


回复

使用道具 举报

王博 | 2020-4-7 23:28:19 | 显示全部楼层
测试四代码:

//定义仓位
FUND:=10000000;
LOTS:=INTPART(FUND*0.8/(CLOSE+FEE));//计算手数,使每次开仓金额都是800W

//定义ATR
TR:MAX(MAX((H-L),ABS(REF(C,1)-H)),ABS(REF(C,1)-L));//算出(当日最高-当日最低)、(当日最高-昨日收盘)的绝对值、(昨日收盘-当日最低)的绝对值,取这3个值中的最大值为ATR
ATR:MA(TR,26);//求26个周期内的TR的简单移动平均

//定义20日均线
MA20:MA(C,20);

//定义DMA指标
DDD:MA(CLOSE,10)-MA(CLOSE,50);//短周期收盘价均值与长周期收盘价均值做差
AMA:MA(DDD,10);//10个周期的DDD均值
DDD1:=AMA<0 AND DDD<0;

//定义K线
KXST:=ABS(O-C);//K线实体长度
YXCD:=H-L;//K线影线长度
BT:=KXST>YXCD*0.5;//棒体实体大于影线的0.5倍
XX:=KXST<YXCD*0.5;//星线实体小于影线的0.5倍

//定义早晨之星
//1.定义第三天的上涨棒体
ZCZX1:=BT AND YXCD>0.5*ATR AND H=HHV(H,3);
//2.定义第二天的星线
ZCZX2:=REF(XX,1) AND REF(L,1)=LLV(L,3) AND REF(H,1)<REF(H,2);
//3.定义第一天的下跌棒体
ZCZX3:=REF(BT,2) AND REF(C,2)<REF(C,3) AND REF(YXCD,2)>0.5*ATR;
//4.定义下跌趋势
ZCZX4:=REF(C,2)<REF(MA20,2);

//定义早晨之星
ZCZX:=ZCZX1 AND ZCZX2 AND ZCZX3 AND ZCZX4;

ZCZX AND DDD1,BK(LOTS);//出现早晨之星,并且AMA<0, DDD<0时,买入
BARSBK=1,SP(BKVOL);//1日后卖出
回复

使用道具 举报

王博 | 2020-4-10 10:40:07 | 显示全部楼层
测试五代码:

//定义仓位
FUND:=10000000;
LOTS:=INTPART(FUND*0.8/(CLOSE+FEE));//计算手数,使每次开仓金额都是800W

//定义ATR
TR:MAX(MAX((H-L),ABS(REF(C,1)-H)),ABS(REF(C,1)-L));//算出(当日最高-当日最低)、(当日最高-昨日收盘)的绝对值、(昨日收盘-当日最低)的绝对值,取这3个值中的最大值为ATR
ATR:MA(TR,26);//求N个周期内的TR的简单移动平均

//定义均线
MA20:MA(C,20);

//定义K线
KXST:=ABS(O-C);//K线实体长度
YXCD:=H-L;//K线影线长度
BT:=KXST>YXCD*0.5;//棒体实体大于影线的0.5倍
XX:=KXST<YXCD*0.5;//星线实体小于影线的0.5倍

//定义早晨之星
//1.定义第三天的上涨棒体
ZCZX1:=BT AND YXCD>0.5*ATR AND H=HHV(H,3);
//2.定义第二天的星线
ZCZX2:=REF(XX,1) AND REF(L,1)=LLV(L,3) AND REF(H,1)<REF(H,2);
//3.定义第一天的下跌棒体
ZCZX3:=REF(BT,2) AND REF(C,2)<REF(C,3) AND REF(YXCD,2)>0.5*ATR;

//定义早晨之星
ZCZX:=ZCZX1 AND ZCZX2 AND ZCZX3;

ZCZX,BK(LOTS);//出现早晨之星买入
BARSBK=1,SP(BKVOL);//1日后卖出
回复

使用道具 举报

王博 | 2020-4-10 16:49:46 | 显示全部楼层
测试六代码:

//定义仓位
FUND:=10000000;
LOTS:=INTPART(FUND*0.8/(CLOSE+FEE));//计算手数,使每次开仓金额都是800W

//定义ATR
TR:MAX(MAX((H-L),ABS(REF(C,1)-H)),ABS(REF(C,1)-L));//算出(当日最高-当日最低)、(当日最高-昨日收盘)的绝对值、(昨日收盘-当日最低)的绝对值,取这3个值中的最大值为ATR
ATR:MA(TR,26);//求26个周期内的TR的简单移动平均

//定义常规K线
KXST:=ABS(O-C);
SYXCD:=H-MAX(O,C);//上影线长度
XYXCD:=MIN(O, C)-L;//下影线长度
YXCD:=H-L;//影线长度
BT:=KXST>YXCD*0.5;//棒体

//定义十字星
SZXST:=KXST<ATR*0.1;//十字星的实体
SZX:=SZXST AND SYXCD>0 AND XYXCD>0;//十字星定义

//早晨之星
//第三天的上涨棒体
ZCZX1:=BT AND YXCD>0.5*ATR AND C=HHV(C,3) AND H>=HHV(H,2);
//第二天的十字星
ZCZX2:=REF(SZX,1) AND REF(L,1)=LLV(L,3) AND REF(H,1)<REF(H,2) ;//早晨之星第二根是星线,最低价为形态最低价
//第一天的下跌棒体
ZCZX3:=REF(BT,2) AND REF(C,2)<REF(C,3) AND REF(YXCD,2)>0.5*ATR;
//定义早晨之星
ZCZX:=ZCZX1 AND ZCZX2 AND ZCZX3;

ZCZX,BK(LOTS);//出现早晨之星买入
BARSBK=1,SP(BKVOL);//1日后卖出



回复

使用道具 举报

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

本版积分规则

相关课程推荐
桥博士《MACD指标详解》
为什么我们只用MACD金叉死叉来进行操作效果并不好,学习课程就能在研究MACD指标上少走很多弯路
桥博士《K线形态组合解析》
从理论到实战,让您全面掌握各种K线形态及各种组合,帮您分析梳理大量K线知识让您的投资更游刃有余
桥博士《股票入门基础知识》
从理论到实战,课程包括如何买卖股票、开户流程、交易软件、k线图知识、技术指标、价值投资等新手必备知识

79

主题

446

帖子

1081

积分

金牌会员

Rank: 6Rank: 6

积分
1081
  • 官方论坛

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