交易中的机器学习:理论、模型、实践和算法交易 - 页 1517

 
fxsaber:

问题01.

以下指标只有一个外部输入参数

  • 指数平滑法--周期/系数。
  • PriceChannel(每个区间的最高和最低价格)--区间的大小。
  • ZigZag - 最小膝盖的大小。

我选择这些指标正是因为其外部输入参数最少。

是否有可能在MO方法的帮助下重现他们的算法。也就是说,采取任何历史,以任何参数运行指标,并将其送入MO。是否有可能在输出中获得适当的指标算法?

问题是关于为MO设置任务,即我们应该标记历史,我认为同样的PriceChannel很容易教,ZZ的复杂性可能次之,但Ekponential Smoothing--它不是分类而是回归,可能,它可能是相同的,但我没有用过回归。

 

问题03。

我在实践中多次遇到过这样的情况。TS显示测试区间的利润。当我运行OOS的时间长了好几倍,它显示的利润是一样的。一旦我在真实账户上下注,几个月的利润就会保持不变。


而在某一时刻,系统地倒下了。没有重新优化相同的TS,就没有积极的结果。在最好的情况下,它减缓了暴跌的速度。

一段时间后,程序员明白一切都很糟糕,于是离开了真实账户。你观察了几个月,TS是如何在测试器中丢失的。


突然间,两个星期的利润,一个月的利润,OOS月-利润。这是同一个TS。你把它放在真实的地方,得到的一切与第一段中描述的一样。

这不是一个假设的情况,而是一个实践的案例。在这种情况下,TS只在少数符号上表现出它的严肃性。在其他人身上,它是一个常年的消耗。


当然,TS也不需要每天二十四小时进行交易。可能有一个日内交易区间。


就常见的MO应用实践而言,是否有可能得到一个具有类似特征的TS?

 
fxsaber:

问题02.

让有四个输入参数的TS在某个区间进行成千上万次交易。我们增加了两个可能变体数量较少的输入参数作为过滤器。在输出中,我们有一个直线图,上面有大约1000个交易。而且所有这些都或多或少地均匀地分布在整个测试区域。


在OOS上损失初始区间的5%的高概率是什么原因?巨大的间隔和仅有的六个输入给了真正大量的交易一个直接的结果。而出来的是一个赤裸裸的配合。

这是否意味着有六个以上的参数?这有点像对第一个问题 的参考,对我们来说简单的算法实际上在本质上不是很复杂吗?

而且为什么不应该有梅花?历史数据的相似性是什么--这是一个单独的问题,以评估模型的正确性。

然后,什么被作为投入,历史是如何被标记出来进行培训的,教什么--这里有很多细微的差别。

 
fxsaber:

问题03。

我在实践中多次遇到过这样的情况。TS显示测试区间的利润。当我运行OOS的时间长了好几倍,它显示的利润是一样的。一旦我在真实账户上下注,几个月的利润就会保持不变。


而在某一时刻,系统地倒下了。没有重新优化相同的TS,就没有积极的结果。在最好的情况下,它减缓了暴跌的速度。

一段时间后,程序员明白一切都很糟糕,于是离开了真实账户。你观察了几个月,TS是如何在测试器中丢失的。


突然间,两个星期的利润,一个月的利润,OOS月-利润。这是同一个TS。你把它放在真实的地方,得到的一切与第一段中描述的一样。

这不是一个假想的情况,而是一个实践的案例。在这种情况下,TS只在少数符号上表现出它的严肃性。在其他人身上,它是一个常年的消耗。


当然,TS也不需要每天二十四小时进行交易。可能有一个日内交易区间。


就常见的MO应用实践而言,是否有可能得到一个具有类似特征的TS?

因此,这又是一个与市场阶段有关的问题,也是TS/model MO学到的东西。例如,我在CatBoost 上训练了模型--在训练结束后的历史上都很好,把它放在真实的和沉默的3个月里,模型是沉默的--我把它拿下来,在上个月通过测试,我看到我错过了很多盈利的交易(上个月),但后来显然模型本身已经考虑到了一些问题,没有交易,因为市场确实非常平淡,而模型被设置为趋势(在分钟上)。

 
Aleksey Vyazmikin:

为什么不应该有一个排水口?历史数据的相似性是什么--这是一个单独的问题,以评估模型的正确性。

然后,什么被作为投入,历史是如何被标记出来进行培训的,教什么--这里有很多细微的差别。

什么培训?一个简单的经典专家顾问,有六个可优化的参数。常规的GA在区间上显示了出色的结果。

我对 "为什么你期望它在OOS上失败 "的答案不感兴趣。那么,即使有一千次交易,在OOS上亏损也是合理的,原因何在?


我的业余推理是这样的。

TC的自由度非常少。因此,调整的概率下降了。

