乐于分享
好东西不私藏

【文华财经指标公式源码 】三连阳你敢追吗?量能确认才是关键

【文华财经指标公式源码 】三连阳你敢追吗?量能确认才是关键
免费订阅,标星置顶 以防丢失做好强势超短

指标分享:

注意本指标源码用于本指标源码用于文华财经赢顺wh6、睿期wh7、

===========================================

温馨提示:交易市场有高度不确定性,本文仅供知识分享和交流学习使用,不构成任何投资建议,也不应作为投资依据。投资有风险,请谨慎决策。

当前周期 := PERIOD; 

// 1. KD指标周期自适应

KD_N_ADAPTIVE := 

    IF(当前周期 = 8, 9,        // 日线: 9

    IF(当前周期 = 14, 9,      // 4小时: 9

    IF(当前周期 = 7, 9,       // 1小时: 9

    IF(当前周期 = 5, 9,       // 15分钟: 9

    IF(当前周期 = 4, 9,       // 5分钟: 9

    9)))));

// 2. RSI指标周期自适应

RSI1_PERIOD_ADAPTIVE :=

    IF(当前周期 = 8, 7,       // 日线: 7

    IF(当前周期 = 14, 7,      // 4小时: 7

    IF(当前周期 = 7, 7,       // 1小时: 7

    IF(当前周期 = 5, 7,       // 15分钟: 7

    IF(当前周期 = 4, 7,       // 5分钟: 7

    7)))));

RSI2_PERIOD_ADAPTIVE :=

    IF(当前周期 = 8, 14,      // 日线: 14

    IF(当前周期 = 14, 14,     // 4小时: 14

    IF(当前周期 = 7, 14,      // 1小时: 14

    IF(当前周期 = 5, 14,      // 15分钟: 14

    IF(当前周期 = 4, 14,      // 5分钟: 14

    14)))));

// 3. MACD指标周期自适应

MACD_SHORT_ADAPTIVE :=

    IF(当前周期 = 8, 12,      // 日线: 12

    IF(当前周期 = 14, 12,     // 4小时: 12

    IF(当前周期 = 7, 12,      // 1小时: 12

    IF(当前周期 = 5, 12,      // 15分钟: 12

    IF(当前周期 = 4, 12,      // 5分钟: 12

    12)))));

MACD_LONG_ADAPTIVE :=

    IF(当前周期 = 8, 26,      // 日线: 26

    IF(当前周期 = 14, 26,     // 4小时: 26

    IF(当前周期 = 7, 26,      // 1小时: 26

    IF(当前周期 = 5, 26,      // 15分钟: 26

    IF(当前周期 = 4, 26,      // 5分钟: 26

    26)))));

MACD_MID_ADAPTIVE :=

    IF(当前周期 = 8, 9,       // 日线: 9

    IF(当前周期 = 14, 9,      // 4小时: 9

    IF(当前周期 = 7, 9,       // 1小时: 9

    IF(当前周期 = 5, 9,       // 15分钟: 9

    IF(当前周期 = 4, 9,       // 5分钟: 9

    9)))));

// 4. 布林带/BBIBOLL周期自适应

BBIBOLL_MA1_ADAPTIVE :=

    IF(当前周期 = 8, 3,       // 日线: 3

    IF(当前周期 = 14, 3,      // 4小时: 3

    IF(当前周期 = 7, 3,       // 1小时: 3

    IF(当前周期 = 5, 3,       // 15分钟: 3

    IF(当前周期 = 4, 3,       // 5分钟: 3

    3)))));

BBIBOLL_MA2_ADAPTIVE :=

    IF(当前周期 = 8, 6,       // 日线: 6

    IF(当前周期 = 14, 6,      // 4小时: 6

    IF(当前周期 = 7, 6,       // 1小时: 6

    IF(当前周期 = 5, 6,       // 15分钟: 6

    IF(当前周期 = 4, 6,       // 5分钟: 6

    6)))));

BBIBOLL_MA3_ADAPTIVE :=

    IF(当前周期 = 8, 12,      // 日线: 12

    IF(当前周期 = 14, 12,     // 4小时: 12

    IF(当前周期 = 7, 12,      // 1小时: 12

    IF(当前周期 = 5, 12,      // 15分钟: 12

    IF(当前周期 = 4, 12,      // 5分钟: 12

    12)))));

