不羁的风75795 发表于 2025-4-13 19:48:31

那位大师能把这个外汇开盘指标修改一下

这个外汇开盘指标修改代码反推出来就不对了,麻烦给看看哪里不对




/*
   Generated by EX4-TO-MQ4 decompiler FREEWARE V4.0.451.1 [-]
   Website: http://www.metaquotes.net

*/
#property copyright "moon"
#property link      "http://www.metaquotes.net"

#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Red

extern string 悉尼开市 = "09:00";
extern string 悉尼收市 = "17:00";
extern string 东京开市 = "09:00";
extern string 东京收市 = "15:30";
extern string 德国开市 = "08:00";
extern string 德国收市 = "15:00";
extern string 伦敦开市 = "08:30";
extern string 伦敦收市 = "15:30";
extern string 纽约开市 = "07:30";
extern string 纽约收市 = "14:00";
extern int 预开分钟 = 30;
extern double 服务器时区 = 3.0;
extern double 本地时区 = 8.0;
extern bool 北京时间_格林尼治_平台时间 = TRUE;
extern bool 亚洲区域 = TRUE;
extern bool 夏令时开启 = TRUE;
extern int 显示区域 = 3;
extern int 显示高度 = 125;
extern color 开市颜色 = DeepPink;
extern color 关市颜色 = Gray;
extern color 准备开市颜色 = White;
extern bool 时间模式 = FALSE;
double g_ibuf_212[];
int gi_216 = 10;
int gi_220 = 2;
int gi_224 = 9;
int gi_228 = 1;
int gi_232 = -4;

string TimeToString(int ai_0) {
   if (!时间模式) return (TimeToStr(ai_0, TIME_MINUTES));
   int li_4 = TimeHour(ai_0);
   int minute_8 = TimeMinute(ai_0);
   string ls_12 = " AM";
   if (li_4 >= 12) {
      li_4 -= 12;
      ls_12 = " PM";
   }
   if (li_4 == 0) li_4 = 12;
   string ls_ret_20 = DoubleToStr(li_4, 0) + ":";
   if (minute_8 < 10) ls_ret_20 = ls_ret_20 + "0";
   ls_ret_20 = ls_ret_20 + DoubleToStr(minute_8, 0);
   ls_ret_20 = ls_ret_20 + ls_12;
   return (ls_ret_20);
}

int start() {
   double ld_8;
   color color_180;
   color color_184;
   color color_188;
   color color_192;
   color color_196;
   int ind_counted_0 = IndicatorCounted();
   int li_4 = -1;
   if (夏令时开启) li_4 = 0;
   int datetime_16 = TimeCurrent();
   int li_20 = datetime_16 - 3600.0 * 服务器时区;
   if (亚洲区域) ld_8 = li_20 + 3600.0 * 本地时区;
   else ld_8 = li_20 + 3600.0 * 本地时区 + li_4;
   int li_24 = 60 * 预开分钟;
   int li_28 = li_20 + 3600 * (gi_228 + li_4);
   int li_32 = li_28 + li_24;
   int li_36 = li_20 + 3600 * gi_216;
   int li_40 = li_36 + li_24;
   int li_44 = li_20 + 3600 * gi_224;
   int li_48 = li_44 + li_24;
   int li_52 = li_20 + 3600 * (gi_220 + li_4);
   int li_56 = li_52 + li_24;
   int li_60 = li_20 + 3600 * (gi_232 + li_4);
   int li_64 = li_60 + li_24;
   string text_68 = TimeToString(li_20);
   string text_76 = TimeToString(ld_8);
   string text_84 = TimeToString(li_52);
   string text_92 = TimeToString(li_28);
   string text_100 = TimeToString(li_36);
   string text_108 = TimeToString(li_44);
   string text_116 = TimeToString(li_60);
   string text_124 = TimeToString(TimeCurrent());
   string time2str_132 = TimeToStr(TimeCurrent() - Time, TIME_MINUTES);
   string ls_140 = TimeToString(li_32);
   string ls_148 = TimeToString(li_40);
   string ls_156 = TimeToString(li_48);
   string ls_164 = TimeToString(li_64);
   string ls_172 = TimeToString(li_56);
   if (ls_148 > 悉尼开市 && text_100 < 悉尼开市) color_180 = 准备开市颜色;
   else {
      if (text_100 >= 悉尼开市 && text_100 <= 悉尼收市) color_180 = 开市颜色;
      else color_180 = 关市颜色;
   }
   if (ls_156 > 东京开市 && text_108 < 东京开市) color_184 = 准备开市颜色;
   else {
      if (text_108 >= 东京开市 && text_108 <= 东京收市) color_184 = 开市颜色;
      else color_184 = 关市颜色;
   }
   if (ls_172 > 德国开市 && text_84 < 德国开市) color_188 = 准备开市颜色;
   else {
      if (text_84 >= 德国开市 && text_84 <= 德国收市) color_188 = 开市颜色;
      else color_188 = 关市颜色;
   }
   if (ls_140 > 伦敦开市 && text_92 < 伦敦开市) color_192 = 准备开市颜色;
   else {
      if (text_92 >= 伦敦开市 && text_92 <= 伦敦收市) color_192 = 开市颜色;
      else color_192 = 关市颜色;
   }
   if (ls_164 > 纽约开市 && text_116 < 纽约开市) color_196 = 准备开市颜色;
   else {
      if (text_116 >= 纽约开市 && text_116 <= 纽约收市) color_196 = 开市颜色;
      else color_196 = 关市颜色;
   }
   if (北京时间_格林尼治_平台时间) {
      ObjectSetText("locl", "北京时间", 9, "Arial", DarkKhaki);
      ObjectSetText("loct", text_76, 9, "Arial", DarkKhaki);
      ObjectSetText("gmtl", "格林尼治", 9, "Arial", DarkKhaki);
      ObjectSetText("gmtt", text_68, 9, "Arial", DarkKhaki);
      ObjectSetText("brol", "平台时间", 9, "Arial", DarkKhaki);
      ObjectSetText("brot", text_124, 9, "Arial", DarkKhaki);
   }
   ObjectSetText("xinil", "悉尼", 9, "Arial Bold", color_180);
   ObjectSetText("xinit", text_100, 9, "Arial Bold", color_180);
   ObjectSetText("tokl", "东京", 9, "Arial", color_184);
   ObjectSetText("tokt", text_108, 9, "Arial Bold", color_184);
   ObjectSetText("deguol", "德国", 9, "Arial", color_188);
   ObjectSetText("deguot", text_84, 9, "Arial Bold", color_188);
   ObjectSetText("nyl", "纽约", 9, "Arial", color_196);
   ObjectSetText("nyt", text_116, 9, "Arial Bold", color_196);
   ObjectSetText("lonl", "伦敦", 9, "Arial", color_192);
   ObjectSetText("lont", text_92, 9, "Arial Bold", color_192);
   return (0);
}

