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



void OnStart() {
    
    // 加载模板 20180505
    if(ChartApplyTemplate(0, "20180505")) {
      Alert("seikou");
    }
    
    // 保存模板
    ChartSaveTemplate(0, WindowExpertName());

    

    ChartSetInteger(0, CHART_COLOR_BACKGROUND, Black); // 设置背景色
    ChartSetInteger(0, CHART_AUTOSCROLL, true); // 自动滚动
    ChartSetInteger(0, CHART_SHIFT, 1); // 偏移量 1
    ChartSetSymbolPeriod(0, Symbol(), PERIOD_D1); // 设置货币对与时间周期
    
    // 设置盘面价格纵坐标的最小值
    ChartSetInteger(0, CHART_SCALEFIX, 1);
    ChartSetDouble(0, CHART_FIXED_MIN, Low[0]);
    
    ChartSetString(0, CHART_COMMENT, "TQZ");
    
    // 打开指定货币对与周期的窗口
    ChartOpen("GBPUSD", PERIOD_M15);
    ChartOpen("USDJPY", PERIOD_M15);
    
    // 遍历图表并操作
    long qian = ChartFirst();
    for(int i=0; ; i++) {
      
      // 在遍历图表过程中操作
      //ChartSetString(qian, CHART_COMMENT, IntegerToString(qian));
      ChartClose(qian);
      //if(ChartSymbol(qian) == "EURUSD" && ChartPeriod(qian) == PERIOD_M15) {
      //   ChartSetInteger(qian, CHART_COLOR_BACKGROUND, White);
      //}
      
      long next = ChartNext(qian);
      qian = next;
      if(next<0) break;
    }
    
    // 截图
    ChartScreenShot(0, Symbol()+".jpg", 800, 600, ALIGN_RIGHT);
    
    
    // 指定窗口的指标个数
    int total=ChartIndicatorsTotal(0, 0);
    for(int i=0; i      // 删除指标
      string indicatorName = ChartIndicatorName(0, 0, i);
      ChartIndicatorDelete(0, 0, indicatorName);
    }
    
    // 当前图表内的窗口个数
    int windowsTotal = WindowsTotal();
    
}

你可能感兴趣的:(量化交易之MQL4篇 - 模板、图表、窗口的相关操作)