测试 "CopyTicks"。 - 页 46

 
Igorz2006:
谢谢你,我将研究一下。

也请看对你问题的这个回答。

关于交易、自动交易系统和交易策略测试的论坛

适用于Cryptoexchange的通用专家顾问,适用于一个以上的货币对!

Vladimir Karputov, 2020.05.18 14:29

你需要连接到一个广播加密货币报价的交易服务器,然后执行

下载价格历史记录#


 
安装了mt4,让它变得简单
 

关于交易、自动交易系统和交易策略测试的论坛

MT5和速度在行动

fxsaber, 2020.06.01 11:43

这个EA不报警的原因是什么?
const MqlTick GetMarketWatchTick( void )
{
  MqlTick Tick = {0};
  
  ::SymbolInfoTick(_Symbol, Tick);
  
  return(Tick);
}

const MqlTick GetLastHistoryTick()
{
  MqlTick Tick[1];
  
  ::CopyTicks(_Symbol, Tick, COPY_TICKS_ALL, 0, 1);
  
  return(Tick[0]);
}

void OnTick()
{
  if (GetMarketWatchTick().time_msc > GetLastHistoryTick().time_msc) // Тик из Обзора рынка свежее, чем последний тик из истории.
    Alert("Hello!");
}


在同一时间,同样的检查,缝在同一终端上的实时交易EA,Alertit。这可能是什么原因呢?

 

在以前的剧情中。

左边是战斗终端上的一个请求,要求提供当前一天的10秒间隔。战斗--运行数天,在每次打勾时调用CopyTicks*以获得新的打勾。

在右边--刚刚开始的终端,要求同样的10秒间隔。

你可以看到,右边还有五个点。这意味着刻度线的DB是在终端中形成的错误。

提高警惕!MT5跳过了自己的历史点,这些历史点是通过SymbolInfoTick来到OnTick的(我检查过)。

 
fxsaber:

在以前的剧情中。


提高警惕!MT5错过了自己的历史刻度,这些刻度通过SymbolInfoTick来到(检查)OnTick。

这很可悲,我在工作中使用了强烈的勾选数据流。不清楚这是个终端错误还是有意为之。

 
fxsaber:

在以前的剧情中。

左边是战斗终端上的一个请求,要求提供当前一天的10秒间隔。战斗--运行数天,在每次打勾时调用CopyTicks*以获得新的打勾。

在右边--刚刚开始的终端,要求同样的10秒间隔。

你可以看到,右边还有五个点。这意味着刻度线的DB是在终端中形成的错误。

提高警惕!MT5跳过了自己的历史点,这些历史点是通过SymbolInfoTick来到OnTick的(我检查过)。

乍一看,由于某种原因,这似乎更像是一个错误,而不是有意识的过滤(缺失的刻度线似乎并不突出)。还是我错了?

 
Maksim Emeliashin:

可悲的是,我在工作中大量使用tick数据流。目前还不清楚这是否是一个终端错误,或者是否是故意的。

Aleksey Nikolayev:

乍一看,它更像是一个错误,而不是出于某种目的而故意过滤(缺失的虱子似乎不怎么突出)。还是我错了?

如果没有连接失败,终端会生成当日的刻度线数据库。它更快、更经济。

但在这个蜱虫数据库的形成算法中存在一个错误。

 
fxsaber:

如果没有连接中断,终端会生成当日的刻度线数据库。这要快得多,也更经济。

但在这个打勾数据库的生成算法中存在一个错误。

而如果我们在最后提出要求,就已经有了缺口?

关于没有连接失败的疑惑的论文,重新扫描/切换经常发生。

如果正确的刻度线在内存中,那么无误地写入它们就不难了。更有可能的是,在某处出现了完整性检查或装配错误。

 
Andrey Khatimlianskii:

而如果你在一天结束时查询,通行证是否已经存在?

似乎过去24小时的第一个请求是通过与服务器同步来更新蜱虫数据库。

关于没有连接失败的论文值得怀疑,重新扫描/切换经常发生。

如果正确的刻度线在内存中,要写出它们而不出错就不难了。更有可能的是,在某处出现了完整性检查或装配错误。

SymbolInfoTick 至少捕获了一个不在数据库中的tick。

 
fxsaber:

似乎过去24小时的第一个查询通过与服务器同步来更新蜱虫数据库。

SymbolInfoTick 至少捕获了一个不在数据库中的刻度。

这里只有@renat可以回答。或@Slava