分享

短中精1选股公式源码编程思路及成功率回测数据

 追梦文库 2022-07-28 发布于黑龙江

条件选股:短中精1[日线]成功率测试

测试股票数:4572

共发出信号:378793成功信号:168166失败信号:207728未完成信号:2899

信号发出率:95.63%平均成功率:44.74%成功率达到50%的股票数有:31.86%

利润1总平均:14.06%最大平均利润1:  168.76%  最小平均利润1: 0.00%

利润2总平均:0.79%最大平均利润2:  119.12%  最小平均利润2:  -50.47%

编程思路:

ABV赋值:如果收盘价>1日前的收盘价,返回成交量(手),否则返回如果收盘价<1日前的收盘价,返回-成交量(手),否则返回0的历史累和/25000的2日简单移动平均
M1赋值:ABV的12日指数移动平均
M2赋值:ABV的26日指数移动平均
MTM赋值:收盘价-1日前的收盘价
MMS赋值:((100)*(MTM的6日指数移动平均的6日指数移动平均))/(MTM的绝对值的6日指数移动平均的6日指数移动平均)
MMM赋值:((100)*(MTM的12日指数移动平均的12日指数移动平均))/(MTM的绝对值的12日指数移动平均的12日指数移动平均)
MML赋值:((100)*(MTM的26日指数移动平均的26日指数移动平均))/(MTM的绝对值的26日指数移动平均的26日指数移动平均)
MMA赋值:收盘价-1日前的收盘价
MMB赋值:100*MMA的9日指数移动平均的9日指数移动平均/MMA的绝对值的9日指数移动平均的9日指数移动平均
MMC赋值:MMB的5日简单移动平均
A赋值:((成交量(手))/(当前流通股本(手)))*(100)
S赋值:((A的30日简单移动平均)/(大盘的成交额的10日简单移动平均))*(大盘的成交额的60日简单移动平均)
Y赋值:((A的120日简单移动平均)/(大盘的成交额的10日简单移动平均))*(大盘的成交额的60日简单移动平均)
X赋值:1
V1赋值:(最高价+开盘价+最低价+(2)*(收盘价))/(5)
V2赋值:1日前的V1
V3赋值:V1-V2和0的较大值
V4赋值:V1-V2的绝对值
V5赋值:V3的10日[1日权重]移动平均
V6赋值:V4的10日[1日权重]移动平均
V8赋值:统计5日中满足((V5)/(V6)<0.2)的天数
V9赋值:统计10日中满足(10日内V1的最低值=V1)的天数
精准买卖赋值:V8>=1 AND V9>=1 AND 收阳线ANDSE 1日前的收盘价>1日前的开盘价 AND (成交量(手)>1日前的成交量(手)) AND MMS>MML AND ABV上穿M2
短线买点赋值:V8>=1 AND V9>=1 AND 收阳线ANDSE 1日前的收盘价>1日前的开盘价 AND (成交量(手)>1日前的成交量(手)) AND MMS上穿MML AND ABV>1日前的ABV
中线买点赋值:V8>=1 AND V9>=1 AND 收阳线ANDSE 1日前的收盘价>1日前的开盘价 AND (成交量(手)>1日前的成交量(手)) AND ABV>1日前的ABV AND MMS>MML AND MMM上穿MML AND MMS>1日前的MMS AND MMM>1日前的MMM AND MML>1日前的MML
主进主买赋值:ABV>M2 AND MMB>MMC AND MMS上穿MML AND MMS>1日前的MMS AND MMM>1日前的MMM AND MML>1日前的MML
输出短中精:精准买卖 OR 短线买点 OR 中线买点 OR 主进主买

公式源码:

ABV:=MA(SUM(IF(CLOSE>REF(CLOSE,1),VOL,IF(CLOSE<REF(CLOSE,1),-VOL,0)),0)/25000,2);
M1:=EMA(ABV,12);
M2:=EMA(ABV,26);
MTM:=CLOSE-REF(CLOSE,1);
MMS:=((100)*(EMA(EMA(MTM,6),6)))/(EMA(EMA(ABS(MTM),6),6));
MMM:=((100)*(EMA(EMA(MTM,12),12)))/(EMA(EMA(ABS(MTM),12),12));
MML:=((100)*(EMA(EMA(MTM,26),26)))/(EMA(EMA(ABS(MTM),26),26));
MMA:=C-REF(C,1);
MMB:=100*EMA(EMA(MMA,9),9)/EMA(EMA(ABS(MMA),9),9);
MMC:=MA(MMB,5);
A:=((VOL)/(CAPITAL))*(100);
S:=((MA(A,30))/(MA(INDEXA,10)))*(MA(INDEXA,60));
Y:=((MA(A,120))/(MA(INDEXA,10)))*(MA(INDEXA,60));
X:=1;
V1:=(HIGH+OPEN+LOW+(2)*(CLOSE))/(5);
V2:=REF(V1,1);
V3:=MAX(V1-V2,0);
V4:=ABS(V1-V2);
V5:=SMA(V3,10,1);
V6:=SMA(V4,10,1);
V8:=COUNT(((V5)/(V6)<0.2),5);
V9:=COUNT((LLV(V1,10)=V1),10);
精准买卖:=V8>=1 AND V9>=1 AND CLOSE>OPEN AND REF(CLOSE,1)>REF(OPEN,1) AND (VOL>REF(VOL,1)) AND MMS>MML AND CROSS(ABV,M2);
短线买点:=V8>=1 AND V9>=1 AND CLOSE>OPEN AND REF(CLOSE,1)>REF(OPEN,1) AND (VOL>REF(VOL,1)) AND CROSS(MMS,MML) AND ABV>REF(ABV,1);
中线买点:=V8>=1 AND V9>=1 AND CLOSE>OPEN AND REF(CLOSE,1)>REF(OPEN,1) AND (VOL>REF(VOL,1)) AND ABV>REF(ABV,1) AND MMS>MML AND CROSS(MMM,MML) AND MMS>REF(MMS,1) AND MMM>REF(MMM,1) AND MML>REF(MML,1);
主进主买:=ABV>M2 AND MMB>MMC AND CROSS(MMS,MML) AND MMS>REF(MMS,1) AND MMM>REF(MMM,1) AND MML>REF(MML,1);
短中精:精准买卖 OR 短线买点 OR 中线买点 OR 主进主买;

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约