数以千计的交易均匀 地分布在区间上--这意味着在这个区间上的长效 "模式 "已经被发现。特别是由于平衡图几乎是一条直线。


这种推理实际上有什么问题呢?我假设事实上输入的参数不是六个,而是常规的一百万。这是再现TC算法的通用机器的输入参数的数量。也就是说,算法本身就是一组特定的输入参数。

 
fxsaber:

什么训练?一个常规的经典EA,有六个可优化的参数。常规的GA在区间上产生了出色的结果。

我对 "你在期待什么,我当然是在OOS上输了 "的答案不感兴趣。那么,即使有一千次交易,在OOS上的损失是什么原因呢?

那么学习间隔是多少呢?1000笔交易可以在一个全球趋势上进行,在其矢量上开仓,本身就会有优势。

例如,我在5年的历史上训练Si期货,以便有更多不同的情况。从2008年到2016年,我在15分钟内对外汇的EA进行了优化,它们对于平均数来说有足够的生存能力。

而本质上优化是相同的MO方法,所以之前说的都是真的。

fxsaber:

我的业余推理是这样的。

TC中的自由度非常少。因此,调整的概率降低了。

数以千计的交易均匀地分布在区间上--这意味着在这个区间上的长效 "模式 "已经被发现。特别是由于平衡图几乎是一条直线。

你为什么不考虑评估一下市场的相似性--比如我看到外汇的波动性在过去几年明显下降,甚至今年也是如此--我以前每月能赚到3-4倍的钱,而现在只是在我的外汇TS上没有任何动作和交易。

然后,一切都要客观地看待,试着理解TS的工作,如果它真的很简单,想想它的行动是否合理,或者是否是一个机会问题。


fxsaber:

这种推理到底有什么问题呢?

错误的推理,因为它假设了市场的静止性,而这并不是同...

fxsaber:

我假设事实上输入的参数不是六个,而是常规的一百万。这是再现TS算法的通用机器的输入参数的数量。也就是说,算法本身就是一组特定的输入参数。

如果我们谈论的是指标,那么参数就更多了,因为我们应该考虑指标本身的逻辑,几乎指标代码中的每一个if都是一个单独的条件,当然,这将产生无数的组合。然而,我个人认为,相反,使用指标是一种明智的做法,因为我假设许多市场参与者使用它们,这意味着有可能用钱抓住参与者TS的一点逻辑。

 
fxsaber:

问题01.

以下指标只有一个外部输入参数

  • 指数平滑法--周期/系数。
  • PriceChannel(每个区间的最高和最低价格)--区间的大小。
  • ZigZag - 最小膝盖的大小。

我选择这些指标正是因为其外部输入参数最少。

是否有可能在MO方法的帮助下重现他们的算法。也就是说,采取任何历史,以任何参数运行指标,并将其送入MO。是否有可能在输出中获得相应的指标算法?

类似EMA的平滑可以准确获得,我希望你指的是结果而不是代码形式的 "算法" :)

我不太确定PriceChannel和ZZ的情况,我相信它们会有缺陷。总的来说,这个任务很有意思,谢谢:)

fxsaber:

问题02.

假设有四个输入参数的TS在某个区间进行了数千次交易。添加两个可能变体数量少的输入参数作为过滤器。输出将是一个大约有一千次交易的直线图。而且所有这些都或多或少地均匀地分布在整个测试区域。


在OOS上损失初始区间的5%的高概率是什么原因?巨大的间隔和仅有的六个输入给了真正大量的交易一个直接的结果。而出来的是一个赤裸裸的配合。

这是否意味着有六个以上的参数?这有点像对第一个问题 的参考--简单的算法在本质上不是很复杂吗?

与其说是预测,不如说是策略算法和MM的类型问题。如果你不知道你的估计可能会遇到什么样的错误,你可以用其中一个参数计算出错误的概率,你可以计算出数学预测的最大值。

fxsaber:

问题03.

我在实践中多次面临这样的情况。TS显示测试区间的利润。当你打开OOS的几倍时,利润仍然是一样的。在真实账户上投注,几个月来显示的利润是一样的。


而在某一时刻,系统地倒下了。没有重新优化相同的TS,就没有积极的结果。在最好的情况下,它减缓了暴跌的速度。

一段时间后,程序员明白一切都很糟糕,于是离开了真实账户。你观察了几个月,TS是如何在测试器中丢失的。


突然间,两个星期的利润,一个月的利润,OOS月-利润。这是同一个TS。你把它放在真实的地方,得到的一切与第一段中描述的一样。

这不是一个假想的情况,而是一个实践的案例。在这种情况下,TS只在少数符号上表现出它的严肃性。在其他人身上,它是一个常年的消耗。


当然,TS也不需要每天二十四小时进行交易。可能有一个日内交易区间。