BBIBOLL_MA4_ADAPTIVE :=

    IF(当前周期 = 8, 24,      // 日线: 24

    IF(当前周期 = 14, 24,     // 4小时: 24

    IF(当前周期 = 7, 24,      // 1小时: 24

    IF(当前周期 = 5, 24,      // 15分钟: 24

    IF(当前周期 = 4, 24,      // 5分钟: 24

    24)))));

// 6. 动态布林带参数

BOLL_N_PERIOD :=

    IF(当前周期 = 8, 20,      // 日线: 20

    IF(当前周期 = 14, 20,     // 4小时: 20

    IF(当前周期 = 7, 20,      // 1小时: 20

    IF(当前周期 = 5, 20,      // 15分钟: 20

    IF(当前周期 = 4, 20,      // 5分钟: 20

    20)))));

BOLL_K_TIMES :=

    IF(当前周期 = 8, 2.0,     // 日线: 2.0

    IF(当前周期 = 14, 2.0,    // 4小时: 2.0

    IF(当前周期 = 7, 2.0,     // 1小时: 2.0

    IF(当前周期 = 5, 2.0,     // 15分钟: 2.0

    IF(当前周期 = 4, 2.0,     // 5分钟: 2.0

    2.0)))));

// 7. 均线周期自适应

EMA5_PERIOD :=

    IF(当前周期 = 8, 5,       // 日线: 5

    IF(当前周期 = 14, 5,      // 4小时: 5

    IF(当前周期 = 7, 5,       // 1小时: 5

    IF(当前周期 = 5, 5,       // 15分钟: 5

    IF(当前周期 = 4, 5,       // 5分钟: 5

    5)))));

EMA10_PERIOD :=

    IF(当前周期 = 8, 10,      // 日线: 10

    IF(当前周期 = 14, 10,     // 4小时: 10

    IF(当前周期 = 7, 10,      // 1小时: 10

    IF(当前周期 = 5, 10,      // 15分钟: 10

    IF(当前周期 = 4, 10,      // 5分钟: 10

    10)))));

MA20_PERIOD_FS :=

    IF(当前周期 = 8, 20,      // 日线: 20

    IF(当前周期 = 14, 20,     // 4小时: 20

    IF(当前周期 = 7, 20,      // 1小时: 20

    IF(当前周期 = 5, 20,      // 15分钟: 20

    IF(当前周期 = 4, 20,      // 5分钟: 20

    20)))));

// 8. 成交量均线周期自适应

VOLMA5_PERIOD :=

    IF(当前周期 = 8, 5,       // 日线: 5

    IF(当前周期 = 14, 5,      // 4小时: 5

    IF(当前周期 = 7, 5,       // 1小时: 5

    IF(当前周期 = 5, 5,       // 15分钟: 5

    IF(当前周期 = 4, 5,       // 5分钟: 5

    5)))));

// 9. 新增6条均线的周期自适应 (用户要求融合)

EMA6_PERIOD_ADAPTIVE :=

    IF(当前周期 = 8, 12,       // 日线: 12

    IF(当前周期 = 14, 10,      // 4小时: 10

    IF(当前周期 = 7, 8,       // 1小时: 8

    IF(当前周期 = 5, 7,       // 15分钟: 7

    IF(当前周期 = 4, 6,       // 5分钟: 6

    6)))));                   // 默认值

EMA10_PERIOD_ADAPTIVE :=

    IF(当前周期 = 8, 20,      // 日线: 20

    IF(当前周期 = 14, 15,     // 4小时: 15

    IF(当前周期 = 7, 12,      // 1小时: 12

    IF(当前周期 = 5, 10,      // 15分钟: 10

    IF(当前周期 = 4, 10,      // 5分钟: 10

    10)))));                  // 默认值

EMA35_PERIOD_ADAPTIVE :=

    IF(当前周期 = 8, 70,      // 日线: 70

    IF(当前周期 = 14, 50,     // 4小时: 50

    IF(当前周期 = 7, 40,      // 1小时: 40

    IF(当前周期 = 5, 35,      // 15分钟: 35

    IF(当前周期 = 4, 30,      // 5分钟: 30

    35)))));                  // 默认值

