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

 
Silent:
这一切都很清楚,我已经把每一个步骤都打印出来了,而且我把这个功能放在一个单独的脚本中...好的,我会在闲暇时考虑的。

不,你不清楚。这取决于印刷的内容。))你已经被人用三种声音指出了正在传输的参数。

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

傻瓜的常见问题

tol64, 2013.05.24 13:02

检查(打印到日志)范围的开始时间(t[0]+b)和结束时间(t[0])。你会直接掌握它的窍门。

 
stringo:

没有必要放弃这个功能。

当你查询"当前时间-当前时间加若干秒 "范围内的数据时,这意味着你要求的是未来的数据。在提出请求时,该数据尚不存在。

如果你请求的是 "当前时间-当前时间减去 某个秒数 "范围内的数据,那么你请求的是可能存在的数据。

我们谈论的是什么未来,你在哪里看到的?

所有的查询都是专门针对过去的。

在测试脚本中,明确设置了要计数的条形图...

一般来说,规定了 "之 "字形的两端,这并没有给出准确的时间...

 
Silent:

我们谈论的是什么未来,你在哪里看到的?

好的。当前时间 2013.05.24 15:43:29

在当前时间上增加600秒。我们得到 2013.05.24 15:53:29.

然后我们查询计算的范围。但我们的数据只到当前时间为止,包括当前时间。在2013.05.24 15:43:29和2013.05.24 15:53:29之间,还没有任何数据。

但如果你旋转十分钟的周期,数据很可能出现。除了2013.05.24 15:43:29成为过去时间,2013.05.24 15:53:29成为当前时间。

Документация по MQL5: Дата и время / TimeCurrent
Документация по MQL5: Дата и время / TimeCurrent
  • www.mql5.com
Дата и время / TimeCurrent - Документация по MQL5
 
tol64:

不,你不清楚。这取决于印刷的内容。))你已经被人用三种声音指出了正在传输的参数。

https://www.mql5.com/ru/forum/3775/page252#comment_507621

有如。

   Print(tm[0]);
 
stringo:

好的。当前时间 2013.05.24 15:43:29

在当前时间上增加600秒。我们得到 2013.05.24 15:53:29

然后我们查询计算的范围。但我们的数据只到当前时间为止,包括当前时间。在2013.05.24 15:43:29和2013.05.24 15:53:29之间,我们仍然没有数据。

但如果你旋转十分钟的周期,数据很可能会显示出来。除了2013.05.24 15:43:29成为过去时间,2013.05.24 15:53:29成为当前时间。

//--- переменные для указания параметров функции
   int start = 5; // индекс бара
   int count = 1; // количество баров
   int b=72000;   
   int bm;        // надо получить
   datetime tm[]; // массив, в котором возвращается время баров
//--- копирование времени 
   CopyTime(_Symbol,PERIOD_CURRENT,start,count,tm);
//--- вывод результата
   Print(tm[0]);

   bm=Bars(_Symbol,PERIOD_M1,tm[0]+b,tm[0]);
   Print("bm = "+bm);
//--- возвращает bm = 1201
   bm=Bars(_Symbol,PERIOD_M1,tm[0]-b,tm[0]);
   Print("bm = "+bm);

哪里是

int start = 5; // индекс бара

吧,我得到了谁的时间。

我不使用当前时间。在所有。

 
我会为将来单独开一张支票,然后我们再看。
 
Silent:

在哪里?

是我得到的时间的酒吧。

我不使用当前的时间。在所有。

也就是说,在tm[0]中,你有从结尾开始的第5小节的时间。

在这种情况下,在第一次请求当前时间框架以外的数据时(你请求的是分钟),你很容易得到0条,因为这些数据还没有出现在终端。

正因为如此,我们曾经发布过一个脚本,保证上传任何现有符号-时期的历史数据。

 
stringo:

我们曾经发表过一个关于这个问题的脚本,它可以保证上传任何现有符号-时期的历史数据。

阅读关于组织数据访问 的帮助章节

 
stringo:

也就是说,在tm[0]中,你有从结尾开始的第5小节的时间。

在这种情况下,在第一次请求当前时间框架以外的数据时(你请求的是分钟),你很容易得到0条,因为这些数据还没有出现在终端。

我们曾经发表过一个脚本,主题是保证上传任何现有符号-时期的历史数据。

即使在当前的时间框架上,你也可以定期得到0,只是在不同的柱子上。不过非常少。我今天无法重现它,而昨天我几乎在每一个新的(不叫)酒吧都能得到它。

我会找找这个剧本的,谢谢。

 

一般来说,最大的困惑是,为什么所有的复制功能都能工作,在同样的条件下,--而我却抓到了留在豹子上的东西?

这真是太棒了...

更新第一次运行时得到0的可能答案

Мы не можем прямо обратиться к серверу, но любая Copy-функция
при нехватке истории в формате HCC в терминал автоматически инициирует посылку
такого запроса от терминала к торговому серверу.

而Bars并没有这样做。

更新2 在帮助中缺少一个字母,in,用红色突出显示。