程序库: BestInterval - 页 15

 

再读读OLAP。也许我理解得不够透彻,但那里找不到最佳值。

仅仅绘制这样的数据部分有什么意义呢?

所以,如果我理解正确的话,不幸的是,泛化 到库没有边。


但当然,泛化是可能的

MQL's OOP notes: Online Analytical Processing of trading hypercubes: part 1
MQL's OOP notes: Online Analytical Processing of trading hypercubes: part 1
  • 2017.04.29
  • www.mql5.com
Normally trader's activity involves analysis of a lot of data. Part of it, and probably most significant part, are numbers. Time series, economic indicators, trading reports should be studied, classified and analyzed. It's very likely that this is the trading was the first applied field for big data science. When numbers form a massive array...
 
Andrei Trukhanovich:

我想了又想,实在想不出有什么东西能像时间一样有效过滤。

这种东西不应该成为战略的一部分,而应该直接影响市场行为。

堆栈?

还有一个问题--制作超立方体是否有意义? 我认为也应该很好地进行单独过滤。

参数、符号、星期(似乎也是 "时间",但我没有在 BestInterval 中看到过)、持有时间(似乎也是 "时间",但不是绝对的,而是相对的)、手数、收盘历史中特定结果的交易次数等。

超立方允许以不同组合评估数据--提供多参数分析。根据这一逻辑,有人会问,为什么我们要一次性优化智能交易系统的所有参数,而不是一次优化一个参数呢--这样成本会更低,而且当参数数量过多时,有些人不得不这样做。

 
fxsaber:

再读读OLAP。我可能理解错了,但那里找不到最佳值。

仅仅绘制这样的数据截面图有什么意义?


所以,如果我没理解错的话,很遗憾,泛化 与图书馆无关。


当然,泛化是可能的

从这个意义上说,你可以把超立方体视为中间元数据,在其中很容易找到 BestInterval 方法意义上的最优值,不是吗?只需将所有超立方体条目与某个要最大化的值(如利润)"绑定",然后对超立方体进行过滤(如 BestInterval 过滤时间),就能获得其他参数的最佳值,而不仅仅是时间。

想象一下,BestInterval 的代码保持不变,但输入的不是时间,而是其他一些数字--程序对此并不关心--它仍然会找到最佳 "时间间隔"。

 
一般来说,我的理解是,BestInterval 会随着时间的推移 建立配置文件的超立方体,然后找出超立方体中单元格的最佳组合。我的超立方体没有寻找组合的第二阶段。但是没有人禁止逐个选择单元格,为此发明了很多算法。
 

的是取代时间的可能性。我不明白为什么要把表格称为超立方体?

BestInterval 本身只能通过过滤器实现利润最大化。这与过滤器无关,而是要找到一致剔除的利润。

至于以开盘时间为形式的过滤器,对于挂单 TS 非常方便。它可以在测试器中顺利使用。

如果我们考虑其他筛选器,则需要市场订单,因为通常不可能随时预测筛选器的值。

 
fxsaber:

的是取代时间的可能性。我不明白为什么要把表格称为超立方体?

BestInterval 本身只能通过过滤器实现利润最大化。这与筛选器无关,而是要找到一致剔除的利润。

至于以开盘时间为形式的过滤器,对于挂单的 TS 来说非常方便。它可以在测试器中顺利使用。

如果我们考虑其他筛选器,则需要市场订单,因为通常无法提前预测筛选器的值。

当有很多 "空间 "维度时,我们会得到一个超立方体,我们可以称它为多维数组。表格是其最简单的特殊情况。当然,你也可以把任何 "通过连续剔除来寻找利润 "的算法拧在一起。

我不明白什么是提前预测滤波器。有实际数据,我们已经对其进行了处理,并收到了建议--这里的预测在哪里?

 
Stanislav Korotky:

当有很多 "空间 "维度时,我们会得到一个超立方体,我们可以称它为多维数组。表格是其最简单的特殊情况。

在交易历史的应用中,超立方体就是一张表。它的部分--我们通过遍历初始表格的列来制作另一张表格。

当然,任何 "通过连续拒绝寻找利润 "的算法都可以拧进去。

剩下的事情就是把它拧进去。举例来说,制作一张表格只占 "圣经 "的 5%。剩下的就是 "拧上螺栓 "并应用了。

关于提前预测过滤器--我不明白。有实际数据,我们对其进行了处理,得到了建议--这里的预测在哪里?

预测只是关于 "应用 "的话题。例如,如果说当 RSI > 90 时不应建仓,那么就不可能通过挂单 交易这种情况,因为这是不可预测的。


而在应用过滤器时,离不开虚拟环境。因此,"拧成一股绳 "是一项有些不同的任务。

 
fxsaber:

在应用于交易历史的情况下,超立方体就是一个表格。它的部分--我们通过运行初始表格的列来制作另一张表格。

剩下的事情就是把它栓起来。例如,制作一个表格只占超立方体的 ~5%。剩下的就是 "栓上 "和应用。

关于 "应用",预测是正确的。例如,如果说当 RSI > 90 时不应建仓,那么这种情况就不能通过挂单 交易,因为它是不可预测的。


到处都存在一些术语混乱--我认为死抠字眼没有意义--似乎我们的意思是一样的,但我们 "在不同的专业学校学习过"(对我来说,表格总是平面的;-),它是由超立方体与某个超平面交叉形成的;你可以把整个东西称为多维表,但既然已经引入了一个更简洁的术语,我更喜欢它)。关于预测--类似(经过解释后,原意变得清晰了,但我觉得所选的措辞似乎不合适,纯属个人观点)。

我做了 OLAP--用于多因素分析(上面按时期(和其他参数)细分的图表,我认为也很有趣),我没有直接解决基于超立方体的自动优化问题。理想情况下,可以将立方体塞入标准优化器,在矩阵计算模式下使用。

总的来说,我们的想法有点偏差:我们的想法(事实证明,不仅对我,对你们也一样)是,最佳 "区间 "可以不通过一个维度(内部时间段),而是通过一系列不同的维度来搜索。

 

至于术语,我们对多维空间和平面的理解是一样的,都是 100%。就像表格是一个 NxM 的平面矩阵。

超立方体的任何切片都是从平面表格中获得的--这就是它的意义所在。

 
Stanislav Korotky:

理想情况下,您可以将立方体放入标准优化器,并在矩阵计算模式下使用。

这更接近于 MO,但与 BestInterval 无关。在这里,优化器的每次运行都会启动 "matlab 模式"。

其价值在于每次优化都会启动 "matlab 模式"。也就是说,您可以(在优化之前)完全丢弃原始 TS 中负责交易时间范围(或其他过滤器)的参数。

因此,在完整搜索过程中,通过次数会减少几个数量级,基因徘徊也会减少。