STICKLINE(C >= O, H, L, 0, 1), COLORRED; { 绘制阳线影线,宽度0,实心填充 }
STICKLINE(C >= O, C, O, 3, 0), COLORRED; { 绘制阳线实体,宽度3 }
{ 绘制黄K线(阴线) }
STICKLINE(C < O, H, L, 0, 0), COLORFFFF00; { 绘制阴线影线,宽度0,空心填充 }
STICKLINE(C < O, C, O, 3, 0), COLORFFFF00; { 绘制阴线实体,宽度3 }
{------------------ 均线系统模块 ------------------}
HG7: MA(CLOSE, 5); { 5日均线 }
HG37 := MA(CLOSE, 10); { 10日均线 }
HG80: MA(CLOSE, 20); { 20日均线 }
HG43: MA(CLOSE, 30); { 30日均线 }
HG44: MA(CLOSE, 60); { 60日均线 }
HG84 := MA(CLOSE, 120); { 120日均线
{------------------ 均线斜率模块 ------------------}
{ 计算各均线2日斜率(百分比变化) }
HG7XL := SLOPE(HG7, 2) * 100; { 5日均线斜率 }
HG37XL := SLOPE(HG37, 2) * 100; { 10日均线斜率 }
HG80XL := SLOPE(HG80, 2) * 100; { 20日均线斜率 }
HG43XL := SLOPE(HG43, 2) * 100; { 30日均线斜率 }
HG44XL := SLOPE(HG44, 2) * 100; { 60日均线斜率 }
HG84XL := SLOPE(HG84, 2) * 100; { 120日均线斜率 }
{ 判断中长周期均线是否全部向上 }
HG59 := HG80XL > 0 AND HG43XL > 0 AND HG44XL > 0 AND HG84XL > 0;
{------------------ 成交量分析模块 ------------------}
HG10 := VOL / ((H - L) * 2 - ABS(C - O)); { 基于价格波动的成交量分布系数 }
{ 计算分时买入/卖出成交量 }
HG64 := IF(C > OPEN, HG10 * (HIGH - LOW), { 阳线时买入成交量 }
IF(C < OPEN, HG10 * ((HIGH - OPEN) + (C - LOW)), VOL / 2));
HG81 := IF(C > OPEN, 0 - HG10 * ((HIGH - C) + (OPEN - LOW)), { 阴线时卖出成交量 }
IF(C < OPEN, 0 - HG10 * (HIGH - LOW), 0 - VOL / 2));
HG34 := (HG64 + HG81) / 99; { 标准化后的净成交量 }
{------------------ 涨停板分析模块 ------------------}
HG3 := (C / REF(C, 1) - 1) * 100; { 当日涨幅百分比 }
HG85 := AMOUNT / 10000; { 成交额(单位:万元) }
HG30 := HG34 / HG85 * 100; { 成交量与成交额比率 }
HG14 := (C / REF(C, 1) - 1) * 100 > 9.82 AND H = C AND H <> L; { 涨停板条件 }
HG97 := BARSLAST(HG14); { 最近一次涨停距今周期数 }
HG25:=REF(BARSLAST(HG14),1);
{------------------ 买入信号模块 ------------------}
{ 条件1:突破涨停日收盘价 }
HG6 := REF(C, HG97); { 最近涨停日的收盘价 }
HG13 := CROSS(C, HG6) AND C > O AND C > REF(C, 1)
AND HG25 >= 3 AND HG25 <= 10; { 突破涨停价且满足时间窗口 }
HG13A := FILTER(HG13, 30); { 信号过滤(30周期内唯一)}
{ 条件2:突破调整后的涨停价(HG6-0.01) }
HG2 := HG6 - 0.01;
HG13B := CROSS(C, HG2) AND C > O AND C > REF(C, 1)
AND HG25 >= 3 AND HG25 <= 10 AND H = C; { 严格突破且收于最高价 }
HG21 := FILTER(HG13B, 30), COLORMAGENTA; { 信号过滤并标记品红色 }
{ 条件3:突破涨停价调整比例位 }
HG99 := REF(O, HG97); { 最近涨停日开盘价 }
HG56 := HG99 + (HG6 - HG99) * 0.7; { 涨停价向下30%位置 }
HG13C := CROSS(C, HG56) AND C > O AND C > REF(C, 1)
AND HG25 >= 3 AND HG25 <= 10; { 突破调整位 }
HG48 := FILTER(HG13C, 30), COLORMAGENTA; { 信号过滤并标记品红色 }
{ 综合买入信号 }
HG68 := HG13A OR HG21 OR HG48;
{------------------ 信号标记模块 ------------------}
{ 当满足买入条件且均线多头排列时,在K线下方标记图标 }
DRAWICON(HG68 AND HG59 AND C > HG80 AND C > HG84, L * 0.95, 23);