交易中的机器学习:理论、模型、实践和算法交易 - 页 3272 1...326532663267326832693270327132723273327432753276327732783279...3399 新评论 Aleksey Vyazmikin 2023.10.01 11:56 #32711 fxsaber #:我为自己的任务制作了它,并分享了工作代码。需要的人可以看看。 在哪里可以看到最终代码? Aleksey Vyazmikin 2023.10.01 12:00 #32712 有人尝试过处理 "异常值 "吗?我说的 "异常值 "不是错误,而是罕见事件。 有趣的是,在某些样本串中,50% 以上的预测器都记录了异常值....。 事实证明,这些异常值很容易进入模型。 因此,看来这不仅对 NS 至关重要....。 Forester 2023.10.01 12:05 #32713 fxsaber #:我不做比较,我提供一个代码,每个人都可以根据自己的情况进行测量。字符串长度 100 就是模式的长度。你可能不需要更多。15000 个样本的内存有限,因为相关矩阵的大小是二次方。样本越多越好。所以我自制了一个程序,可以有一百万个样本。我既不想也没有时间去做客观比较。我只是为了完成自己的任务,并分享了工作代码。谁需要它,谁就能看到它。 加速度的变量 - 输出矩阵应存储在 uchar 中。通常情况下,我们以 1%的增量改变百分比并查看某些内容。uchar - 最多为 +- 128。您可以针对 uchar 和 alglib 修改自己的设计,相关代码可供使用。在内存相同的情况下,矩阵总数可以增加 8 倍。 Forester 2023.10.01 12:18 #32714 Aleksey Vyazmikin #:有人尝试过处理 "异常值 "吗?我说的 "异常值 "不是错误,而是罕见事件。有趣的是,事实证明,在某些样本字符串中,50% 以上的预测器都能固定异常值....事实证明,这些异常值是否被包含在模型中是很愿意的。这样看来,这不仅对 NS 至关重要....。 白天鹅/黑天鹅...fxsaber 在他的博客中写道。在众多变体中,我也有过这样的变体:每隔几年交易一周左右。一般来说,专家坐等动静。但这只是测试仪中的理想表现。在现实生活中,滑点(运动过程中的滑点非常大)会毁掉一切。 Aleksey Vyazmikin 2023.10.01 13:14 #32715 Forester #:白天鹅/黑天鹅.....fxsaber 在他的博客中写道。在众多变体中,我有以下几种:每隔几年交易一周左右。一般来说,专家坐等动静。但这只是测试仪中的理想表现。在现实生活中,滑点(运动过程中的滑点非常大)会毁掉一切。 我试着从样本中删除有大量异常值的线条。 而且,训练结果也发生了根本性的变化。 如果说之前的测试结果平均为正数,而考试结果几乎全部为负数--这是在 100 个模型中得出的结果,那么清除异常值后,结果就发生了变化--测试结果大为恶化(平均利润接近于零),而考试结果恰恰相反--很多模型都变成了正数。 我还不能说这是一种规律,我将尝试在其他样本中进行检验。 此外,如何更好地确定离群值对我来说还是个问题。现在,只要排名不超过 2.5%,我就对双方各取 2.5%。 Aleksey Vyazmikin 2023.10.01 13:15 #32716 一般来说,人们的感觉是,模型在训练后会有一个几年的周期,通过这个周期,模型开始在新数据中突然发现一些模式。 СанСаныч Фоменко 2023.10.01 17:12 #32717 Aleksey Vyazmikin #:我尝试从样本中删除有大量异常值的行。结果,训练结果发生了翻天覆地的变化。如果说之前的测试结果平均为正,而考试结果几乎全部为负,这是从 100 个模型中得出的结果,那么清除异常值后,结果就发生了变化--测试结果变得更糟(平均利润接近零),而考试结果恰恰相反--许多模型都变成了正。我还不能说这是一种规律,我将尝试在其他样本中进行检验。此外,如何最好地确定离群值对我来说还是个问题。现在,只要等级不超过 2.5%,我只取每一方的最高值。 如果只取 2.5%(或其他),离群值的数量取决于分布,这是不对的。 最好是取一个有 100 个图的量值,并且不删除 1%之前和 99%之后的值,而是用 1%和 99%的值代替。不能删除任何内容。 Rorschach 2023.10.01 17:38 #32718 fxsaber #: NumPy 的算法似乎与 ALglib 不同,因为它在性能上有很大差异。但很明显,在整个庞大的 Python 社区中,有一些非常强大的算法专家投入了相当多的时间来研究这个问题。 源代码是公开的,你可以看一看。计算相关性的函数,在右侧有 [源代码],点击后将进入代码。我们感兴趣的是第 2885-2907 行。第 2889 行使用了协方差,点击 cov 后,代码中所有提到 cov 的地方都会出现在右侧。的行后,将跳转到协方差函数,以此类推。MQL 类 C 语言,所有类 C 语言都有 ~90% 的相似性,您可以毫不费力地理解 C#、Java、Python、JavaScript。 Aleksey Vyazmikin 2023.10.01 18:36 #32719 СанСаныч Фоменко #:如果只取 2.5%(或其他比例),那么删除的数量就取决于分布情况,这是不对的。 最好是取一个有 100 个图的量值,并且不删除 1%之前和 99%之后的值,而是用 1%和 99%的值代替。不能删除任何内容。 我取的是数据的百分比,而不是范围的百分比。因此,如果数据量很大(很密集),在范围尺度上停止的速度会很快。 从均值和方差跳转的效果很小。 刚刚探讨了用其他值替换的问题(但我这样做只是为了量化),我喜欢用剩余子集中的随机值替换,同时考虑到概率。 СанСаныч Фоменко 2023.10.01 18:49 #32720 Aleksey Vyazmikin #:我采取的是数据的百分比,而不是范围的百分比。 因此,如果数据量很大(很密集),在范围刻度上停止的速度会很快。从平均值和方差跳转的效果甚微。刚刚探讨了用其他值替换的问题(但我这样做只是为了量化),我喜欢用剩余子集中的随机值替换,同时考虑到概率。 量化是一种概率。因此,我们要删除/替换概率小于 1%/大于 99% 或其他值的数据。你不能切断数量--我们有倾斜和有尾的分布。 他们写道,最好将替换值作为 MOE 对该数量的预测值。但在我看来,这似乎有点矫枉过正。 1...326532663267326832693270327132723273327432753276327732783279...3399 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我为自己的任务制作了它,并分享了工作代码。需要的人可以看看。
在哪里可以看到最终代码?
有人尝试过处理 "异常值 "吗?我说的 "异常值 "不是错误,而是罕见事件。
有趣的是,在某些样本串中,50% 以上的预测器都记录了异常值....。
事实证明,这些异常值很容易进入模型。
因此,看来这不仅对 NS 至关重要....。
我不做比较,我提供一个代码,每个人都可以根据自己的情况进行测量。
字符串长度 100 就是模式的长度。你可能不需要更多。
15000 个样本的内存有限,因为相关矩阵的大小是二次方。样本越多越好。所以我自制了一个程序,可以有一百万个样本。
我既不想也没有时间去做客观比较。我只是为了完成自己的任务,并分享了工作代码。谁需要它,谁就能看到它。
加速度的变量 - 输出矩阵应存储在 uchar 中。通常情况下,我们以 1%的增量改变百分比并查看某些内容。uchar - 最多为 +- 128。您可以针对 uchar 和 alglib 修改自己的设计,相关代码可供使用。在内存相同的情况下,矩阵总数可以增加 8 倍。
有人尝试过处理 "异常值 "吗?我说的 "异常值 "不是错误,而是罕见事件。
有趣的是,事实证明,在某些样本字符串中,50% 以上的预测器都能固定异常值....
事实证明,这些异常值是否被包含在模型中是很愿意的。
这样看来,这不仅对 NS 至关重要....。
白天鹅/黑天鹅...fxsaber 在他的博客中写道。在众多变体中,我也有过这样的变体:每隔几年交易一周左右。一般来说,专家坐等动静。但这只是测试仪中的理想表现。在现实生活中,滑点(运动过程中的滑点非常大)会毁掉一切。
白天鹅/黑天鹅.....fxsaber 在他的博客中写道。在众多变体中,我有以下几种:每隔几年交易一周左右。一般来说,专家坐等动静。但这只是测试仪中的理想表现。在现实生活中,滑点(运动过程中的滑点非常大)会毁掉一切。
我试着从样本中删除有大量异常值的线条。
而且,训练结果也发生了根本性的变化。
如果说之前的测试结果平均为正数,而考试结果几乎全部为负数--这是在 100 个模型中得出的结果,那么清除异常值后,结果就发生了变化--测试结果大为恶化(平均利润接近于零),而考试结果恰恰相反--很多模型都变成了正数。
我还不能说这是一种规律,我将尝试在其他样本中进行检验。
此外,如何更好地确定离群值对我来说还是个问题。现在,只要排名不超过 2.5%,我就对双方各取 2.5%。
我尝试从样本中删除有大量异常值的行。
结果,训练结果发生了翻天覆地的变化。
如果说之前的测试结果平均为正,而考试结果几乎全部为负,这是从 100 个模型中得出的结果,那么清除异常值后,结果就发生了变化--测试结果变得更糟(平均利润接近零),而考试结果恰恰相反--许多模型都变成了正。
我还不能说这是一种规律,我将尝试在其他样本中进行检验。
此外,如何最好地确定离群值对我来说还是个问题。现在,只要等级不超过 2.5%,我只取每一方的最高值。
如果只取 2.5%(或其他),离群值的数量取决于分布,这是不对的。
最好是取一个有 100 个图的量值,并且不删除 1%之前和 99%之后的值,而是用 1%和 99%的值代替。不能删除任何内容。
NumPy 的算法似乎与 ALglib 不同,因为它在性能上有很大差异。但很明显,在整个庞大的 Python 社区中,有一些非常强大的算法专家投入了相当多的时间来研究这个问题。
源代码是公开的,你可以看一看。计算相关性的函数,在右侧有 [源代码],点击后将进入代码。我们感兴趣的是第 2885-2907 行。第 2889 行使用了协方差,点击 cov 后,代码中所有提到 cov 的地方都会出现在右侧。的行后,将跳转到协方差函数,以此类推。MQL 类 C 语言,所有类 C 语言都有 ~90% 的相似性,您可以毫不费力地理解 C#、Java、Python、JavaScript。
如果只取 2.5%(或其他比例),那么删除的数量就取决于分布情况,这是不对的。
最好是取一个有 100 个图的量值,并且不删除 1%之前和 99%之后的值,而是用 1%和 99%的值代替。不能删除任何内容。
我取的是数据的百分比,而不是范围的百分比。因此,如果数据量很大(很密集),在范围尺度上停止的速度会很快。
从均值和方差跳转的效果很小。
刚刚探讨了用其他值替换的问题(但我这样做只是为了量化),我喜欢用剩余子集中的随机值替换,同时考虑到概率。
我采取的是数据的百分比,而不是范围的百分比。 因此,如果数据量很大(很密集),在范围刻度上停止的速度会很快。
从平均值和方差跳转的效果甚微。
刚刚探讨了用其他值替换的问题(但我这样做只是为了量化),我喜欢用剩余子集中的随机值替换,同时考虑到概率。
量化是一种概率。因此,我们要删除/替换概率小于 1%/大于 99% 或其他值的数据。你不能切断数量--我们有倾斜和有尾的分布。
他们写道,最好将替换值作为 MOE 对该数量的预测值。但在我看来,这似乎有点矫枉过正。