MA60_PERIOD_ADAPTIVE :=

    IF(当前周期 = 8, 120,     // 日线: 120

    IF(当前周期 = 14, 90,     // 4小时: 90

    IF(当前周期 = 7, 70,      // 1小时: 70

    IF(当前周期 = 5, 60,      // 15分钟: 60

    IF(当前周期 = 4, 50,      // 5分钟: 50

    60)))));                  // 默认值

EMA55_PERIOD_ADAPTIVE :=

    IF(当前周期 = 8, 110,     // 日线: 110

    IF(当前周期 = 14, 80,     // 4小时: 80

    IF(当前周期 = 7, 65,      // 1小时: 65

    IF(当前周期 = 5, 55,      // 15分钟: 55

    IF(当前周期 = 4, 45,      // 5分钟: 45

    55)))));                  // 默认值

EMA85_PERIOD_ADAPTIVE :=

    IF(当前周期 = 8, 170,     // 日线: 170

    IF(当前周期 = 14, 120,    // 4小时: 120

    IF(当前周期 = 7, 100,     // 1小时: 100

    IF(当前周期 = 5, 85,      // 15分钟: 85

    IF(当前周期 = 4, 70,      // 5分钟: 70

    85)))));                  // 默认值

// 5. 分水岭共振系统参数自适应

分水岭周期_ADAPTIVE :=

    IF(当前周期 = 8, 10,      // 日线: 10

    IF(当前周期 = 14, 8,      // 4小时: 8

    IF(当前周期 = 7, 5,       // 1小时: 5

    IF(当前周期 = 5, 5,       // 15分钟: 5

    IF(当前周期 = 4, 3,       // 5分钟: 3

    10)))));

斜率周期_ADAPTIVE :=

    IF(当前周期 = 8, 3,       // 日线: 3

    IF(当前周期 = 14, 2,      // 4小时: 2

    IF(当前周期 = 7, 1,       // 1小时: 1

    IF(当前周期 = 5, 1,       // 15分钟: 1

    IF(当前周期 = 4, 1,       // 5分钟: 1

    3)))));

VOLMA3_PERIOD :=

    IF(当前周期 = 8, 3,       // 日线: 3

    IF(当前周期 = 14, 3,      // 4小时: 3

    IF(当前周期 = 7, 3,       // 1小时: 3

    IF(当前周期 = 5, 3,       // 15分钟: 3

    IF(当前周期 = 4, 3,       // 5分钟: 3

    3)))));

//========= 第二部分:多品种识别与参数融合 (精简62品种版) =========

