文章 "DoEasy 函数库中的时间序列(第三十六部分):所有用到的品种周期的时间序列对象"

 

新文章 DoEasy 函数库中的时间序列(第三十六部分):所有用到的品种周期的时间序列对象已发布:

在本文中我们将探讨,把每个用到的品种周期的柱形对象列表合并到单一品种时间序列对象之中。 因此,每个品种均含一个对象,存储所有已用到品种时间序列周期的列表。

在 M5 上以测试器的可视模式启动 EA:


首先,测试器下载所有时间帧的历史数据,然后 EA 显示所创建时间序列的数据。 然后将消息发送到日志,通知测试过程中,在创建的时间序列上创立新柱线。

创建单个品种时间序列的功能于此阶段,所有操作均按预期进行。

作者:Artyom Trishkin

 

您好!我希望不仅可以通过 timeseries.SyncData(PERIOD_M15,2)方法中指定的数字创建时间序列,还可以在设置数字(2)的字段中按日期创建时间序列。这在研究历史上 2 个或 2 个以上工具的相关性时非常有用,例如,分别研究持平截面和趋势截面。还有一点,是否可以将两个方法合二为一--timeseries.SyncData(PERIOD_M15,2) 和 timeseries.Create(PERIOD_M15),而只写 timeseries.Create(PERIOD_M15,2),因为创建时间序列本身就意味着首先要同步数据

 
Alexander:

您好!我希望不仅可以通过 timeseries.SyncData(PERIOD_M15,2)方法中指定的数字创建时间序列,还可以在设置数字(2)的字段中按日期创建时间序列。这在研究历史上 2 个或 2 个以上工具的相关性时非常有用,例如,分别研究持平截面和趋势截面。还有一点,是否可以将两个方法合二为一--timeseries.SyncData(PERIOD_M15,2) 和 timeseries.Create(PERIOD_M15),而只写 timeseries.Create(PERIOD_M15,2),因为创建时间序列本身就意味着首先要同步数据

您好,时间序列总是从指定数量的零条(图表中最右边的一条,带有最后日期)开始创建。毕竟,程序可能需要历史数据以外的任何数据,也可能需要当前数据。而创建基数是最昂贵的操作,因此如果最初创建的时间序列是历史上较远的一段,然后再按需重新创建时间序列,则成本太高。

不过,该库允许您从一次创建的基数中获取任意时间间隔内任意数量的时间序列条形图。为此,只需首先获取时间序列的完整柱状图列表,然后从中选择所需的部分即可。为此,需要使用 CSelect()。

同步和创建时间序列的方法是分开的,原因是不能指望在指标中实现同步,以免减慢流程。因此,在创建了所有时间序列功能后,所有工作都将单独进行--在指标中获取数据的示例将在后面介绍。

 

大量使用多色背景 和文字颜色 会降低文章的可读性。它让人眼花缭乱,分散注意力。过去,文章版主会阻止这种....。

 
Sergey Pavlov:

大量使用多色背景和文字颜色会降低文章的可读性。它让人眼花缭乱,分散注意力。过去,文章版主会阻止这种....。

通常情况下,文章作者不得不强调注意力--尤其是当文章具有教育性和信息性时。为此,他们不得不用相同的背景颜色 突出显示所描述的代码片段及其说明。我自己看到这样的效果也不是很满意,但这也是不得已而为之。如果您有建议,除了用相同的背景颜色突出显示两个文本部分外,还可以用其他方式比较这两个文本部分,我很乐意听取您的建议。

 

有两种选择:静态和动态。

静态:将每个描述的代码片段缩减到几行,使描述和代码的上下文尽可能一致。您不必显示整个函数,您可以为每个细微差别留下几行重要的代码,然后用省略号标出其余代码,将其舍弃。

动态:仅适用于 MQ。他们可以在出版物编辑器中创建热点,当鼠标光标停留在热点上时,相应的 "锚点 "将在文本(代码)中突出显示。如果光标不在热点上,则不会突出显示。热点在文本中被标记为不带颜色的弱下划线链接(有些网站有这种标记)。如果有这样的功能,就需要在布局中进行与现在需要背景着色相同的操作,只是工具调板中的按钮有所不同。但这不太可能实现。

 
Stanislav Korotky:

