// 参数定义
N1:=0.25; // 第一压力支撑系数
N2:=0.5; // 第二压力支撑系数
// 获取当天开盘价
OPEN_PRICE:=VALUEWHEN(DAYBARPOS=1, O);
// 计算当天最高价和最低价
DAY_HIGH:=HHV(H, DAYBARPOS);
DAY_LOW:=LLV(L, DAYBARPOS);
// 计算波动幅度
RANGEE:=DAY_HIGH – DAY_LOW;
// 计算压力支撑位
FIRST_RESIST:=OPEN_PRICE + RANGEE * N1; // 第一压力位
FIRST_SUPPORT:=OPEN_PRICE – RANGEE * N1; // 第一支撑位
SECOND_RESIST:=OPEN_PRICE + RANGEE * N2; // 第二压力位
SECOND_SUPPORT:=OPEN_PRICE – RANGEE * N2; // 第二支撑位
KEY_HIGH:=DAY_HIGH; // 关键极值压力
KEY_LOW:=DAY_LOW; // 关键极值支撑
// 计算ATR值(用于文字偏移)
TR := MAX(MAX((HIGH – LOW), ABS(REF(CLOSE, 1) – HIGH)), ABS(REF(CLOSE, 1) – LOW));
ATR_VAL:=MA(TR, 14);
// 绘制压力支撑线条
DRAWSL(ISLASTBAR, FIRST_RESIST, 0, 30, 0, COLORRED), DASH; // 第一压力位(红色虚线)
DRAWSL(ISLASTBAR, FIRST_SUPPORT, 0, 30, 0, COLORGREEN), DASH; // 第一支撑位(绿色虚线)
DRAWSL(ISLASTBAR, SECOND_RESIST, 0, 30, 0, COLORRED); // 第二压力位(红色实线)
DRAWSL(ISLASTBAR, SECOND_SUPPORT, 0, 30, 0, COLORGREEN); // 第二支撑位(绿色实线)
DRAWSL(ISLASTBAR, KEY_HIGH, 0, 30, 0, COLORRED), LINETHICK2; // 关键极值压力(红色粗线)
DRAWSL(ISLASTBAR, KEY_LOW, 0, 30, 0, COLORGREEN), LINETHICK2; // 关键极值支撑(绿色粗线)
// 标注文字和数值
DRAWTEXT(ISLASTBAR, FIRST_RESIST+ATR_VAL*0.2, ‘第一压力’), COLORRED;
DRAWNUMBER1(ISLASTBAR, FIRST_RESIST+ATR_VAL*0.2, FIRST_RESIST, 2), COLORRED;
DRAWTEXT(ISLASTBAR, FIRST_SUPPORT-ATR_VAL*0.2, ‘第一支撑’), COLORGREEN;
DRAWNUMBER1(ISLASTBAR, FIRST_SUPPORT-ATR_VAL*0.2, FIRST_SUPPORT, 2), COLORGREEN;
DRAWTEXT(ISLASTBAR, SECOND_RESIST+ATR_VAL*0.4, ‘第二压力’), COLORRED;
DRAWNUMBER1(ISLASTBAR, SECOND_RESIST+ATR_VAL*0.4, SECOND_RESIST, 2), COLORRED;
DRAWTEXT(ISLASTBAR, SECOND_SUPPORT-ATR_VAL*0.4, ‘第二支撑’), COLORGREEN;
DRAWNUMBER1(ISLASTBAR, SECOND_SUPPORT-ATR_VAL*0.4, SECOND_SUPPORT, 2), COLORGREEN;
DRAWTEXT(ISLASTBAR, KEY_HIGH+ATR_VAL*0.6, ‘极值压力’), COLORRED;
DRAWNUMBER1(ISLASTBAR, KEY_HIGH+ATR_VAL*0.6, KEY_HIGH, 2), COLORRED;
DRAWTEXT(ISLASTBAR, KEY_LOW-ATR_VAL*0.6, ‘极值支撑’), COLORGREEN;
DRAWNUMBER1(ISLASTBAR, KEY_LOW-ATR_VAL*0.6, KEY_LOW, 2), COLORGREEN;

