MT4编写读取文件内容的脚本

在MT4的EA或者脚本编写中,往往会用到文件的读取。

文件作为数据中转,是比较传统,也是比较直接的方式,当然对比于数据库还是不能相提并论的。目前市面上比较流行的跟单软件恰恰就是用的文件来存储数据,其实效率是很难保证的。

        今天主要讲解一下如何读取CSV 文件中的数据

文件内容如下,这是一个csv 格式的文件内容,一般csv 用"," 作为间隔符是最好的,因为用Excel就能直接打开,今天用"*"来进行间隔。

174599633*USDJPY*0*0.04*0*0**0*1661526746*136.981*0.72952763
174596735*USDJPY*0*0.02*0*0*from #174596731*0*1661523219*136.883*0.72952763
174596504*USDJPY*0*0.01*0*0**0*1661522825*136.885*0.72952763

以上就是跟单软件中的信号源写入持仓单子的文件,如果要读取每一行,应该怎么读取呢?

直接上代码:

void read_file()
  {

   int closefile_handle;
   closefile_handle=FileOpen("10018175666.csv",FILE_CSV|FILE_READ|FILE_SHARE_WRITE|FILE_SHARE_READ,"\n");
   string xinhaoyuan_closeneirong="";
   if(closefile_handle>0)
     {
      int    closestr_size;
      string close_neirong;
      int    jishuqi =0;
      while(!FileIsEnding(closefile_handle)) 
        { 
         //--- 找到这个文件的大小 
             closestr_size=FileReadInteger(closefile_handle,INT_VALUE); 
         //--- 读取所有的字符串 
           close_neirong=FileReadString(closefile_handle,closestr_size);
         //---进行录入
         xinhaoyuan_closeneirong = xinhaoyuan_closeneirong+close_neirong+",";
         jishuqi++;//---记录行数
         
        }
        Alert(jishuqi); 
        FileClose(closefile_handle);
        Alert(xinhaoyuan_closeneirong);

     }
  }

int OnInit()
  {
   read_file();
   return(INIT_SUCCEEDED);
  }

结果:

174599633*USDJPY*0*0.04*0*0**0*1661526746*136.981*0.72952763,174596735*USDJPY*0*0.02*0*0*from,#174596731*0*1661523219*136.883*0.72952763,174596504*USDJPY*0*0.01*0*0**0*1661522825*136.885*0.72952763,

再对这个结果进行解析就好了

一定要注意:

closefile_handle=FileOpen("10018175666.csv",FILE_CSV|FILE_READ|FILE_SHARE_WRITE|FILE_SHARE_READ,"\n");

这一行代码用的 间隔符 是"\n";这个就是以行为单位进行分割。如果用的"*"进行分割,那得到的就是每一项。

得到每一行的信息,才是我们需要的

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MT4自动交易程序编写是通过使用MetaQuotes编程语言MQL4来创建交易策略,并通过MetaEditor软件进行编译的过程。下面是编写MT4自动交易程序的一般步骤: 1. 设计交易策略:首先,需要明确交易策略的规则和逻辑,包括入场和出场条件、止损和止盈设置等。根据自己的交易理念和市场分析,设计出适合的策略。 2. 编写代码:使用MetaEditor软件,打开并创建新的MQL4脚本文件。在脚本文件中,根据设计的交易策略,编写相应的代码。代码包括定义变量、设置参数、编写入场和出场条件、添加止损和止盈等。 3. 进行调试和优化:编写完代码后,进行调试和优化是非常重要的。通过在历史数据上进行回测,检查代码是否正常运行,是否符合预期,并进行必要的修改和调整。 4. 编译生成可执行文件:在MetaEditor软件中,将编写的MQL4脚本文件进行编译,生成可执行文件。这个可执行文件将成为MT4自动交易程序的主体。 5. 在MT4平台上运行:将生成的可执行文件导入到MT4平台上,并进行配置。设置自动交易程序的参数,如交易量、止盈止损等。然后启动自动交易程序,让其自动根据编写的策略执行交易操作。 编写MT4自动交易程序需要熟悉MQL4编程语言和市场分析知识。同时,编写程序也需要不断的优化和调整,才能使其具备良好的执行效果。因此,建议在编写MT4自动交易程序之前,先对市场进行深入研究,并了解编程语言的基本知识。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值