📅 财经日历 📊 实时波动 📈 大盘云图 📶 行情走势 🆚 投机情绪 🚀 今日热点

    求指标源码

    baofu LV4
    2019-02-22 · 6306 阅读
    悬赏20金币未解决
    求图片中的压力支撑指标源码

    ""
    还没有人打赏,支持一下
    回复

    举报

     

    回答|共 4 个

    601182029 LV2

    发表于 2019-2-24 11:39:58 | 显示全部楼层

    1. /*
    2.    Generated by EX4-TO-MQ4 decompiler FREEWARE V4.0.451.1 [-]
    3.    Website: http://www.metaquotes.net
    4.    E-mail : support@metaquotes.net
    5. */

    6. #property indicator_chart_window
    7. #property indicator_buffers 2
    8. #property indicator_color1 Black
    9. #property indicator_color2 Black

    10. extern int forced_tf = 0;
    11. extern bool use_narrow_bands = TRUE;
    12. extern bool kill_retouch = TRUE;
    13. extern color TopColor = DimGray;
    14. extern color BotColor = DimGray;
    15. double g_ibuf_96[];
    16. double g_ibuf_100[];
    17. double gd_104 = 13.0;
    18. int gi_112 = 8;
    19. int gi_116 = 5;
    20. int g_datetime_120;
    21. int g_time_124;
    22. double gd_136;
    23. string g_symbol_144;
    24. double gd_152;
    25. int g_digits_160;
    26. int g_timeframe_164;
    27. string gs_168;
    28. double gd_176;
    29. double gd_184;
    30. int g_datetime_192 = 0;

    31. // E37F0136AA3FFAF149B351F6A4C948E9
    32. int init() {
    33.    SetIndexBuffer(1, g_ibuf_96);
    34.    SetIndexEmptyValue(1, 0.0);
    35.    SetIndexStyle(1, DRAW_NONE);
    36.    SetIndexBuffer(0, g_ibuf_100);
    37.    SetIndexEmptyValue(0, 0.0);
    38.    SetIndexStyle(0, DRAW_NONE);
    39.    if (forced_tf= 0) g_timeframe_164 =forced_tf;
    40.    else g_timeframe_164 = Period();
    41.    gd_152 = Point;
    42.    g_digits_160 = Digits;
    43.    if (g_digits_160 == 3 || g_digits_160 == 5) gd_152 = 10.0 * gd_152;
    44.    gs_168 = "" + g_timeframe_164;
    45.    return (0);
    46. }

    47. // 52D46093050F38C27267BCE42543EF60
    48. int deinit() {
    49.    f0_2(gs_168);
    50.    Comment("");
    51.    return (0);
    52. }

    53. // EA2B2676C28C0DB26D39331A336C6B92
    54. int start() {
    55.    if (f0_0() == 1) {
    56.       f0_3(g_ibuf_96, g_ibuf_100, gd_104, gi_112, gi_116);
    57.       f0_4();
    58.       f0_1();
    59.    }
    60.    return (0);
    61. }

    62. // 2D03C2D5A7EC65EF4619E0582C272EC2
    63. void f0_1() {
    64.    string name_4;
    65.    f0_2(gs_168);
    66.    for (int li_0 = 0; li_0 < iBars(g_symbol_144, g_timeframe_164); li_0++) {
    67.       if (g_ibuf_100[li_0] > 0.0) {
    68.          g_datetime_120 = iTime(g_symbol_144, g_timeframe_164, li_0);
    69.          g_time_124 = Time[0];
    70.          if (use.narrow.bands) gd_136 = MathMax(iClose(g_symbol_144, g_timeframe_164, li_0), iOpen(g_symbol_144, g_timeframe_164, li_0));
    71.          else gd_136 = MathMin(iClose(g_symbol_144, g_timeframe_164, li_0), iOpen(g_symbol_144, g_timeframe_164, li_0));
    72.          gd_136 = MathMax(gd_136, MathMax(iLow(g_symbol_144, g_timeframe_164, li_0 - 1), iLow(g_symbol_144, g_timeframe_164, li_0 + 1)));
    73.          name_4 = gs_168 + "UPFILL" + g_timeframe_164 + li_0;
    74.          ObjectCreate(name_4, OBJ_RECTANGLE, 0, 0, 0, 0, 0);
    75.          ObjectSet(name_4, OBJPROP_TIME1, g_datetime_120);
    76.          ObjectSet(name_4, OBJPROP_PRICE1, g_ibuf_100[li_0]);
    77.          ObjectSet(name_4, OBJPROP_TIME2, g_time_124);
    78.          ObjectSet(name_4, OBJPROP_PRICE2, gd_136);
    79.          ObjectSet(name_4, OBJPROP_COLOR, TopColor);
    80.       }
    81.       if (g_ibuf_96[li_0] > 0.0) {
    82.          g_datetime_120 = iTime(g_symbol_144, g_timeframe_164, li_0);
    83.          g_time_124 = Time[0];
    84.          if (use.narrow.bands) gd_136 = MathMin(iClose(g_symbol_144, g_timeframe_164, li_0), iOpen(g_symbol_144, g_timeframe_164, li_0));
    85.          else gd_136 = MathMax(iClose(g_symbol_144, g_timeframe_164, li_0), iOpen(g_symbol_144, g_timeframe_164, li_0));
    86.          if (li_0 > 0) gd_136 = MathMin(gd_136, MathMin(iHigh(g_symbol_144, g_timeframe_164, li_0 + 1), iHigh(g_symbol_144, g_timeframe_164, li_0 - 1)));
    87.          name_4 = gs_168 + "DNFILL" + g_timeframe_164 + li_0;
    88.          ObjectCreate(name_4, OBJ_RECTANGLE, 0, 0, 0, 0, 0);
    89.          ObjectSet(name_4, OBJPROP_TIME1, g_datetime_120);
    90.          ObjectSet(name_4, OBJPROP_PRICE1, gd_136);
    91.          ObjectSet(name_4, OBJPROP_TIME2, g_time_124);
    92.          ObjectSet(name_4, OBJPROP_PRICE2, g_ibuf_96[li_0]);
    93.          ObjectSet(name_4, OBJPROP_COLOR, BotColor);
    94.       }
    95.    }
    96. }

    97. // 09470FB701C11F8B07320EA009403A60
    98. int f0_0() {
    99.    if (iTime(g_symbol_144, g_timeframe_164, 0) != g_datetime_192) {
    100.       g_datetime_192 = iTime(g_symbol_144, g_timeframe_164, 0);
    101.       return (1);
    102.    }
    103.    return (0);
    104. }

    105. // 3B6B0C1FF666CC49A2DCBDC950C224CE
    106. void f0_2(string as_0) {
    107.    string name_16;
    108.    int str_len_8 = StringLen(as_0);
    109.    int li_12 = 0;
    110.    while (li_12 < ObjectsTotal()) {
    111.       name_16 = ObjectName(li_12);
    112.       if (StringSubstr(name_16, 0, str_len_8) != as_0) {
    113.          li_12++;
    114.          continue;
    115.       }
    116.       ObjectDelete(name_16);
    117.    }
    118. }

    119. // 3CA4C22A90227AC4A7684A00FAEE2BA5
    120. int f0_3(double &ada_0[], double &ada_4[], int ai_8, int ai_12, int ai_16) {
    121.    double ld_36;
    122.    double ld_44;
    123.    double ld_52;
    124.    double ld_60;
    125.    double ld_68;
    126.    double ld_76;
    127.    int li_84 = iBars(g_symbol_144, g_timeframe_164) - ai_8;
    128.    for (int li_20 = li_84; li_20 >= 0; li_20--) {
    129.       ld_36 = iLow(g_symbol_144, g_timeframe_164, iLowest(g_symbol_144, g_timeframe_164, MODE_LOW, ai_8, li_20));
    130.       if (ld_36 == ld_76) ld_36 = 0.0;
    131.       else {
    132.          ld_76 = ld_36;
    133.          if (iLow(g_symbol_144, g_timeframe_164, li_20) - ld_36 > ai_12 * Point) ld_36 = 0.0;
    134.          else {
    135.             for (int li_24 = 1; li_24 <= ai_16; li_24++) {
    136.                ld_44 = ada_0[li_20 + li_24];
    137.                if (ld_44 != 0.0 && ld_44 > ld_36) ada_0[li_20 + li_24] = 0.0;
    138.             }
    139.          }
    140.       }
    141.       ada_0[li_20] = ld_36;
    142.       ld_36 = iHigh(g_symbol_144, g_timeframe_164, iHighest(g_symbol_144, g_timeframe_164, MODE_HIGH, ai_8, li_20));
    143.       if (ld_36 == ld_68) ld_36 = 0.0;
    144.       else {
    145.          ld_68 = ld_36;
    146.          if (ld_36 - iHigh(g_symbol_144, g_timeframe_164, li_20) > ai_12 * Point) ld_36 = 0.0;
    147.          else {
    148.             for (li_24 = 1; li_24 <= ai_16; li_24++) {
    149.                ld_44 = ada_4[li_20 + li_24];
    150.                if (ld_44 != 0.0 && ld_44 < ld_36) ada_4[li_20 + li_24] = 0.0;
    151.             }
    152.          }
    153.       }
    154.       ada_4[li_20] = ld_36;
    155.    }
    156.    ld_68 = -1;
    157.    int li_28 = -1;
    158.    ld_76 = -1;
    159.    int li_32 = -1;
    160.    for (li_20 = li_84; li_20 >= 0; li_20--) {
    161.       ld_52 = ada_0[li_20];
    162.       ld_60 = ada_4[li_20];
    163.       if (ld_52 == 0.0 && ld_60 == 0.0) continue;
    164.       if (ld_60 != 0.0) {
    165.          if (ld_68 > 0.0) {
    166.             if (ld_68 < ld_60) ada_4[li_28] = 0;
    167.             else ada_4[li_20] = 0;
    168.          }
    169.          if (ld_68 < ld_60 || ld_68 < 0.0) {
    170.             ld_68 = ld_60;
    171.             li_28 = li_20;
    172.          }
    173.          ld_76 = -1;
    174.       }
    175.       if (ld_52 != 0.0) {
    176.          if (ld_76 > 0.0) {
    177.             if (ld_76 > ld_52) ada_0[li_32] = 0;
    178.             else ada_0[li_20] = 0;
    179.          }
    180.          if (ld_52 < ld_76 || ld_76 < 0.0) {
    181.             ld_76 = ld_52;
    182.             li_32 = li_20;
    183.          }
    184.          ld_68 = -1;
    185.       }
    186.    }
    187.    for (li_20 = iBars(g_symbol_144, g_timeframe_164) - 1; li_20 >= 0; li_20--) {
    188.       if (li_20 >= li_84) ada_0[li_20] = 0.0;
    189.       else {
    190.          ld_44 = ada_4[li_20];
    191.          if (ld_44 != 0.0) ada_4[li_20] = ld_44;
    192.       }
    193.    }
    194.    return (0);
    195. }

    196. // 9F1BFF196B458CFDFF8DE3A24AAFEA26
    197. void f0_4() {
    198.    gd_176 = 0;
    199.    int li_0 = 0;
    200.    gd_184 = 0;
    201.    int li_4 = 0;
    202.    double ld_8 = 0;
    203.    double ld_16 = 0;
    204.    double ld_24 = 0;
    205.    double ld_32 = 0;
    206.    double ld_40 = 0;
    207.    double ld_48 = 0;
    208.    for (int li_56 = 0; li_56 < iBars(g_symbol_144, g_timeframe_164); li_56++) {
    209.       if (g_ibuf_96[li_56] > 0.0) {
    210.          gd_176 = g_ibuf_96[li_56];
    211.          ld_16 = g_ibuf_96[li_56];
    212.          ld_24 = ld_16;
    213.          break;
    214.       }
    215.    }
    216.    for (li_56 = 0; li_56 < iBars(g_symbol_144, g_timeframe_164); li_56++) {
    217.       if (g_ibuf_100[li_56] > 0.0) {
    218.          gd_184 = g_ibuf_100[li_56];
    219.          ld_8 = g_ibuf_100[li_56];
    220.          ld_32 = ld_8;
    221.          break;
    222.       }
    223.    }
    224.    for (li_56 = 0; li_56 < iBars(g_symbol_144, g_timeframe_164); li_56++) {
    225.       if (g_ibuf_100[li_56] >= ld_32) {
    226.          ld_32 = g_ibuf_100[li_56];
    227.          li_4 = li_56;
    228.       } else g_ibuf_100[li_56] = 0.0;
    229.       if (g_ibuf_100[li_56] <= gd_184 && g_ibuf_96[li_56] > 0.0) g_ibuf_100[li_56] = 0.0;
    230.       if (g_ibuf_96[li_56] <= ld_24 && g_ibuf_96[li_56] > 0.0) {
    231.          ld_24 = g_ibuf_96[li_56];
    232.          li_0 = li_56;
    233.       } else g_ibuf_96[li_56] = 0.0;
    234.       if (g_ibuf_96[li_56] > gd_176) g_ibuf_96[li_56] = 0.0;
    235.    }
    236.    if (kill.retouch) {
    237.       if (use.narrow.bands) {
    238.          ld_40 = MathMax(iOpen(g_symbol_144, g_timeframe_164, li_4), iClose(g_symbol_144, g_timeframe_164, li_4));
    239.          ld_48 = MathMin(iOpen(g_symbol_144, g_timeframe_164, li_0), iClose(g_symbol_144, g_timeframe_164, li_0));
    240.       } else {
    241.          ld_40 = MathMin(iOpen(g_symbol_144, g_timeframe_164, li_4), iClose(g_symbol_144, g_timeframe_164, li_4));
    242.          ld_48 = MathMax(iOpen(g_symbol_144, g_timeframe_164, li_0), iClose(g_symbol_144, g_timeframe_164, li_0));
    243.       }
    244.       for (li_56 = MathMax(li_0, li_4); li_56 >= 0; li_56--) {
    245.          if (g_ibuf_100[li_56] > ld_40 && g_ibuf_100[li_56] != ld_32) g_ibuf_100[li_56] = 0.0;
    246.          else {
    247.             if (use.narrow.bands && g_ibuf_100[li_56] > 0.0) {
    248.                ld_40 = MathMax(iOpen(g_symbol_144, g_timeframe_164, li_56), iClose(g_symbol_144, g_timeframe_164, li_56));
    249.                ld_32 = g_ibuf_100[li_56];
    250.             } else {
    251.                if (g_ibuf_100[li_56] > 0.0) {
    252.                   ld_40 = MathMin(iOpen(g_symbol_144, g_timeframe_164, li_56), iClose(g_symbol_144, g_timeframe_164, li_56));
    253.                   ld_32 = g_ibuf_100[li_56];
    254.                }
    255.             }
    256.          }
    257.          if (g_ibuf_96[li_56] <= ld_48 && g_ibuf_96[li_56] > 0.0 && g_ibuf_96[li_56] != ld_24) g_ibuf_96[li_56] = 0.0;
    258.          else {
    259.             if (use.narrow.bands && g_ibuf_96[li_56] > 0.0) {
    260.                ld_48 = MathMin(iOpen(g_symbol_144, g_timeframe_164, li_56), iClose(g_symbol_144, g_timeframe_164, li_56));
    261.                ld_24 = g_ibuf_96[li_56];
    262.             } else {
    263.                if (g_ibuf_96[li_56] > 0.0) {
    264.                   ld_48 = MathMax(iOpen(g_symbol_144, g_timeframe_164, li_56), iClose(g_symbol_144, g_timeframe_164, li_56));
    265.                   ld_24 = g_ibuf_96[li_56];
    266.                }
    267.             }
    268.          }
    269.       }
    270.    }
    271. }
    复制代码

    baofu LV4

    发表于 2019-2-24 17:24:36 | 显示全部楼层

    这是反编的,打不开

    davidgw2046 LV4

    发表于 2020-11-26 15:28:19 | 显示全部楼层

    我有,Q:2692986899.

    fyelaqxe LV3

    发表于 2021-7-27 22:47:33 | 显示全部楼层

    支持下
    您需要登录后才可以回帖 登录 | 注册

    提醒: 禁止引战、谩骂、灌水内容

    微信二维码

    有问题联系客服