下面的选股代码,逻辑是选择前日涨停,且前日之前16个工作日内只存在一次涨停。实际选股执行时,选不到股票。
[PEL] 复制代码 // ----------------------------
// 输入参数设置(中文命名)
// ----------------------------
INPUT:
N1(16, 2, 40, 1),
次新天数(366);
C1 := REF(C, 1);
// ----------------------------
// 核心逻辑计算
// ----------------------------
// 1. 主板判断
是否主板 := (STRLEFT(STKLABEL, 2) = '60' OR STRLEFT(STKLABEL, 2) = '00');
// 2. 次新股过滤
上市日期 := FINANCE(3);
当前日期 := FINANCE(0);
交易天数 := DATEDIFF(上市日期, 当前日期);
是否次新股 := 交易天数 <= 次新天数;
// 3. 涨跌停计算
是否ST:strfind(stkname,'st',1);//是否st
是否创业板 := STRLEFT(STKLABEL, 2) = '30';
是否科创板 := STRLEFT(STKLABEL, 3) = '688';
涨停幅度 := IF(是否ST,
IF(是否主板, 0.05, 0.10),
IF(是否主板, 0.1,
IF(是否创业板 OR 是否科创板, 0.2, 0.1)
)
);
涨停价 := ROUND((涨停幅度 + 1) * ROUND(C1 / 0.01)) / 100;
是否涨停 := 涨停价 = ROUNDS(c, 2);
// 4. T-2日涨停条件
T2日涨停 := REF(是否涨停, 2);
// 5. 统计T-3到T-17日涨停次数
涨停次数 := COUNT(REF(是否涨停, 3), N1);
前期N1一次涨停 := 涨停次数 = 1;
T2日涨停 AND 前期N1一次涨停
|