{公式名称:MONTH_SELECT}
{周期:月线}
{说明:根据野人哥理论设计的月线初选公式,筛选出密度高、历史抗跌、相对强势的个股}
{参数可调}
密度阈值 := 8; {要求从近10年低点涨幅超过3倍}
测压最低分 := 3; {要求在4个历史周期中至少3个抗跌}
抗跌权重1 := 1; {周期1权重(可调整)}
抗跌权重2 := 1;
抗跌权重3 := 1;
抗跌权重4 := 1;
{--------------1. 密度系数(从近10年低点至今涨幅)--------------}
历史低点 := LLV(L, 120); {120个月=10年,可根据需要调整}
密度 := HHV(H,120) / 历史低点; {当前价格相对于历史低点的倍数}
{--------------2. 相对强弱(月线强度)--------------}
RS := C / IN
DEXC ; {月收盘价 / 月大盘指数}
RS_MA := MA(RS, 12); {12月相对强弱均线,用于平滑}
{--------------3. 多周期抗跌评分(四个历史熊市周期)--------------}
{周期1: 2023.7 - 2024.2}
POS_S1 := BARSLAST(
YEAR =2023 AND MONTH=7);
POS_E1 := BARSLAST(YEAR=2024 AND MONTH=2);
STK1 := IF(POS_S1>=0 AND POS_E1>=0 AND POS_S1>POS_E1,
(REF(C, POS_E1) - REF(C, POS_S1)) / REF(C, POS_S1) * 100, 0);
IDX1 := IF(POS_S1>=0 AND POS_E1>=0 AND POS_S1>POS_E1,
(REF(
INDE XC, POS_E1) - REF(INDEXC, POS_S1)) / REF(INDEXC, POS_S1) * 100, 0);
抗跌1 := IF(IDX1<>0, (STK1 - IDX1) / ABS(IDX1) * 抗跌权重1, 0); {个股相对大盘的超额收益}
{周期2: 2022.1 - 2022.4}
POS_S2 := BARSLAST(YEAR=2022 AND MONTH=1);
POS_E2 := BARSLAST(YEAR=2022 AND MONTH=4);
STK2 := IF(POS_S2>=0 AND POS_E2>=0 AND POS_S2>POS_E2,
(REF(C, POS_E2) - REF(C, POS_S2)) / REF(C, POS_S2) * 100, 0);
IDX2 := IF(POS_S2>=0 AND POS_E2>=0 AND POS_S2>POS_E2,
(REF(INDEXC, POS_E2) - REF(INDEXC, POS_S2)) / REF(INDEXC, POS_S2) * 100, 0);
抗跌2 := IF(IDX2<>0, (STK2 - IDX2) / ABS(IDX2) * 抗跌权重2, 0);
{周期3: 2018.1 - 2019.1}
POS_S3 := BARSLAST(YEAR=2018 AND MONTH=1);
POS_E3 := BARSLAST(YEAR=2019 AND MONTH=1);
STK3 := IF(POS_S3>=0 AND POS_E3>=0 AND POS_S3>POS_E3,
(REF(C, POS_E3) - REF(C, POS_S3)) / REF(C, POS_S3) * 100, 0);
IDX3 := IF(POS_S3>=0 AND POS_E3>=0 AND POS_S3>POS_E3,
(REF(INDEXC, POS_E3) - REF(INDEXC, POS_S3)) / REF(INDEXC, POS_S3) * 100, 0);
抗跌3 := IF(IDX3<>0, (STK3 - IDX3) / ABS(IDX3) * 抗跌权重3, 0);
{周期4: 2015.6 - 2016.1}
POS_S4 := BARSLAST(YEAR=2015 AND MONTH=6);
POS_E4 := BARSLAST(YEAR=2016 AND MONTH=1);
STK4 := IF(POS_S4>=0 AND POS_E4>=0 AND POS_S4>POS_E4,
(REF(C, POS_E4) - REF(C, POS_S4)) / REF(C, POS_S4) * 100, 0);
IDX4 := IF(POS_S4>=0 AND POS_E4>=0 AND POS_S4>POS_E4,
(REF(INDEXC, POS_E4) - REF(INDEXC, POS_S4)) / REF(INDEXC, POS_S4) * 100, 0);
抗跌4 := IF(IDX4<>0, (STK4 - IDX4) / ABS(IDX4) * 抗跌权重4, 0);
{抗跌总分}
测压得分 := (抗跌1>0) + (抗跌2>0) + (抗跌3>0) + (抗跌4>0); {统计正值得分个数}
{--------------4. 选股条件--------------}
选股 : 密度 >= 密度阈值 AND 测压得分 >= 测压最低分 AND RS > RS_MA;