分享

点差变化记录显示器.mq4

 素人堂 2015-09-08

//-------------------------------------------------------------------------+

#property indicator_chart_window                                                     // 用在主窗口

  extern int    FontSize       = 12;                                                 // 字体大小
  extern int    WhichCorner0_3 = 4;                                                  // 显示在窗口哪个角落
  int           Old_Point;                                                           // 前个点差
  int           MarketSpread;                                                        // 市场规定的点差
  int           firsttime      = 1;                                                  // 首次时间
  string        FontType       = "黑体";                                             // 字体类型
  color         FontColor      = LawnGreen;                                          // 字体颜色
  int           fh;                                                                  // 文件句柄简写
 
//--------------------------------初始化------------------------------------+

int init()
   {
     fh = FileOpen("Spread.csv",FILE_CSV|FILE_WRITE,",");                            // 打开文件("Spread.csv")
     if(fh>0) FileWrite(fh," 时间 "," 点差 ",Symbol());                              // 如果打开成功,写入内容()
      // FileClose(fh);                                                              //
    return(0);                                                                       //
   }
  
//------------------------------反初始化------------------------------------+

int deinit()
  {
  ObjectDelete("Market_Point_Label");                                                // 物件取消(Market_Point_Label)
  FileClose(fh);                                                                     // 关闭文件
  return(0);
  }
 
//-------------------------------主函数-------------------------------------+

int start()
  {
    MarketSpread= MarketInfo(Symbol(),MODE_SPREAD);                                  // 取市场点差值
    if(Old_Point!= MarketSpread) FileWrite(fh,TimeToStr(Time[0]),MarketSpread);      // 如果刚才的点差不是现在的点差值,写入文件(文件名,当前时间,现点差)
    if (MarketSpread > Old_Point)   FontColor= Red;                                  // 如果现点差>刚才的点差,字体色用红
    if (MarketSpread < Old_Point)   FontColor= LawnGreen;                            // 若小于,用绿
    Old_Point= MarketSpread;                                                         // 将现点差赋给刚才点差
  
    if(firsttime==1)   FontColor= White;                                             // 如果首次时间等于1,将字体色为草绿
    firsttime=0;                                                                     // 将首次时间归0
     
    string Market_point= MarketSpread;                                               // 市场点值赋值为 市场规定的点差
  
   ObjectCreate("Market_Point_Label", OBJ_LABEL, 0, 0, 0);                           // 建立物件
   ObjectSetText("Market_Point_Label", Market_point, FontSize, FontType, FontColor); // 物件内容
   ObjectSet("Market_Point_Label", OBJPROP_CORNER, WhichCorner0_3);                  // 参数带入使用窗口角落
   ObjectSet("Market_Point_Label", OBJPROP_XDISTANCE, 1);                            // X坐标
   ObjectSet("Market_Point_Label", OBJPROP_YDISTANCE, 1);                            // Y坐标
  
  }
//-------------------------------------------------------------------------+

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多