品种代码:=IF(NAMELIKE('聚丙烯'),1,

            IF(NAMELIKE('沪铝'),2,

            IF(NAMELIKE('沪锌'),3,

            IF(NAMELIKE('沪铅'),4,

            IF(NAMELIKE('沪镍'),5,

            IF(NAMELIKE('氧化铝'),6,

            IF(NAMELIKE('工业硅'),7,

            IF(NAMELIKE('多晶硅'),8,

            IF(NAMELIKE('碳酸锂'),9,

            IF(NAMELIKE('热卷'),10,

            IF(NAMELIKE('螺纹'),11,

            IF(NAMELIKE('不锈钢'),12,

            IF(NAMELIKE('锰硅'),13,

            IF(NAMELIKE('焦煤'),14,

            IF(NAMELIKE('玻璃'),15,

            IF(NAMELIKE('纸浆'),16,

            IF(NAMELIKE('原木'),17,

            IF(NAMELIKE('燃料油'),18,

            IF(NAMELIKE('LU燃油'),19,

            IF(NAMELIKE('沥青'),20,

            IF(NAMELIKE('液化气'),21,

            IF(NAMELIKE('PTA'),22,

            IF(NAMELIKE('PVC'),23,

            IF(NAMELIKE('BR橡胶'),24,

            IF(NAMELIKE('橡胶'),25,

            IF(NAMELIKE('20号胶'),26,

            IF(NAMELIKE('塑料'),27,

            IF(NAMELIKE('短纤'),28,

            IF(NAMELIKE('瓶片'),29,

            IF(NAMELIKE('乙二醇'),30,

            IF(NAMELIKE('甲醇'),31,

            IF(NAMELIKE('丙烯'),32,

            IF(NAMELIKE('纯苯'),33,

            IF(NAMELIKE('苯乙烯'),34,

            IF(NAMELIKE('尿素'),35,

            IF(NAMELIKE('纯碱'),36,

            IF(NAMELIKE('对二甲苯'),37,

            IF(NAMELIKE('烧碱'),38,

            IF(NAMELIKE('豆一'),39,

            IF(NAMELIKE('豆二'),40,

            IF(NAMELIKE('豆粕'),41,

            IF(NAMELIKE('豆油'),42,

            IF(NAMELIKE('菜籽粕'),43,

            IF(NAMELIKE('菜籽油'),44,

            IF(NAMELIKE('棕榈油'),45,

            IF(NAMELIKE('花生'),46,

            IF(NAMELIKE('玉米'),47,

            IF(NAMELIKE('淀粉'),48,

            IF(NAMELIKE('棉花'),49,

            IF(NAMELIKE('白糖'),50,

            IF(NAMELIKE('鸡蛋'),51,

            IF(NAMELIKE('生猪'),52,

            IF(NAMELIKE('苹果'),53,

            IF(NAMELIKE('红枣'),54,

            IF(NAMELIKE('集运欧线'),55,

            IF(NAMELIKE('铁矿'),56,

            IF(NAMELIKE('铜'),57,

            IF(NAMELIKE('锌'),58,

            IF(NAMELIKE('锡'),59,

            IF(NAMELIKE('黄金'),60,

            IF(NAMELIKE('白银'),61,

            IF(NAMELIKE('原油'),62,

            99

            ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));

VOL_MUL:=IF(品种代码=1,1.5,   // 聚丙烯

           IF(品种代码=2,1.4, // 沪铝

           IF(品种代码=3,1.6, // 沪锌

           IF(品种代码=4,1.7, // 沪铅

           IF(品种代码=5,1.8, // 沪镍

           IF(品种代码=6,1.4, // 氧化铝

           IF(品种代码=7,1.6, // 工业硅

           IF(品种代码=8,1.7, // 多晶硅

           IF(品种代码=9,1.9, // 碳酸锂

           IF(品种代码=10,1.5,// 热卷

           IF(品种代码=11,1.6,// 螺纹钢

           IF(品种代码=12,1.5,// 不锈钢

           IF(品种代码=13,1.7,// 锰硅

           IF(品种代码=14,1.7,// 焦煤

           IF(品种代码=15,1.4,// 玻璃

           IF(品种代码=16,1.3,// 纸浆

           IF(品种代码=17,1.8,// 原木

           IF(品种代码=18,1.5,// 燃料油

           IF(品种代码=19,1.5,// LU燃油

           IF(品种代码=20,1.4,// 沥青

           IF(品种代码=21,1.6,// 液化气

           IF(品种代码=22,1.4,// PTA

           IF(品种代码=23,1.3,// PVC

           IF(品种代码=24,1.5,// BR橡胶

           IF(品种代码=25,1.5,// 橡胶

           IF(品种代码=26,1.5,// 20号胶

           IF(品种代码=27,1.4,// 塑料

           IF(品种代码=28,1.6,// 短纤

           IF(品种代码=29,1.4,// 瓶片

           IF(品种代码=30,1.5,// 乙二醇

           IF(品种代码=31,1.4,// 甲醇

           IF(品种代码=32,1.7,// 丙烯

           IF(品种代码=33,1.6,// 纯苯

           IF(品种代码=34,1.5,// 苯乙烯

           IF(品种代码=35,1.4,// 尿素

           IF(品种代码=36,1.5,// 纯碱

           IF(品种代码=37,1.6,// 对二甲苯

           IF(品种代码=38,1.7,// 烧碱

           IF(品种代码=39,1.3,// 豆一

           IF(品种代码=40,1.4,// 豆二

           IF(品种代码=41,1.3,// 豆粕

           IF(品种代码=42,1.4,// 豆油

           IF(品种代码=43,1.3,// 菜籽粕

           IF(品种代码=44,1.4,// 菜籽油

           IF(品种代码=45,1.5,// 棕榈油

           IF(品种代码=46,1.6,// 花生

           IF(品种代码=47,1.2,// 玉米

           IF(品种代码=48,1.3,// 淀粉

           IF(品种代码=49,1.4,// 棉花

           IF(品种代码=50,1.4,// 白糖

           IF(品种代码=51,1.7,// 鸡蛋

           IF(品种代码=52,1.8,// 生猪

           IF(品种代码=53,1.7,// 苹果

           IF(品种代码=54,1.6,// 红枣

           IF(品种代码=55,1.9,// 集运欧线

           IF(品种代码=56,1.7,// 铁矿

           IF(品种代码=57,1.4,// 铜

           IF(品种代码=58,1.5,// 锌

           IF(品种代码=59,1.5,// 锡

           IF(品种代码=60,1.3,// 黄金

           IF(品种代码=61,1.4,// 白银

           IF(品种代码=62,1.8,// 原油

           1.3

          ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));

//========= 第十三部分:三连阳/三连阴信号(新增)=========

// 参数(可在此处修改)

MA20_FS := MA(CLOSE, MA20_PERIOD_FS),NODRAW;

BODY_MIN_RATIO := 0.3;      // 阳线/阴线最小实体比例(相对10日均值)

EXIT_BARS := 5;             // 三连阳/三连阴后离场信号有效窗口(K线根数)

// 计算平均实体长度

AVG_BODY := MA(ABS(CLOSE-OPEN), 10);

// --- 多头部分:试多 ---

// 有效阳线:阳线 + 非跳空高开 + 实体足够大

IS_VALID_UP := CLOSE>OPEN 

               && OPEN<=REF(HIGH,1)          // 排除跳空高开

               && (CLOSE-OPEN)>AVG_BODY*BODY_MIN_RATIO;

// 成交量条件:第三根阳线成交量 > 第一根阳线成交量 * VOL_MUL(使用品种自适应系数)

VOL_COND_UP := VOL>REF(VOL,2)*VOL_MUL;

// 三连阳信号

THREE_UP := REF(IS_VALID_UP,2) 

            && REF(IS_VALID_UP,1) 

            && IS_VALID_UP 

            && VOL_COND_UP;

// 大阴线定义(用于离场)

BIG_DOWN := CLOSE<OPEN && (OPEN-CLOSE)>AVG_BODY*1.5;

// 多头离场条件:大阴线且收盘跌破均线(使用原系统的MA20_FS)

EXIT_LONG_COND := BIG_DOWN && CROSS(MA20_FS, CLOSE);

// 多头离场信号:当前满足离场条件,且之前EXIT_BARS根K线内出现过三连阳

EXIT_LONG := EXIT_LONG_COND && EXIST(REF(THREE_UP,1), EXIT_BARS);

// --- 空头部分:试空 ---

// 有效阴线:阴线 + 非跳空低开 + 实体足够大

IS_VALID_DOWN := CLOSE<OPEN 

                 && OPEN>=REF(LOW,1)         // 排除跳空低开

                 && (OPEN-CLOSE)>AVG_BODY*BODY_MIN_RATIO;

// 成交量条件:第三根阴线成交量 > 第一根阴线成交量 * VOL_MUL

VOL_COND_DOWN := VOL>REF(VOL,2)*VOL_MUL;

// 三连阴信号

THREE_DOWN := REF(IS_VALID_DOWN,2) 

              && REF(IS_VALID_DOWN,1) 

              && IS_VALID_DOWN 

              && VOL_COND_DOWN;

// 大阳线定义(用于空头离场)

BIG_UP := CLOSE>OPEN && (CLOSE-OPEN)>AVG_BODY*1.5;

// 空头离场条件:大阳线且收盘站上均线

EXIT_SHORT_COND := BIG_UP && CROSS(CLOSE, MA20_FS);

// 空头离场信号:当前满足离场条件,且之前EXIT_BARS根K线内出现过三连阴

EXIT_SHORT := EXIT_SHORT_COND && EXIST(REF(THREE_DOWN,1), EXIT_BARS);

// --- 绘制信号 ---

// 仅在最后10根K线内绘制

最后10根K线:=1;

DRAWTEXT(最后10根K线 AND THREE_UP, LOW*0.9999, '试多▲'),RGB(255,255,255), FONTSIZE20;

DRAWTEXT(最后10根K线 AND EXIT_LONG, HIGH*1, '多离▼'),RGB(255,0,255),COLORRED, FONTSIZE20;

DRAWTEXT(最后10根K线 AND THREE_DOWN, HIGH*1.022, '试空▼'),RGB(128,255,0), FONTSIZE20;

DRAWTEXT(最后10根K线 AND EXIT_SHORT, LOW*0.9999, '空离▲'),RGB(128,255,0), FONTSIZE20;