有两种选择:静态和动态。

静态:将每个描述的代码片段缩减到几行,使描述和代码的上下文尽可能一致。您不必显示整个函数,您可以为每个细微差别留下几行重要的代码,并用省略号标出其余代码,将其舍弃。

动态:仅适用于 MQ。它们可以在出版物编辑器中创建热点,当鼠标光标停留在热点上时,相应的 "锚点 "将在文本(代码)中突出显示。如果光标不在热点上,则不会突出显示。热点在文本中被标记为不带颜色的弱下划线链接(有些网站有这种标记)。如果有这样的功能,就需要在布局中进行与现在需要背景着色相同的操作,只是工具调板中的按钮会有所不同。但他们不太可能这样做。

是的,第二种方案非常可取。
而第一种方案并不合适,原因是许多初学者都试图在文章中写出正确的内容。
 
Artyom Trishkin:

而第一种方法是行不通的,因为很多初学者都试图随着文章的进展来写。

恰恰相反。第一种方法是一种非常缓慢的 "循序渐进 "式指南--对于初学者来说更可取。

 
Stanislav Korotky:

反之亦然。第一种方法是一种非常缓慢的 "循序渐进 "式指南,更适合初学者。

我明白你的意思。但这是一个建议,即从函数中删去一部分代码,集中精力描述重要的部分。但这样一来,函数的可见完整性就会被破坏,这对初学者来说是很不利的--他/她应该看到整个函数以及每个部分的描述--是什么、为什么、为了什么和为什么。

 
Artyom Trishkin:

......这对初学者很不利--他们需要看到整个功能,以及每个部分的描述--是什么、为什么、为了什么和为什么。

Artyom,你在文本中以配色方案的形式进行 "点缀",这对初学者 是没有帮助的。而且有迹象表明,"初学者 "无论如何也不会理解(或者不想理解)。

在这种情况下,我站在 "初学者 "一边:你怎么能把 100500 篇文章记在脑子里,然后应用到你的智能交易系统中呢?

 
Sergey Pavlov:

Artem,您在文本中以配色方案的形式进行的 "点缀 "不会对初学者--交易者--程序员 有任何帮助。而且有迹象表明,"初学者 "无论如何也不会理解(或不想理解)。

在这种情况下,我是站在 "初学者 "一边的:你怎么能把 100500 篇文章记在脑子里并应用到你的智能交易系统中呢?

不过,那些想了解的人可以私下写信提问--这也是我关注的重点(虽然我要求他们直接在文章讨论中提问,但他们出于某种原因私下写得更多--也许是问题的公开性令人尴尬,我不知道)。

而且,我认为你不需要在脑子里装 100500 篇文章。
你能把参考文献背下来吗?我不知道。甚至不是从第一遍开始,我就能找到其中有趣的地方来 "温故而知新"。
但我会搜索、查找、重读和温习。我不是初学者......
或者说,你对科瓦廖夫的教科书记得有多准?

你不需要死记硬背。
如果你注意前几篇文章的风格和材料的表达方式,以及后几篇文章的风格和表达方式,你就会发现一种变化--咀嚼的东西少了。简单地说,当一个人开始阅读时不知道如何做某事,那么最初你可以学习如何做。
这里还有一些新的东西还没有介绍过--这里就是为什么不在彩色.... 中突出重音。不过,如果除了用相同颜色突出重音外,还有其他方便的方法,我肯定会使用,因为我不喜欢这种杂色。

要在您的 EA 中使用它,您不必学习库是如何制作的。只需阅读公共方法的目的及其在测试智能交易系统中的应用即可。还有什么不清楚的,可以在文章讨论中询问。
只是,如果您偏离了库创建的描述,深入到其使用的时刻,那将是一个完全不同的主题。
不过,在完成图书馆创建后,将有大量的参考资料介绍其所有的公共方法和使用方法,并附有示例。