通达信盈利伴侣主图指标公式
VAR1:=BARSLAST(CURRBARSCOUNT=120);
VAR2:=CONST(IF(ISLASTBAR=1,HHV(HIGH,VAR1),0));
VAR3:=CONST(IF(ISLASTBAR=1,LLV(LOW,VAR1),0));
VAR4:=EMA(CLOSE,3)>EMA(CLOSE,21);
VAR5:=EMA(CLOSE,3)< EMA(CLOSE,21);
VAR6:=EMA(CLOSE,3)>EMA(CLOSE,8);
VAR7:=EMA(CLOSE,3)< EMA(CLOSE,8);
VAR8:=EMA(HHV(HIGH,1),8);
VAR9:=EMA(C,8)< REF(EMA(C,8),1) AND CLOSE< EMA(C,8);
VAR10:=IF(VAR8< REF(VAR8,1) OR VAR9,1,0);
VAR11:=SMA(MAX(C-REF(C,1),0),2,1)/SMA(Abs(C-REF(C,1)),2,1)*100;
VAR12:=VAR11< 45 AND REF(VAR11,1)>45;
VAR13:=VAR11< 20 AND REF(VAR11,1)>20;
VAR14:=COUNT(VAR10=1,4)=3 AND VAR10=0 AND O< C;
VAR15:=(VAR14 AND (C-REF(C,1))/REF(C,1)>0.065)*10>=10;
VAR16:=VAR15 OR ((C-REF(C,1))/REF(C,1)>0.065 AND (REF(VAR13,1) OR REF(VAR12,1)));
DRAWGBK(CLOSE>0,RGB(20,0,28),RGB(20,0,28),0,0,1);
高:IF(CURRBARSCOUNT<=120,VAR2,DRAWNULL),POINTDOT,COLORYELLOW;
压:IF(CURRBARSCOUNT<=120,VAR2-(VAR2-VAR3)*0.191,DRAWNULL),NODRAW,COLORMAGENTA;
平衡:IF(CURRBARSCOUNT<=120,VAR3+(VAR2-VAR3)/2,DRAWNULL),NODRAW,COLORYELLOW;
支撑:IF(CURRBARSCOUNT<=120,VAR3+(VAR2-VAR3)*0.191,DRAWNULL),NODRAW,COLORGREEN;
低:IF(CURRBARSCOUNT<=120,VAR3,DRAWNULL),POINTDOT,COLORGREEN;
天:BARSLAST(LOW=VAR3),NODRAW,COLORYELLOW;
STICKLINE(CURRBARSCOUNT<=120,平衡,平衡,3,(-1)),COLORWHITE;
STICKLINE(CURRBARSCOUNT<=120,压,压,3,(-1)),COLORRED;
STICKLINE(CURRBARSCOUNT<=120,支撑,支撑,3,(-1)),COLORGREEN;
DRAWTEXT(CURRBARSCOUNT=1,压,'压'),COLORRED;
DRAWTEXT(CURRBARSCOUNT=1,平衡,'平衡'),COLORWHITE;
DRAWTEXT(CURRBARSCOUNT=1,支撑,'支撑'),COLORYELLOW;
STICKLINE(VAR4,LOW,HIGH,0,0),COLOR0088EE;
STICKLINE(VAR4,CLOSE,OPEN,3,0),COLOR0055AA;
STICKLINE(VAR4,CLOSE,OPEN,2.8,0),COLOR0066BB;
STICKLINE(VAR4,CLOSE,OPEN,2.5,0),COLOR0077CC;
STICKLINE(VAR4,CLOSE,OPEN,2.2,0),COLOR0088DD;
STICKLINE(VAR4,CLOSE,OPEN,1.7,0),COLOR0099EE;
STICKLINE(VAR4,CLOSE,OPEN,1.2,0),COLOR00AAFF;
STICKLINE(VAR4,CLOSE,OPEN,0.7,0),COLOR00CCFF;
STICKLINE(VAR4,CLOSE,OPEN,0.2,0),COLORYELLOW;
STICKLINE(VAR5,HIGH,LOW,0,1),COLORGREEN;
STICKLINE(VAR5,CLOSE,OPEN,3.2,0),COLOR006600;
STICKLINE(VAR5,CLOSE,OPEN,2.6,0),COLOR008800;
STICKLINE(VAR5,CLOSE,OPEN,1.9,0),COLOR00AA00;
STICKLINE(VAR5,CLOSE,OPEN,1.1,0),COLOR00CC00;
STICKLINE(VAR5,CLOSE,OPEN,0.3,0),COLORGREEN;
STICKLINE(VAR5 AND VAR6,HIGH,LOW,0,1),COLORFF55FF;
STICKLINE(VAR5 AND VAR6,CLOSE,OPEN,3.2,0),COLOR880088;
STICKLINE(VAR5 AND VAR6,CLOSE,OPEN,2.6,0),COLORAA00AA;
STICKLINE(VAR5 AND VAR6,CLOSE,OPEN,1.9,0),COLORCC00CC;
STICKLINE(VAR5 AND VAR6,CLOSE,OPEN,1.1,0),COLOREE00EE;
STICKLINE(VAR5 AND VAR6,CLOSE,OPEN,0.3,0),COLORFF44FF;
STICKLINE(VAR4 AND VAR7,HIGH,LOW,0,1),COLORFF8800;
STICKLINE(VAR4 AND VAR7,CLOSE,OPEN,3.2,0),COLORFF2200;
STICKLINE(VAR4 AND VAR7,CLOSE,OPEN,2.6,0),COLORFF4400;
STICKLINE(VAR4 AND VAR7,CLOSE,OPEN,1.9,0),COLORFF6600;
STICKLINE(VAR4 AND VAR7,CLOSE,OPEN,1.1,0),COLORFF8800;
STICKLINE(VAR4 AND VAR7,CLOSE,OPEN,0.3,0),COLORFFAA00;
DRAWICON(VAR16,LOW,7);
STICKLINE(VAR16,LOW,LOW+(HIGH-LOW)/2,2.7,0),COLORYELLOW;
STICKLINE(VAR16,LOW+(HIGH-LOW)/2,HIGH,2.7,0),COLORRED;
通达信庄家成本探测主图指标公式
{1. 定义每日平均成交价格 PI = (开+收+高+低)/4}
N:=60;
PI:=(OPEN + CLOSE + HIGH + LOW) / 4;
{2. 计算加权成本}
总成交额:=SUM(PI * vol, N);
总成交量:=SUM(VOL, N);
{计算出的庄家持仓成本}
ZJ_COST: 总成交额 / 总成交量, COLORYELLOW, LINETHICK2;
{3. 绘制辅助线}
RISK_LINE: ZJ_COST * 1.3, COLORGREEN, DOTLINE;
SAFE_LINE: ZJ_COST * 0.95, COLORRED, DOTLINE;
{4. 盘面信号}
DRAWTEXT(ISLASTBAR, ZJ_COST, ' ←市场成本'), COLORYELLOW;
DRAWTEXT(ISLASTBAR, RISK_LINE, ' ←30%获利警戒'), COLORGREEN;
{k线染色}
STICKLINE(C < ZJ_COST, O, C, 2.5, 0), COLORLIRED;
{=============== 优化后的买入信号系统 ===============}
{========== 一、波动率自适应模块 ==========}
{用ATR替代固定百分比,适应不同波动环境}
ATR14:= MA(MAX(MAX(HIGH-LOW, Abs(HIGH-REF(C,1))), ABS(LOW-REF(C,1))), 14);
ATR_RATIO:= ATR14 / C; {波动率比率}
{动态安全区间:基于波动率调整}
动态安全线:= ZJ_COST * (1 - ATR_RATIO * 2);
动态压力线:= ZJ_COST * (1 + ATR_RATIO * 3);
{动态容差:用于判断"接近"成本线}
容差:= ATR14 * 0.5;
{========== 二、趋势判断模块 ==========}
MA5:= MA(C, 5);
MA20:= MA(C, 20);
MA60:= MA(C, 60);
{趋势状态判断}
强势上升:= MA5 > MA20 AND MA20 > MA60 AND C > MA5;
温和上升:= MA5 > MA20 AND C > MA20;
趋势走平:= ABS(MA20 - REF(MA20, 5)) / MA20 < 0.02;
下降趋势:= MA5 < MA20 AND MA20 < MA60;
{趋势拐点识别}
MA20拐头:= MA20 > REF(MA20, 1) AND REF(MA20, 1) <= REF(MA20, 2);
MA5上穿MA20:= crOSS(MA5, MA20);
价格站上MA20:= CROSS(C, MA20) AND MA20 >= REF(MA20, 3);
{趋势得分:用于加权判断}
趋势得分:= IF(强势上升, 3, IF(温和上升, 2, IF(趋势走平, 1, 0)));
{========== 三、动能确认模块 ==========}
{macd动能}
DIF:= EMA(C, 12) - EMA(C, 26);
DEA:= EMA(DIF, 9);
MACD柱:= (DIF - DEA) * 2;
MACD金叉:= CROSS(DIF, DEA);
MACD柱转正:= MACD柱 > 0 AND REF(MACD柱, 1) <= 0;
DIF上穿零轴:= CROSS(DIF, 0);
MACD底背离:= C < REF(C, 10) AND DIF > REF(DIF, 10) AND DIF < 0;
{rsi动能}
LC:= REF(C, 1);
RSI6:= SMA(MAX(C-LC, 0), 6, 1) / SMA(ABS(C-LC), 6, 1) * 100;
RSI超卖回升:= RSI6 > REF(RSI6, 1) AND REF(RSI6, 1) < 30;
RSI金叉50:= CROSS(RSI6, 50);
{量能动能}
量比:= VOL / MA(VOL, 20);
放量:= 量比 > 1.2;
温和放量:= 量比 > 0.8 AND 量比 < 2.5;
缩量企稳:= 量比 < 0.8 AND C >= O AND C >= REF(C, 1);
{动能综合得分}
动能得分:= IF(MACD金叉, 2, 0) + IF(RSI超卖回升, 1, 0) + IF(放量, 1, 0) + IF(MACD柱转正, 1, 0);
{========== 四、相对位置模块 ==========}
{相对于近期高低点的位置}
N20_HIGH:= HHV(H, 20);
N20_LOW:= LLV(L, 20);
N60_HIGH:= HHV(H, 60);
N60_LOW:= LLV(L, 60);
{位置百分比:0=最低点,100=最高点}
位置20:= (C - N20_LOW) / (N20_HIGH - N20_LOW + 0.01) * 100;
位置60:= (C - N60_LOW) / (N60_HIGH - N60_LOW + 0.01) * 100;
{相对成本线位置}
成本偏离:= (C - ZJ_COST) / ZJ_COST * 100;
接近成本线:= ABS(C - ZJ_COST) <= 容差;
低于成本线:= C < ZJ_COST;
深度低于成本:= C < 动态安全线;
{位置状态}
低位区:= 位置20 < 30 AND 位置60 < 40;
中位区:= 位置20 >= 30 AND 位置20 <= 70;
高位区:= 位置20 > 70 OR C > 动态压力线;
{========== 五、K线形态确认 ==========}
{阳线确认}
阳线:= C > O;
大阳线:= C > O AND (C - O) > ATR14 * 0.8;
锤子线:= (MIN(O, C) - L) > (ABS(C - O) * 2) AND (H - MAX(O, C)) < ABS(C - O);
吞没形态:= C > O AND C > REF(O, 1) AND O < REF(C, 1) AND REF(C, 1) < REF(O, 1);
{止跌信号}
止跌企稳:= REF(C, 1) < REF(C, 2) AND C >= REF(C, 1) AND L <= REF(L, 1);
{========== 六、综合买入信号 ==========}
{--- 信号类型A:趋势确认型(拐点突破)---}
信号A:= (MA5上穿MA20 OR MA20拐头 OR 价格站上MA20)
AND 低于成本线
AND (MACD金叉 OR MACD柱转正 OR DIF上穿零轴)
AND 温和放量
AND NOT (高位区);
{--- 信号类型B:支撑反弹型(成本线支撑)---}
信号B:= 接近成本线
AND (阳线 OR 锤子线 OR 吞没形态)
AND (趋势得分 >= 1 OR MA20拐头)
AND (动能得分 >= 1)
AND NOT (下降趋势)
AND NOT (高位区);
{--- 信号类型C:超跌反弹型(深度回调)---}
信号C:= 深度低于成本
AND (RSI超卖回升 OR MACD底背离)
AND (阳线 OR 止跌企稳)
AND (放量 OR 缩量企稳)
AND 低位区;
{--- 信号类型D:强势回踩型(趋势延续)---}
信号D:= 强势上升
AND REF(L, 1) <= MA20 AND C > MA20
AND 阳线
AND 温和放量
AND 成本偏离 < 20;
{========== 七、信号过滤与输出 ==========}
{合并原始信号}
原始信号:= 信号A OR 信号B OR 信号C OR 信号D;
{过滤1:趋势保护 - 强下降趋势中只接受信号C}
趋势过滤:= IF(下降趋势, 信号C, 原始信号);
{过滤2:位置保护 - 高位不发信号}
位置过滤:= 趋势过滤 AND NOT (高位区) AND C < RISK_LINE;
{过滤3:密集过滤 - 10根K线内只取第一个}
密集过滤:= 位置过滤 AND COUNT(位置过滤, 10) = 1;
{最终买入信号}
买入信号:= 密集过滤;
{========== 八、绘制标注 ==========}
{买入标注}
DRAWTEXT(买入信号, LOW * 0.97, '买'), COLORRED;
DRAWICON(买入信号, LOW * 0.96, 1);
{可选:显示信号类型}
DRAWTEXT(买入信号 AND 信号A, LOW * 0.94, '拐'), COLORYELLOW;
DRAWTEXT(买入信号 AND 信号B AND NOT (信号A), LOW * 0.94, '撑'), COLORWHITE;
DRAWTEXT(买入信号 AND 信号C AND NOT (信号A) AND NOT (信号B), LOW * 0.94, '超'), COLORCYAN;
DRAWTEXT(买入信号 AND 信号D AND NOT (信号A) AND NOT (信号B) AND NOT (信号C), LOW * 0.94, '强'), COLORMAGENTA;
DRAWTEXT_FIX(ISLASTBAR, 0.00, 0.00, 0,
STRCAT('所属: ', STRCAT(HYBLOCK, STRCAT(' ', STRCAT(DYBLOCK, STRCAT(' ', GNBLOCK)))))),COLORYELLOW;