int ObjectMakeLabel(string a_name_0, int a_x_8, int a_y_12) {
   ObjectCreate(a_name_0, OBJ_LABEL, 0, 0, 0);
   ObjectSet(a_name_0, OBJPROP_CORNER, 显示区域);
   ObjectSet(a_name_0, OBJPROP_XDISTANCE, a_x_8);
   ObjectSet(a_name_0, OBJPROP_YDISTANCE, a_y_12);
   ObjectSet(a_name_0, OBJPROP_BACK, TRUE);
   return (0);
}

int init() {
   SetIndexStyle(0, DRAW_LINE);
   SetIndexBuffer(0, g_ibuf_212);
   int li_0 = 显示高度;
   int li_4 = 90;
   if (时间模式) li_4 = 102;
   if (北京时间_格林尼治_平台时间) {
      ObjectMakeLabel("locl", li_4 - 45, li_0 - 5);
      ObjectMakeLabel("loct", 7, li_0 - 5);
      ObjectMakeLabel("gmtl", li_4 - 45, li_0 - 20);
      ObjectMakeLabel("gmtt", 7, li_0 - 20);
      ObjectMakeLabel("brol", li_4 - 45, li_0 - 35);
      ObjectMakeLabel("brot", 7, li_0 - 35);
   }
   ObjectMakeLabel("xinil", li_4 - 45, li_0 - 60);
   ObjectMakeLabel("xinit", 7, li_0 - 60);
   ObjectMakeLabel("tokl", li_4 - 45, li_0 - 75);
   ObjectMakeLabel("tokt", 7, li_0 - 75);
   ObjectMakeLabel("deguol", li_4 - 45, li_0 - 90);
   ObjectMakeLabel("deguot", 7, li_0 - 90);
   ObjectMakeLabel("lonl", li_4 - 45, li_0 - 105);
   ObjectMakeLabel("lont", 7, li_0 - 105);
   ObjectMakeLabel("nyl", li_4 - 45, li_0 - 120);
   ObjectMakeLabel("nyt", 7, li_0 - 120);
   return (0);
}

int deinit() {
   ObjectDelete("locl");
   ObjectDelete("loct");
   ObjectDelete("nyl");
   ObjectDelete("nyt");
   ObjectDelete("gmtl");
   ObjectDelete("gmtt");
   ObjectDelete("deguol");
   ObjectDelete("deguot");
   ObjectDelete("lonl");
   ObjectDelete("lont");
   ObjectDelete("xinil");
   ObjectDelete("xinit");
   ObjectDelete("tokl");
   ObjectDelete("tokt");
   ObjectDelete("brol");
   ObjectDelete("brot");
   return (0);
}


唐宋元明清 发表于 2025-4-13 20:27:16

修改好了

不羁的风75795 发表于 2025-4-14 01:58:32

唐宋元明清 发表于 2025-4-13 20:27
修改好了

谢谢
页: [1]
查看完整版本: 那位大师能把这个外汇开盘指标修改一下