就常见的MO应用实践而言,是否有可能获得具有这种特征的TS?

我不认为任何人可以 "用手抚摸自己的心 "来评论这种特性。总的来说,你不应该把MoD当成一个独立的东西来使用,MoD只是统计学的延伸,一般的算法都是MoD,甚至网状优化也是MoD,所以算法交易中一直都有MoD:)

懒人有一种倾向,希望搜索TC的完全自动化,让IR为他们做一切,幸运的是,这在很长一段时间内不会发生,当它发生时,它不会有财务意义,但与此同时,经典的IR不好寻找明智的迹象,"深度 "在各方面都非常异想天开,要与它合作是痛苦的,结果是模糊的。

 
fxsaber:

我的业余推理是这样的。

TC中的自由度非常少。所以适合的概率下降。

数以千计的交易均匀地分布在区间上--这意味着这个区间上的长期 "模式 "已经显现。特别是由于平衡图几乎是一条直线。

这种推理实际上有什么问题呢?我假设事实上输入的参数不是六个,而是常规的一百万。这是再现TC算法的通用机器的输入参数的数量。也就是说,算法本身就是一些输入参数的集合。

错误的是,当估计一个时间序列时(不管它是一个价格、一串骰子的滚动或 "幸运轮 "的数字......甚至是一个温度图)。

你(和我们这个论坛的所有参与者)假设 时间序列在未来一定会有这样的表现--我们试过了!但我们没有。不幸的是,拟合总是存在的,我们使用的输入数据越多,拟合度和我们的信心就越大

阅读文章的第一部分:Hubrahttps://habr.com/ru/company/ods/blog/322716/

图前

真的很喜欢这个演讲


好了,关于你和MO的问题,我的二流子推理。

为训练准备输入数据的问题,一般来说,ZigZag是一个麻烦 - 最简单的事情是给ZZ的价格结点 - 训练,测试 - 不工作,为什么?- 因为它与特定的数据紧密结合,未来没有这样的价格,NS是一个有规律的多项式y=ax+bx+cx+dx+ex.....,多项式的数量就是神经元的数量,神经元越多,质量越好(NS的误差),但重新训练的速度更快发生....。通过发明新类型的NS来对抗过度学习,但也有它更好的地方,它是更糟糕的....。

但对于周期性的函数,NS会起作用,实际上是完美的--在任何规模下的正弦/余弦图,并且用最小的数据进行学习--因为这种函数可以用泰勒级数展开来写?(已经记不清了) - 这将是五个多项式y = ax+bx+cx+dx+ex

ZS:对于价格序列,没有人设法发明一个多项式公式--这就是为什么NS不能完美地工作......也许只是一个公式并不存在 ))))

 
吉安尼

这更像是策略算法和MM的类型问题,而不是预测问题。如果我们想得到一个更客观的图片,我们至少应该去除平均数,但这还不够,IMHO对预测的期望应该被正确测量(趋势),你不仅可能欺骗别人,也可能欺骗自己。

我今晚在旋转一些东西。作为一个未被引用的答案,我想其他人读起来会很有趣。

https://www.mql5.com/ru/blogs/post/728196

EURDKK vs swap
EURDKK vs swap
  • www.mql5.com
Тиковая ТС, без использования каких-либо индикаторов, включая бары. Более того, никак не обращается к истории цены. Внутри нет циклов. В общем быстрая однопроходная болванка. При этом еще и переворотная: сигнал на закрытие является сигналом на открытие противоположной позиции. Т.е. в рынке постоянно. Постоянный лот. Ну и для некоторой честности...
 
fxsaber:

1.是的,有一定的准确性(近似误差)。

2.以一个三度多项式(只有3个自由项)为例,将其拟合到一公里长的图形中。这是否意味着它将在OOS上工作? 当然不是。曲线几乎会立即开始分化,但有时你可以幸运地得到方向。如果被利用的模式是未知的(理论上、概念上、根本上--不管是什么),那么这个问题可以被驳回,因为它总是适合SB的

3.在国防部方面,你可以得到任何你想要的东西。基本上这些地块会有一定的趋势,如果它们是相似的,那么它就会发挥作用。也就是说,在这种情况下,是全球趋势发生了变化,最有可能的是,市场再次变得与原来类似,在中期内。 这就是为什么它起作用/不起作用。

所有这些问题都在计量经济学 的概念层面得到了解决:线性趋势是主要组成部分,它首先被预测。然后围绕直棍进行非线性波动,前提是趋势持续存在。由于缺乏迭代,最大的趋势无法预测,也就是说,所有的不确定性都将来自于长期计划。只需几个自由术语,通常不超过3个,就可以描述任何市场曲线。 MOS已经可以根据剩下的未预测的东西的残差进行调整。