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

 
罗费尔德

我在回答 "我们为什么需要火花 "的问题。

你在证明对别人的系统的需求,但你不能展示你个人对你的图书馆的能力,也不能回答我的具体问题,而且还有一个入门级的技能任务。https://www.mql5.com/ru/forum/86386/page1033#comment_8211170

实际上,该模式包含了移动平均线交叉的简单策略的信号--EMA9和EMA14,略带噪音,以提高盈利能力)。

我在此发布完整的答案模板--带有初始信号的解决方案,指标叠加以及在上述信号训练的一个EA的测试器中的视觉运行。

我把EA_EURUSD_H1_NN - 基于神经网络,EA_EURUSD_H1_RF - 基于随机森林。

专家顾问在EURUSD H1服务器MetaQuotes-Demo上进行测试,相应的测试图表如下所示。

...神经元网


......随机森林

在这两张图上都有一个训练期,即训练信号的时期,请看模式。

Машинное обучение в трейдинге: теория и практика (торговля и не только)
Машинное обучение в трейдинге: теория и практика (торговля и не только)
  • 2018.07.29
  • www.mql5.com
Добрый день всем, Знаю, что есть на форуме энтузиасты machine learning и статистики...
附加的文件:
 
伊万-内格雷什尼

你是在证明对别人的系统的需求,但要展示你个人对你的图书馆的能力,并回答我的具体问题,还有一个任务是入门级的技能。https://www.mql5.com/ru/forum/86386/page1033#comment_8211170

实际上,该模式包含了移动平均线交叉的简单策略的信号--EMA9和EMA14,略带噪音,以提高盈利能力)。

我粘贴了答案的完整模板--带有初始信号的解决方案,叠加指标和在上述信号上训练的一个专家顾问的测试器中的视觉运行。

我把EA_EURUSD_H1_NN - 基于神经网络,EA_EURUSD_H1_RF - 基于随机森林。

顾问在EURUSD H1服务器MetaQuotes-Demo上测试,下面是相应的测试图表。

...神经元网


......随机森林

在这两张图上都标出了训练期,即有训练信号的时期,请看模式。

NN是你的秘密网格吗?

而功能是完全一样的?

 
马克西姆-德米特里耶夫斯基

NN是你的秘密网格吗?

而且功能完全相同?

是的,但重点是不同的--让我们在格式上达成一致,并交换关于交易的IO的信息,否则我们不会有任何进展,只有盲目的折叠。

PS:两个EA中的特征都是通过OHLC条来计算的,其数量和计算公式都是相同的。

 
伊万-内格雷什尼

是的,但重点是不同的--让我们在格式上达成一致,并交换关于交易的IO信息,否则我们不会有任何进展,只有犯规,瞎子对瞎子的风格。

PS:在两个EA中,筹码都是用OHLC棒计算的,它们的数量和计算公式都是一样的。

你应该加入我们的聊天室,我们在那里讨论策略并进行谈判。有很多按主题划分的隔离,谁在乎什么是有趣的。

重要或秘密的话题是不允许外人知道的

 
Maxim Dmitrievsky:

关于 "火花",很长时间以来都很清楚,我没有问。我是在问这个想法。用火花的这种方法只是失控,因为学习的方式效率低下,所需的力量也不多。

同样可以通过在MT5云中的优化来完成,不需要支架。我不知道你的产出,也不知道它是否给你带来了利润,但它没有,这种算法总是会因为过度拟合而失败。

IMHA

有一种观点认为,建立的模型应该总是返回0或1。

但是,如果我们把模型返回的结果当作指标的结果来处理呢?试图通过MSE等来估计这样的模型不会有任何好处。但当你应用这样的模型,买入参数>0.75,卖出<0.25,你将获得良好的利润。

这个想法本身:把不同指标的几个数据扔进随机森林,得到一个超级指标。

寻找圣杯的方式需要检查非标准的想法。

 
罗费尔德

有一种观点认为,一个构建的模型应该总是返回0或1。

但是,如果我们把模型返回的结果作为一个指标来对待呢?试图通过MSE等来估计这样的模型不会有任何好处。但当你应用这样的模型,买入参数>0.75,卖出<0.25,你将获得良好的利润。

这个想法本身:把不同指标的几个数据扔进随机森林,得到一个超级指标。

寻找圣杯的方法需要测试出格的想法。

森林并没有给出类成员的概率,所以这些不等式是无稽之谈。

>>0.5,就是这样,没有其他办法。然后还有一个问题,即二值化的标志和输出与否,哪个更好。

你可以把0到100分成几类,没有区别,这不是NS。
 
马克西姆-德米特里耶夫斯基

森林并没有给出类别成员的概率,所以这些不等式是无稽之谈。

>>0.5,就这样,没有其他办法。而另一个问题是,什么是更好的--二进制的标志和输出或不。

你可以把它分成从0到100的等级,这和NS不一样。
如果没有概率,那么这些线是做什么的?
static void CDForest::DFProcess(CDecisionForest &df,double &x[],double &y[])
...
//--- calculation
   v=1.0/(double)df.m_ntrees;
   for(i_=0;i_<=df.m_nclasses-1;i_++)
      y[i_]=v*y[i_];
 
罗费尔德
如果没有概率,那么这些线是做什么的?

哦,对了。

ALGLIB中包含的所有分类算法的结果不是对象所属的类别,而是一个条件概率的向量。

但这并不能让人感到安慰。信号会更少,结果不一定更多。例如,对我来说,它没有。我现在到处都设置了0.5的阈值。

更为重要的是,跟踪和OOB上的错误的可比性。

 
Maxim Dmitrievsky:

哦,对了。

ALGLIB中包含的所有分类算法的结果不是对象所属的类别,而是一个条件概率的向量。

但这并不能让人感到安慰。信号会更少,结果不一定更多。例如,对我来说,它没有。我现在到处都设置了0.5的阈值。

更重要的是火车上的错误和OOB的可比性。

但这些都是修改算法的特殊性。

AlgLib实现了经典的随机森林,无需修改。这在《火花》中也是一样的。

将阈值设置为0.5=使数据适应结果。

P.S. 即使是随机森林生成的参数也是不同的。

 
罗费尔德

但这些都是修改算法的特殊性。

AlgLib实现了一个经典的随机森林,无需修改。在Spark也是如此。

将阈值设置为0.5=使数据适应结果。

P.S. 即使是随机森林的生成参数也是不同的...

我想我也有algLib )

这里有一个描述,我不知道它有多 "经典"。

http://alglib.sources.ru/dataanalysis/decisionforest.php

��� �������� ������� - ���������� ����������
  • alglib.sources.ru
��� �������� �������� ������� �������� ��������� ������������� � ��������� RDF, � ����� �������� ����������� ��� ������ � ������ �������� ������� � ������ ��� �������� �������� �����. ����� ������� ���� �������� ����������� ���������� ������ �� ����� ��������� ����������� ������� ������������� � ���������. ��� ���������� ������ ����������...