设为首页 收藏本站 切换语言

量化交易之MQL4篇 - 模板、图表、窗口的相关操作

| 发表于 2022-12-1 13:26:36 | 显示全部楼层 |复制链接
  1. void OnStart() {
  2.     // 加载模板 20180505
  3.     if(ChartApplyTemplate(0, "20180505")) {
  4.       Alert("seikou");
  5.     }
  6.     // 保存模板
  7.     ChartSaveTemplate(0, WindowExpertName());
  8.     ChartSetInteger(0, CHART_COLOR_BACKGROUND, Black); // 设置背景色
  9.     ChartSetInteger(0, CHART_AUTOSCROLL, true); // 自动滚动
  10.     ChartSetInteger(0, CHART_SHIFT, 1); // 偏移量 1
  11.     ChartSetSymbolPeriod(0, Symbol(), PERIOD_D1); // 设置货币对与时间周期
  12.     // 设置盘面价格纵坐标的最小值
  13.     ChartSetInteger(0, CHART_SCALEFIX, 1);
  14.     ChartSetDouble(0, CHART_FIXED_MIN, Low[0]);
  15.     ChartSetString(0, CHART_COMMENT, "TQZ");
  16.     // 打开指定货币对与周期的窗口
  17.     ChartOpen("GBPUSD", PERIOD_M15);
  18.     ChartOpen("USDJPY", PERIOD_M15);
  19.     // 遍历图表并操作
  20.     long qian = ChartFirst();
  21.     for(int i=0; ; i++) {
  22.       // 在遍历图表过程中操作
  23.       //ChartSetString(qian, CHART_COMMENT, IntegerToString(qian));
  24.       ChartClose(qian);
  25.       //if(ChartSymbol(qian) == "EURUSD" && ChartPeriod(qian) == PERIOD_M15) {
  26.       //   ChartSetInteger(qian, CHART_COLOR_BACKGROUND, White);
  27.       //}
  28.       long next = ChartNext(qian);
  29.       qian = next;
  30.       if(next<0) break;
  31.     }
  32.     // 截图
  33.     ChartScreenShot(0, Symbol()+".jpg", 800, 600, ALIGN_RIGHT);
  34.     // 指定窗口的指标个数
  35.     int total=ChartIndicatorsTotal(0, 0);
  36.     for(int i=0; i<total; i++) {
  37.       // 删除指标
  38.       string indicatorName = ChartIndicatorName(0, 0, i);
  39.       ChartIndicatorDelete(0, 0, indicatorName);
  40.     }
  41.     // 当前图表内的窗口个数
  42.     int windowsTotal = WindowsTotal();
  43. }
复制代码
如果有帮助,就支持一下我呗
举报

评论 使用道具

发新帖
EA交易
您需要登录后才可以评论 登录 | 立即注册

简体中文
繁體中文
English(英语)
日本語(日语)
Deutsch(德语)
Русский язык(俄语)
بالعربية(阿拉伯语)
Türkçe(土耳其语)
Português(葡萄牙语)
ภาษาไทย(泰国语)
한어(朝鲜语/韩语)
Français(法语)