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

 
阿列克谢-维亚兹米 金。

而如果我们找到具有良好概率的分支,并将其编码为一个预测器,然后再一次给树磨,那么树就会思考如何从发现的结果中进行改进(预测器它就应该喜欢,因为它们有很大比例的正确决策?

我不知道 :)我没有对这棵树进行这样的实验。但是,例如各种GBM模型都是这样工作的--它们建立一棵树,然后再建立一棵与前一棵相比结果更好的树,然后再建立一棵,如此反复。

 
交易员博士

如果你进一步分支,这个数据的准确性当然会提高。但在新的数据中,它更有可能下降。

这里达到了一定的最佳状态,此时树已经学到了一些东西,但还没有过拟合,我们可以期待在新数据上有类似的结果。

嗯,但话说回来,如果我们把这棵树压缩成一个预测器,并进一步寻找解决方案?事实上,我的预测器往往已经进行了某种预计算,对数值进行了分类等等,也就是说,如果我给树提供原始数据,分支会更早停止,而且误差更大......而在此基础上向正确的方向分支将得到结果,但这个方向是未知的,如何确定它是一个问题。

 
交易员博士

我不知道 :)我还没有在树上做过这样的实验。但是,例如所有种类的GBM模型都是这样工作的--它们建立一棵树,然后是另一棵,与前一棵相比会有改进,然后是另一棵,等等。

显然,我需要阅读这些GBM模型......但他们在哪里复制它们(只有R?)

仍然需要尝试过滤器--即使是我的程序也至少给出了一些结果,也许你的程序会给出一些有趣的东西,因为事实上所有的预测器都在TC中被用作过滤器。

 

操盘手博士,我发现如果我们把Levl_first_H1, Levl_High_H1, Levl_Low_H1, Levl_Support_H1, Levl_Close_H1 ,作为一个独立的整体规则来考虑,一般情况下,按照最初的设想,我们得到一个奇怪的表格


从表中可以看出。

1.在考虑到目标的情况下,用6088个组合来描述所有条形的两年,如果我们不考虑目标,那就更少了,也就是说,在均匀分布的情况下,一个组合描述了86行的两年,但我认为有更多的组合和更少的组合。

2.从2015年到2016年出现的新的独特规则为41%,加上目标1的新规则为55%,也就是说,2015年的规则有45%保持并继续有效,我认为这已经不错了。

3.2015年和2016年的样本只使用了所有可能组合的21%,因此,要么其余的是极其独特的,要么是采样不足。

在建立树的时候,我们难道不应该以某种方式使用这些事实吗?

已添加。

然后我做了这个实验,我把2016年目标0和1的规则添加到目标1和0中,清除了重复的内容,然后删除了重复的行,得到了一个令人沮丧的结果,我无法理解的是

事实证明,目标 "1 "的错误规则为81%,目标 "0 "的错误规则为38%,尽管我不知道包含错误百分比的行有多大......。有可能比例是不同的,否则新的规则会与2016年检测到的规则数量完全一样,但情况并非如此,这意味着规则并不总是被满足,它们只是需要额外的条件--预测器。

 

阿列克谢-维亚兹米 金。


从表中可以看出。

这些规则并不总是被执行,它们只是需要额外的条件--预测器。

阿列克谢,我建议马上做一个成熟的NS-ka。仅 仅是取样和森林并不能使我们(MQL社区)走得更远。

显然,一个有效的NS战略需要一个分析平台,以便作为一个交易者做出决定--是否进入市场买入,卖出,或者根本不买?买入、卖出或一般情况下,是否值得平仓?

马克西姆和我在这里 幻想过,所以请阅读并确认它是否有意义。

 
geratdc_:

阿列克谢,我建议马上做一个成熟的NS类型的事情。我 们(MQL社区)仅靠样本和脚手架是走不远的。

显然,一个有效的NS战略需要一个分析平台,以便作为一个交易者做出决定--是否进入市场买入,卖出,还是一般情况下?买入、卖出或一般情况下,是否值得平仓?

