2评论

3收藏

求修改代码 只要两条红绿线 其他的不要

avatar 千千股 | 1422 人阅读 | 2 人评论 | 2023-11-12

//+------------------------------------------------------------------+
//|                                                   AAAAAAAAAA.mq4 |
//|                        Copyright 2021, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+


#property indicator_chart_window
#property indicator_buffers 6
#property indicator_color1 White
#property indicator_color2 White
#property indicator_color3 Red
#property indicator_color4 Lime
#property indicator_color5 Gray
#property indicator_color6 Gray

extern color zhengdang = Gray;
int gi_unused_80 = -1;
int g_width_84 = 8;
double g_ibuf_88[];
double g_ibuf_92[];
double g_ibuf_96[];
double g_ibuf_100[];
double g_ibuf_104[];
double g_ibuf_108[];
int gi_unused_112 = 0;
int gi_unused_116 = 0;
string gs_120 = "MHDMT_XMA";
string gs_128 = "MHDMT_GRAY_BELT";

// E37F0136AA3FFAF149B351F6A4C948E9
int init() {

   IndicatorBuffers(6);
   SetIndexStyle(0, DRAW_LINE);
   SetIndexBuffer(0, g_ibuf_88);
   SetIndexStyle(1, DRAW_LINE);
   SetIndexBuffer(1, g_ibuf_92);
   SetIndexStyle(2, DRAW_LINE, STYLE_DASH);
   SetIndexBuffer(2, g_ibuf_96);
   SetIndexStyle(3, DRAW_LINE, STYLE_DASH);
   SetIndexBuffer(3, g_ibuf_100);
   SetIndexStyle(4, DRAW_LINE);
   SetIndexBuffer(4, g_ibuf_104);
   SetIndexStyle(5, DRAW_LINE);
   SetIndexBuffer(5, g_ibuf_108);
   IndicatorShortName("MHDMT_ZT");
   SetIndexLabel(0, "ZD");
   SetIndexLabel(1, "ZK");
   SetIndexLabel(2, "KS");
   SetIndexLabel(3, "DS");
   SetIndexLabel(4, "GBH");
   SetIndexLabel(5, "GBL");
   return (0);
}

// 52D46093050F38C27267BCE42543EF60
int deinit() {
   ObjectsDeleteAll(WindowOnDropped());
   return (0);
}

