错误、漏洞、问题 - 页 382

 
aharata:

文件中的ticks:1159105,以及这段时间的tick volume。1161872

这可能是什么原因呢? 我怎样才能把测试者的蜱虫弄好呢?

1 161 872 - 1 159 105 = 2 767点,是1 161 72点的0.2%。

刻度线建模 中,0.2%的误差是可以接受的,也是正常的,因为在某些情况下(条形结构),产生额外的刻度线是没有意义的。测试仪产生的点数总是比现实中的少一点(在显示的0.2%的水平)。

如果原始数据的绿色质量条接近100%,你可以毫无顾虑地使用测试器生成的tick序列。

Алгоритм генерации тиков в тестере стратегий терминала MetaTrader 5
Алгоритм генерации тиков в тестере стратегий терминала MetaTrader 5
  • 2010.05.21
  • MetaQuotes Software Corp.
  • www.mql5.com
MetaTrader 5 позволяет во встроенном тестере стратегий моделировать автоматическую торговлю с помощью экспертов на языке MQL5. Такое моделирование называется тестированием экспертов, и может проводиться с использованием многопоточной оптимизации и одновременно по множеству инструментов. Для проведения тщательного тестирования требуется генерировать тики на основе имеющейся минутной истории. В статье дается подробное описание алгоритма, по которому генерируются тики для исторического тестирования в клиентском терминале MetaTrader 5.
 
谢谢你,谢谢你的及时答复。历史的质量是100%(顺便说一下,在测试器中的 伟大指标)。当我进行虚拟交易时,我使用指标,现在我很担心刻度和指标数据的同步问题(我不在乎2个十分之一是否会对我造成伤害)...谢谢你。
 
有什么方法可以获得未来某个条形的日期值吗? 我需要在一定数量的条形之后提前建立一个网格。
 
vdv2001:
有什么方法可以获得未来的条形图的日期值吗? 我需要在一定数量的条形图之后在前面建立一个网格。

如果只有时间,那么:取基准条;找出它的时间;得到一个时期的秒数(TF);用秒数乘以条数,然后加到基准条的日期。

 
Interesting:

如果只有时间,那么:取基准条;找出它的时间;得到一个时期的秒数(TF);用秒数乘以条数,然后加到基准条的日期。

并不确定条形图将保持在相同的指数上(考虑到移位),但一般来说,是的,我们可以向前计算正确的条形图数量 并设置对象,它将完全在我们想要的位置。过去的情况更复杂,它是由跳杠引起的。因此,从零到第一点的对象可能需要检查其正确性。

这里主要是要找出什么更重要--酒吧的规律性或时间的规律性?

Документация по MQL5: Доступ к таймсериям и индикаторам / Bars
Документация по MQL5: Доступ к таймсериям и индикаторам / Bars
  • www.mql5.com
Доступ к таймсериям и индикаторам / Bars - Документация по MQL5
 
Interesting:

如果只有时间,那么:取基准条;找出它的时间;得到一个时期的秒数(TF);用秒数乘以条数,再加上基准条的日期。

我现在正在做,我想它可以更简单,像BarToTime()函数 一样。)

Документация по MQL5: Доступ к таймсериям и индикаторам / Bars
Документация по MQL5: Доступ к таймсериям и индикаторам / Bars
  • www.mql5.com
Доступ к таймсериям и индикаторам / Bars - Документация по MQL5
 
Urain:

并不确定条形图会停留在相同的指数上(考虑到移位),但一般来说,是的,你可以向前数正确的条形图 并设置对象,它将准确地出现在你想要的位置。过去的情况更复杂,它是由跳杠引起的。从零点到第一个的对象可能应该检查其正确性。

这里最主要的是要弄清楚是条形规律还是时间规律更重要。

重要的是钢筋的规则性,否则角落会出现歪斜:()

我正试图建立一个GaN广场。

 
vdv2001:

酒吧的规则性很重要,否则角度就会变歪 :()

试图建立一个甘氏广场。

把它看作是加秒,但在每一个新的条形图 上只需重新绘制图片(你甚至可以写一个必要的函数),这就是....

Обработчик события "новый бар"
Обработчик события "новый бар"
  • 2010.10.04
  • Konstantin Gruzdev
  • www.mql5.com
Язык программирования MQL5 позволяет решать задачи на совершенно новом уровне. Даже те задачи, которые уже вроде имеют решения, благодаря объектно-ориентированному программированию могут подняться на качественно новый уровень. В данной статье специально взят простой пример проверки появления нового бара на графике, который был преобразован в достаточно мощный и универсальный инструмент. Какой? Читайте в статье.
 
vdv2001:

酒吧的规则性很重要,否则角度会变歪。

试图建立一个甘氏广场。

小节被跳过对你有影响吗?
 
Urain:
而你不关心酒吧是否有缝隙?

不甘只计算工作条数!!!。

缺少的句号是我需要删除的。

感谢大家给我的提示,通过形成一个时间阵列。

也许有人会需要它。

//   int bars - количество расчетных баров
//   datetime time1 - время нулевого бара

   datetime iTime[];
   int rates_time;
   rates_time=CopyTime(NULL,m_period,time1,TimeCurrent(),iTime);
   if(rates_time==-1) return(false);
   ArrayResize(iTime,bars+1);
   if(rates_time<=bars)
     {
      int shift=rates_time-1;
      for(int i=1;i<=ArraySize(iTime)-rates_time;i++)
        {
         iTime[shift+i]=iTime[shift]+PeriodSeconds(m_period)*i;
        }
     }
   datetime shifttime=time1-iTime[0]; // смещение времени для корекции массива
   for(int i=0;i<=bars;i++) iTime[i]=iTime[i]+shifttime; // корректируем массив
   time2=iTime[bars];

真,你需要在新条形图 出现时重新计算。