来自一个 "傻瓜 "的问题 - 页 109

 
Yedelkin:
是的,我还没有彻底看清它。但你的要点是正确的 :)
FileIsExist()返回标记为FILE_COMMON 的管道。
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов - Документация по MQL5
 
openlive:
FileIsExist()返回带有FILE_COMMON 标志的管道。
当测试时,它是否返回?
 

在MT5中,策略测试器 设置的可能性和灵活性要比MT4更广泛。然而,世界各地的绝大多数经纪公司仍然只使用MT4。是否可以将从某个经纪公司下载的MT4格式的历史记录转换成MT5格式,以便在MT5测试器中运行?

 
Yedelkin:
测试时它会返回吗?

不,我只是用一个脚本检查。

string file_name="primer_massivstarihpatternovdlyaraboty.csv";

   bool com=FileIsExist(
   file_name,  
       FILE_COMMON  
   );
   Print(TerminalInfoString(TERMINAL_COMMONDATA_PATH),com);
 
 
DenisR:

在MT5中,策略测试器 设置的可能性和灵活性要比MT4更广泛。然而,世界各地的绝大多数经纪公司仍然只使用MT4。是否有可能将从某个经纪公司下载的MT4格式的历史记录转换为MT5格式,以便将其送入MT5策略测试器?

你不能直接这样做。你不能,MetaQuotes软件公司 反对这样做。// 我认为这是不对的,但他们可能更清楚。

有一个相当耗时的选择--使用数学模式。如果不是太麻烦的话,可以试一试。

Торговая платформа MetaTrader 5 для организации брокерского обслуживания / MetaQuotes Software Corp.
  • www.metaquotes.net
Торговая платформа MetaTrader 5 предназначена для проведения торговых операций на различных финансовый рынках. Терминал обладает большой базой аналитических возможностей и поддерживает более 70 различных инструментов для выполнения технического анализа
 
openlive:
FileIsExist()返回标记为FILE_COMMON 的管道。
我隐约怀疑文件与此无关。 也许测试者出于其他原因不想测试你的EA。日志中说什么?
 
测试器中的FileIsExist()也是如此。
 
openlive:
测试器中的FileIsExist()也是如此。
正是如此。
 
MetaDriver:
我隐约怀疑这些文件与此无关。 也许测试人员出于其他原因不想测试你的EA。日志中说什么?
2012.02.26 10:57:51 测试员分析历史的质量是100%
2012.02.26 10:57:51 核心1 EURUSD,H1: 测试experts\pattern10000.ex5从2009.12.01 00:00到2012.02.10 00:00开始
26 10:57:51 Core 1 EURUSD,H1 (MetaQuotes-Demo): 1 minutes OHLC ticks generating
2012.02.26 10:57:51 Core 1 EURUSD: history synchronized from 1971.01.04 to 2012.02.10
2012.02.26 10:57:51 Core 1 EURUSD: load 27 bytes of history data to synchronize
2012。02.02.26 10:57:51 Core 1 EURUSD:symbol tick base found
2012.02.26 10:57:51 Core 1 Intel Atom N450 @ 1.66GHz, 1013 MB
2012.02.26 10:57:51 Core 1 33 Kb of total initialization data received
2012.02.02.26 10:57:51 核心1成功初始化
2012.02.26 10:57:51 核心1初始存款3000.00美元,杠杆1:100
2012.02.26 10:57:51 核心1专家文件添加: Experts\pattern10000.ex5。33944字节加载
2012.02.26 10:57:50 核心1共同同步完成
2012.02.26 10:57:50 Tester EURUSD,H1 (MetaQuotes-Demo): 测试2009年的 Experts\pattern10000.ex5。12.01 00:00至2012.02.10 00:00
2012.02.26 10:57:49 核心1授权(代理构建597)
2012.02.26 10:57:49 核心1连接
2012.02.26 10:57:49 核心1连接到127.0.0.1:3000
 
openlive:

不,我只是用一个脚本检查了一下。

我以为像这样的检查会插入OnInit(),然后运行代码进行测试,其结果 "我们会看到"。

string file_name="primer_massivstarihpatternovdlyaraboty.csv";
if(FileIsExist(file_name,FILE_COMMON)
  {
   ResetLastError();
   handle=FileOpen(...);
   switch(handle)
     {
      case INVALID_HANDLE: 
           Print("error = ",_LastError);
           return(-1);
     }
  }  
else 
  {
   Print(file_name," не найден в ",TerminalInfoString(TERMINAL_COMMONDATA_PATH));
   return(-2);
  }