马克西姆和我曾在这里 幻想过,所以请你看看,确认它是否有意义。

在这里,我只是不确定NS在市场上是否有一席之地......

 

现在注意了。决定这周在Dock脚本和电子邮件网络上工作。

现在是最好的部分,它可能是?????

在最大的神经元数量等于200(默认)的情况下,学习的质量是0.6,由R-score估计。然而,通过将隐藏神经元的最大数量减少到30个,我将估计值提高到0.85(这非常好)。然而,我开始按重量获得模型的副本。我总是得到相同的重量。这就是问题的所在。遗传学顽固地来到了同一个最小函数。数据是否如此毫不含糊,以至于在实数中我们得到了相同的最小值,权重相同。让我们看看这几周的工作情况...

如果确切地说,上周Reshetov的优化器比ELMNN网络获得了更多一点,但安装它们要快得多,所以我将尝试转用它们,如果能成功,我将暂时放弃Reshetov,因为在work....,网络安装太容了。

 
阿列克谢-维亚兹米 金。

显然,我们需要阅读这些GBM模型......他们在哪里复制它们(只有R?)

Python中也应该有。

阿列克谢-维亚兹米 金。

还需要尝试过滤器--即使是我的程序也至少给出了一些结果,也许你的程序会给出一些有趣的东西,因为所有预测器在TC中基本上都是作为过滤器使用的。

我今晚将运行该算法,明天显示结果

阿列克谢-维亚兹米 金。

从表中可以看出。

...

在外汇中,实现100%的准确率并希望模型能很好地工作通常是不可能的,你需要几个月的时间来选择预测器,甚至是一个能很好地配合的目标。通常在达到高于50%的准确率后,该模型就开始记忆训练实例,而不是在其中寻找逻辑模式。所以新数据的结果会越来越差。用你的数据,我得到了60%这个最佳值--当训练和测试数据上的结果大致相同时,但随着更详细的树的分区和更高的精度,森林在新数据上显示出越来越差的结果。

 
Mihail Marchukajtes:

在最大的神经元数量等于200(默认)的情况下,学习的质量是0.6,由R-score估计。然而,通过将隐藏神经元的最大数量减少到30个,我将其提高到了0.85(这非常好)。

遗传学试图为有限数量的函数调用 找到正确的参数。通过缩小这个参数的变体数量(30而不是200),遗传学可以更详细地研究从1到30的区域。而这是对的,如果你知道寻找某些模型参数的具体限制,最好马上给遗传学提供这些信息。


或者说。

gaResult <- ga(type="real-valued",
               fitness = GaFitness,
               min = c(1,1,0),
               max = c(NHID_MAX, length(ACTFUN_NAMES), 1000),
               popSize = 500,
               monitor=plot)

在代码中加入这一行(绿色的),那么遗传学家将在种群中拥有500个个体,而不是默认的50个。而且她将能够测试10倍的模型(但脚本运行时间也将增加10倍),能够尽可能多地尝试模型参数的组合。即使有最大的200个神经元,我认为遗传学也能用0.85找到更好的结果,或者至少是接近它。

 

哦,这将是值得一读的东西,我已经忘记了它是什么。或者说,忘记了GBM和XGboost 之间的区别......或者不知道

gbm可以提升任何模型,xgb似乎是在树上。

我知道,提升比乞讨好一点,通过乞讨建立森林。我不知道过度训练的情况是怎样的。

https://habr.com/company/ods/blog/327250/

https://datascienceplus.com/gradient-boosting-in-r/

Открытый курс машинного обучения. Тема 10. Градиентный бустинг
Открытый курс машинного обучения. Тема 10. Градиентный бустинг
  • 2018.05.17
  • habr.com
Всем привет! Настало время пополнить наш с вами алгоритмический арсенал. Сегодня мы основательно разберем один из наиболее популярных и применяемых на практике алгоритмов машинного обучения — градиентный бустинг. О том, откуда у бустинга растут корни и что на самом деле творится под капотом алгоритма — в нашем красочном путешествии в мир...