// EA2B2676C28C0DB26D39331A336C6B92
int start() {
   double ld_0;
   double ld_8;
   bool li_16;
   bool li_20;
   int ind_counted_28 = IndicatorCounted();
   ObjectsDeleteAll(WindowOnDropped());
   int li_32 = WindowFirstVisibleBar();
   int highest_36 = iHighest(NULL, 0, MODE_HIGH, WindowBarsPerChart(), WindowFirstVisibleBar() - WindowBarsPerChart() + 1);
   double ld_40 = (WindowPriceMax() - WindowPriceMin()) / 15.0;
   int window_48 = WindowOnDropped();
   ObjectDelete("duoqujian");
   ObjectCreate("duoqujian", OBJ_TEXT, 0, Time[li_32 / 2], High[highest_36]);
   ObjectSetText("duoqujian", "【红色多头区间:只做多,不做空】", 16, "黑体", Maroon);
   ObjectDelete("kongqujian");
   ObjectCreate("kongqujian", OBJ_TEXT, 0, Time[li_32 / 2], High[highest_36] - ld_40);
   ObjectSetText("kongqujian", "【绿色空头区间:只做空,不做多】", 16, "黑体", DarkGreen);
   ObjectDelete("zhendangqujian");
   ObjectCreate("zhendangqujian", OBJ_TEXT, 0, Time[li_32 / 2], High[highest_36] - 2.0 * ld_40);
   ObjectSetText("zhendangqujian", "【震荡区间:多空双向操作】", 16, "黑体", zhengdang);
   for (int li_52 = li_32; li_52 >= 0; li_52--) {
      li_16 = FALSE;
      li_20 = FALSE;
      g_ibuf_88[li_52] = 2.0 * iCustom(NULL, 0, gs_120, 25, 25, 3, 1, li_52) - iCustom(NULL, 0, gs_120, 25, 25, 2, 1, li_52);
      g_ibuf_92[li_52] = 2.0 * iCustom(NULL, 0, gs_120, 25, 25, 2, 1, li_52) - iCustom(NULL, 0, gs_120, 25, 25, 3, 1, li_52);
      g_ibuf_96[li_52] = 3.0 * (iCustom(NULL, 0, gs_120, 61, 61, 2, 1, li_52) - iCustom(NULL, 0, gs_120, 61, 61, 3, 1, li_52)) + iCustom(NULL, 0, gs_120, 61, 61, 2, 1,
         li_52);
      g_ibuf_100[li_52] = iCustom(NULL, 0, gs_120, 61, 61, 3, 1, li_52) - 3.0 * (iCustom(NULL, 0, gs_120, 61, 61, 2, 1, li_52) - iCustom(NULL, 0, gs_120, 61, 61, 3, 1,
         li_52));
      g_ibuf_104[li_52] = iCustom(NULL, 0, gs_128, 2, li_52);
      g_ibuf_108[li_52] = iCustom(NULL, 0, gs_128, 3, li_52);
      ld_0 = iCustom(NULL, 0, gs_128, 2, li_52) + 2.0 * iCustom(NULL, 0, gs_128, 4, li_52);
      ld_8 = iCustom(NULL, 0, gs_128, 3, li_52) - 2.0 * iCustom(NULL, 0, gs_128, 4, li_52);
      ObjectCreate("Graybelt" + DoubleToStr(Time[li_52], 0), OBJ_TREND, window_48, Time[li_52], g_ibuf_104[li_52], Time[li_52], g_ibuf_108[li_52]);
      ObjectSet("Graybelt" + DoubleToStr(Time[li_52], 0), OBJPROP_COLOR, C'0x55,0x55,0x55');
      ObjectSet("Graybelt" + DoubleToStr(Time[li_52], 0), OBJPROP_RAY, FALSE);
      ObjectSet("Graybelt" + DoubleToStr(Time[li_52], 0), OBJPROP_WIDTH, g_width_84);
      ObjectSet("Graybelt" + DoubleToStr(Time[li_52], 0), OBJPROP_BACK, TRUE);
      if (g_ibuf_92[li_52] > ld_0 && g_ibuf_88[li_52] > ld_8) {
         ObjectCreate("duo" + DoubleToStr(Time[li_52], 0), OBJ_TREND, window_48, Time[li_52], g_ibuf_88[li_52], Time[li_52], g_ibuf_92[li_52]);
         ObjectSet("duo" + DoubleToStr(Time[li_52], 0), OBJPROP_COLOR, Maroon);
         ObjectSet("duo" + DoubleToStr(Time[li_52], 0), OBJPROP_RAY, FALSE);
         ObjectSet("duo" + DoubleToStr(Time[li_52], 0), OBJPROP_WIDTH, g_width_84);
         ObjectSet("duo" + DoubleToStr(Time[li_52], 0), OBJPROP_BACK, TRUE);
      }
      if (g_ibuf_92[li_52] < ld_0 && g_ibuf_88[li_52] < ld_8) {
         ObjectCreate("dong" + DoubleToStr(Time[li_52], 0), OBJ_TREND, window_48, Time[li_52], g_ibuf_92[li_52], Time[li_52], g_ibuf_88[li_52]);
         ObjectSet("dong" + DoubleToStr(Time[li_52], 0), OBJPROP_COLOR, DarkGreen);
         ObjectSet("dong" + DoubleToStr(Time[li_52], 0), OBJPROP_RAY, FALSE);
         ObjectSet("dong" + DoubleToStr(Time[li_52], 0), OBJPROP_WIDTH, g_width_84);
         ObjectSet("dong" + DoubleToStr(Time[li_52], 0), OBJPROP_BACK, TRUE);
      }
      if (g_ibuf_92[li_52] < ld_0 && g_ibuf_88[li_52] > ld_8) {
         ObjectCreate("dang" + DoubleToStr(Time[li_52], 0), OBJ_TREND, window_48, Time[li_52], g_ibuf_88[li_52], Time[li_52], g_ibuf_92[li_52]);
         ObjectSet("dang" + DoubleToStr(Time[li_52], 0), OBJPROP_COLOR, zhengdang);
         ObjectSet("dang" + DoubleToStr(Time[li_52], 0), OBJPROP_RAY, FALSE);
         ObjectSet("dang" + DoubleToStr(Time[li_52], 0), OBJPROP_WIDTH, g_width_84);
         ObjectSet("dang" + DoubleToStr(Time[li_52], 0), OBJPROP_BACK, TRUE);
      }
      if  (g_ibuf_92[li_52] < ld_0 && g_ibuf_88[li_52] > ld_8)) {
         ObjectCreate("duosong" + DoubleToStr(Time[li_52], 0), OBJ_TEXT, 0, Time[li_52], iCustom(NULL, 0, gs_120, 25, 25, 3, 1, li_52) - 3.9 * (iCustom(NULL, 0, gs_120, 25,
            25, 2, 1, li_52) - iCustom(NULL, 0, gs_120, 25, 25, 3, 1, li_52)));
         ObjectSetText("duosong" + DoubleToStr(Time[li_52], 0), "损", 16, "黑体", Red);
         ObjectCreate("zuoduo" + DoubleToStr(Time[li_52], 0), OBJ_TEXT, 0, Time[li_52], Low[li_52]);
         ObjectSetText("zuoduo" + DoubleToStr(Time[li_52], 0), "多", 16, "黑体", Red);
         li_16 = TRUE;
      }
      if (High[li_52 + 1] < g_ibuf_92[li_52 + 1] && High[li_52] > g_ibuf_92[li_52] && (g_ibuf_92[li_52] < ld_0 && g_ibuf_88[li_52] < ld_8) || (g_ibuf_92[li_52] < ld_0 &&
         g_ibuf_88[li_52] > ld_8)) {
         ObjectCreate("kongsong" + DoubleToStr(Time[li_52], 0), OBJ_TEXT, 0, Time[li_52], 3.9 * (iCustom(NULL, 0, gs_120, 25, 25, 2, 1, li_52) - iCustom(NULL, 0, gs_120, 25,
            25, 3, 1, li_52)) + iCustom(NULL, 0, gs_120, 25, 25, 2, 1, li_52));
         ObjectSetText("kongsong" + DoubleToStr(Time[li_52], 0), "损", 16, "黑体", Lime);
         ObjectCreate("zuokong" + DoubleToStr(Time[li_52], 0), OBJ_TEXT, 0, Time[li_52], High[li_52]);
         ObjectSetText("zuokong" + DoubleToStr(Time[li_52], 0), "空", 16, "黑体", Lime);
         li_20 = TRUE;
      }
      if (g_ibuf_88[li_52 + 1] < Low[li_52 + 1] && g_ibuf_88[li_52] > Low[li_52] && (g_ibuf_92[li_52] < ld_0 && g_ibuf_88[li_52] < ld_8) || (!(g_ibuf_92[li_52] < ld_0 &&
         g_ibuf_88[li_52] > ld_8)) && li_16 == FALSE) {
         ObjectCreate("kongping" + DoubleToStr(Time[li_52], 0), OBJ_TEXT, 0, Time[li_52], Low[li_52]);
         ObjectSetText("kongping" + DoubleToStr(Time[li_52], 0), "平", 16, "黑体", Yellow);
      }
      if (High[li_52 + 1] < g_ibuf_92[li_52 + 1] && High[li_52] > g_ibuf_92[li_52] && (g_ibuf_92[li_52] > ld_0 && g_ibuf_88[li_52] > ld_8) || (!(g_ibuf_92[li_52] < ld_0 &&
         g_ibuf_88[li_52] > ld_8)) && li_20 == FALSE) {
         ObjectCreate("duoping" + DoubleToStr(Time[li_52], 0), OBJ_TEXT, 0, Time[li_52], High[li_52]);
         ObjectSetText("duoping" + DoubleToStr(Time[li_52], 0), "平", 16, "黑体", Yellow);
      }
   }
   ObjectDelete("zhiying1");
   ObjectCreate("zhiying1", OBJ_TEXT, 0, Time[0] + (Time[1] - Time[2]) * 2, g_ibuf_88[0]);
   ObjectSetText("zhiying1", DoubleToStr(g_ibuf_88[0], 4), 8, "Times New Roman", White);
   ObjectDelete("zhiying2");
   ObjectCreate("zhiying2", OBJ_TEXT, 0, Time[0] + (Time[1] - Time[2]) * 2, g_ibuf_92[0]);
   ObjectSetText("zhiying2", DoubleToStr(g_ibuf_92[0], 4), 8, "Times New Roman", White);
   ObjectDelete("zhisong1");
   double price_56 = 3.0 * (iCustom(NULL, 0, gs_120, 61, 61, 2, 1, 0) - iCustom(NULL, 0, gs_120, 61, 61, 3, 1, 0)) + iCustom(NULL, 0, gs_120, 61, 61, 2, 1, 0);
   ObjectCreate("zhisong1", OBJ_TEXT, 0, Time[0] + (Time[1] - Time[2]) * 2, price_56);
   ObjectSetText("zhisong1", DoubleToStr(price_56, 4), 8, "Times New Roman", Red);
   ObjectDelete("zhisong2");
   double price_64 = iCustom(NULL, 0, gs_120, 61, 61, 3, 1, 0) - 3.0 * (iCustom(NULL, 0, gs_120, 61, 61, 2, 1, 0) - iCustom(NULL, 0, gs_120, 61, 61, 3, 1, 0));
   ObjectCreate("zhisong2", OBJ_TEXT, 0, Time[0] + (Time[1] - Time[2]) * 2, price_64);
   ObjectSetText("zhisong2", DoubleToStr(g_ibuf_100[0], 4), 8, "Times New Roman", Lime);

1699731279796.png
""
还没有人打赏,支持一下

评论|共 2 个

蓝古

发表于 2023-11-12 22:08:21 | 显示全部楼层

你把不需要的线条的颜色设置为none或者图表的背景颜色就行了

千千股

发表于 2023-11-12 22:34:42 | 显示全部楼层

ok 感谢

您需要登录后才可以回帖 登录 | 注册 微信登录

EA之家评论守则