交易中的机器学习:理论、模型、实践和算法交易 - 页 95 1...888990919293949596979899100101102...3399 新评论 Mihail Marchukajtes 2016.08.08 21:06 #941 Vizard_。"Gopher "我找不到了,搞砸了)))。而所有这些练习都是为了什么?任何一个嬉皮士都会理解。 说实话,我不明白.........。 Dr. Trader 2016.08.08 21:10 #942 mytarmailS:但这是不对的,一个好的预测器是能解释目标变量的,而不是能解释自己的,我不知道你怎么能知道一个预测器的质量而不把它与目标变量相比较,我不明白....这取决于正在接近问题的哪一端。最初,我们不知道想要的预测因素,也不知道目标变量。而为了成功地进行交易,我们需要了解这两点。我们不可能同时知道这两点,这就是为什么我们应该根据我们的目标变量来选择预测器。或者你可以收集好的预测因素,然后用你的经验来预测它们可能发生的情况。第一个办法。例如,我有一个目标变量--价格在下一个交易日的上升/下降。我选它并不是因为它是一个好的目标变量,而是因为我必须从某个地方开始,所以我选了一些比较容易的东西 :)接下来,我拿了一堆指标,现在我正试图在 "一堆指标 "上教模型识别 "上升/下降"。我很高兴它至少在一定程度上起了作用,因为不能保证随机挑选的目标变量是可预测的,也不能保证预测者有足够的信息来进行预测。ForeCA在这种情况下只起到预处理数据的作用,使其成为神经网络容易学习的形式。例如,可以对数据进行归一化处理,或取相邻数值的三角,或用它们做PCA成分,等等。所有这些都使neuronka的工作更容易,它更容易在这种预处理的数据上进行训练。在这种情况下,ForeCA需要做的是以某种方式对类似的类进行分组。但不确定ForeCA在这方面是否有帮助--这取决于你的运气和可用的预测器和目标变量。 简而言之,在这种情况下,目标变量与一个模型和预测因素相匹配,这些模型和预测因素加在一起,奇迹般地至少有一些预测能力。另一种方法。我们采取一堆预测因素,根据它们的 "可靠性 "进行排序,并删除不相关的预测因素。例如,如果指标总是有一个恒定的值,它显然是无用的。如果预测器是用随机()函数生成的,它也将是无用的。也就是说,必须留下那些真正拥有一些信息的预测器。我对此了解不多,我唯一记得的是--如何找到预测器对PCA成分的重要性(caret中的pruneSig参数),似乎是充分的估计。在这种情况下,ForeCA应该把苍蝇从肉片中筛选出来,并帮助找到可靠的预测因素。所有这些软件包如何知道什么是重要的,什么是不重要的,这是一个谜,但它们确实找到了嘈杂和随机的预测因素并拒绝它们。一个高质量的预测器将是一个非随机和无噪音的预测器。 接下来,有了一组高质量的预测器,你应该尝试它们来预测一些东西。例如,人们可以建立一个kohonen地图,并找到市场行为 对kohonen地图中的类的依赖性。对哪些班级可以交易,哪些不可以交易做出结论,从而为自己建立一个新的目标变量。目标变量会有很高的预测性,因为它是建立在预测器上的,听起来都不错,但我认为会有很多自身的问题和隐患。 СанСаныч Фоменко 2016.08.08 21:48 #943 Dr.Trader: 这取决于正在接近问题的哪一端。最初,我们不知道想要的预测因素,也不知道目标变量。而为了成功地进行交易,我们需要了解这两点。我们不可能同时知道这两点,这就是为什么我们应该根据我们的目标变量来选择预测器。或者选择一个质量好的预测器,然后看一下用它们可以预测什么。第一个方法.....另一种方法....办法是多种多样的,但我们是否要进行交易?我们要交易什么?一个趋势?偏差?水平?请记住,我们只有两个订单 - 买入/卖出。还是有某一品种的人?进入买入 / 退出买入 / 进入卖出 / 退出卖出这些是目标变量的变体。 下一步。我们能否为我们的交易内容形成一个目标变量?还是在目标和交易系统的想法之间存在一些差距,这是一个错误?等等。但我们必须从我们的交易内容开始。 Vizard_ 2016.08.08 22:21 #944 Mihail Marchukajtes: 你需要用变量v2乘以它的滞后期,再除以v3。 显示10行,有以下几列(v2;Lag1_v2;v3;v11(目标)和一列公式v2*Lag1_v2/v3) v2;Lag1_v2;v3;v11(цель);v2*Lag1_v2/v3 带有该文件的档案不需要下载。 Vizard_ 2016.08.08 22:44 #945 Mihail Marchukajtes: lag看不到网络。 你修剪空线并把它们贴在你想要的地方... Dr. Trader 2016.08.08 23:06 #946 桑桑尼茨-弗门科。准确了解交易的内容。有很多选择,但你可以再次选择不可预测的东西,并花大量时间来学习不可预测的东西。有必要选择在现有预测因素上更容易预测的东西。你必须对如何做这件事进行大量思考。用ForeCA做了一个预测的测试代码。需要一个trainData表,目标变量在最后一列。它将按行划分为2个部分,用于培训/验证(将在中间严格划分)。预测模型是lm,由于某些原因,它总是在例子中与PCA一起使用,我想它在这里也会发挥作用。你可以用另一个模型替换代码中的lm(...)函数。 ForeCA要求数据在cov()之后的矩阵中具有全等级。我附上了提前检查的代码,并删除了低特征值的列。这一切都在一个循环中,需要很长的时间来执行,而且可能可以做得更简单。我通过这种方式消除了部分预测因素,我不知道这是否是好事。 到目前为止,我还没有得到任何结果,这个包吃了5G的绝望,很长时间我都在想,试试吧,也许它能给人带来好的预测。 附加的文件: ForeCA_lm_example.txt 3 kb Mihail Marchukajtes 2016.08.09 06:49 #947 蜥蜴_。 显示有这些列的10行(v2;Lag1_v2;v3;v11(目标)和一个有公式v2*Lag1_v2/v3的列) v2;Lag1_v2;v3;v11(цель);v2*Lag1_v2/v3 带有该文件的档案不需要下载。 说实话,我不明白这个游戏的意义....。根据输入数据的不狡猾的转换来建立输出变量,是没有意义的。如果TC能很好地工作,就没有必要使用网络。另一件事让我想到,如果优化器不是一行一行地分析训练文件,而是作为一个整体来分析,会怎么样呢?通过寻找不仅是列之间的相关性,而且是任何列的过去值的相关性。其结果可能相当有趣。除了数据归一化,还会有数据预处理,不仅产生归一化公式,还会产生预处理公式,如:。在归一化之前,v2必须乘以lag1 v5,等等。那么我认为搜索将更加有趣。或者说,预处理给了我们转换公式,一种预优化器。然后我们将这些公式应用于数据,获得另一个数据集,然后将其塞入优化器,建立模型....。这个给你怎么样.....????某种多维搜索的依赖关系,不仅在列之间,而且在与过去的值的关系之间。谁能告诉我如何在MKUL???? 中安排这个问题?我想试一试 :-) Mihail Marchukajtes 2016.08.09 07:10 #948 例如,在建立一个模型之前,我使用优化器MKUL对每个输入的输出进行优化。也就是说,如果我使用魔杖,那么在建立模型之前,我在训练区间选择魔杖的参数,使其尽可能多地给出有利可图的信号,因此在每次输入时,我都把它放入优化器....iii 和....。模型变得更加稳定。该模型是稳定的,但大约有50%的概括性或更多一点,因为在MKUL的优化过程中,每个谓词在罕见的情况下给出了大于50%的盈利交易的数量。但我是对每个输入单独做的,主要是在某一节选择了平均参数和滞后,与其他输入没有关系。假设我们像我上面写的那样,用优化器来搜索这种相关性。然后得到数据之间的关系参数。要把它们应用于数据,然后把它全部塞进优化器。我想那时就有意义了,模型将获得适当的概括水平。但我不确定如何安排...我在想...我愿意接受所有的想法............我认为,MKUL上的一个简单的神经网络 可以帮助,它可以建立这样的曲线,它将最大限度地正确描述测试集上的所有信号,从而帮助在Reshetov基本优化器中建立良好的模型(这是谁坐什么的问题)。在MKUL????,有一些简单的网格。 mytarmailS 2016.08.09 09:31 #949 Dr.Trader:用ForeCA.....,为预测做了一个测试代码。我也是...我决定做一个快速的,拿着虹膜,添加了10个带噪音的预测因子我只是训练了Forest,然后我采取了相同的日期,并使用foreca将其减少到4个预测因子并再次训练Forest。结果。新的数据上,只有弗雷斯特Prediction setosa versicolor virginica setosa 16 0 0 versicolor 0 15 1 virginica 0 0 18 Overall Statistics Accuracy : 0.98 福雷斯特甚至没有注意到数据中的噪音......而Foreca的情况更糟Prediction setosa versicolor virginica setosa 6 6 4 versicolor 5 10 1 virginica 8 5 5 Overall Statistics Accuracy : 0.42 附加的文件: code.txt 1 kb СанСаныч Фоменко 2016.08.09 10:08 #950 mytarmailS: 我也是...我决定做一个快速修复,添加了10个带噪音的预测因子然后用foreCA将同一日期的噪声降低到4个预测因子,并再次对它们进行Forest训练。结果。新的数据上,只有弗雷斯特福雷斯特甚至没有注意到数据中的噪音......而对于foreca来说,情况更糟。真理是好的,但幸福是更好的!真相=42%,哦,是积极的去势。虽然有可能生活得很幸福,但如果是零去势,就有可能是零去势。 1...888990919293949596979899100101102...3399 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
"Gopher "我找不到了,搞砸了)))。而所有这些练习都是为了什么?任何一个嬉皮士都会理解。
但这是不对的,一个好的预测器是能解释目标变量的,而不是能解释自己的,我不知道你怎么能知道一个预测器的质量而不把它与目标变量相比较,我不明白....
这取决于正在接近问题的哪一端。最初,我们不知道想要的预测因素,也不知道目标变量。而为了成功地进行交易,我们需要了解这两点。我们不可能同时知道这两点,这就是为什么我们应该根据我们的目标变量来选择预测器。或者你可以收集好的预测因素,然后用你的经验来预测它们可能发生的情况。
第一个办法。例如,我有一个目标变量--价格在下一个交易日的上升/下降。我选它并不是因为它是一个好的目标变量,而是因为我必须从某个地方开始,所以我选了一些比较容易的东西 :)接下来,我拿了一堆指标,现在我正试图在 "一堆指标 "上教模型识别 "上升/下降"。我很高兴它至少在一定程度上起了作用,因为不能保证随机挑选的目标变量是可预测的,也不能保证预测者有足够的信息来进行预测。ForeCA在这种情况下只起到预处理数据的作用,使其成为神经网络容易学习的形式。例如,可以对数据进行归一化处理,或取相邻数值的三角,或用它们做PCA成分,等等。所有这些都使neuronka的工作更容易,它更容易在这种预处理的数据上进行训练。在这种情况下,ForeCA需要做的是以某种方式对类似的类进行分组。但不确定ForeCA在这方面是否有帮助--这取决于你的运气和可用的预测器和目标变量。
简而言之,在这种情况下,目标变量与一个模型和预测因素相匹配,这些模型和预测因素加在一起,奇迹般地至少有一些预测能力。
另一种方法。我们采取一堆预测因素,根据它们的 "可靠性 "进行排序,并删除不相关的预测因素。例如,如果指标总是有一个恒定的值,它显然是无用的。如果预测器是用随机()函数生成的,它也将是无用的。也就是说,必须留下那些真正拥有一些信息的预测器。我对此了解不多,我唯一记得的是--如何找到预测器对PCA成分的重要性(caret中的pruneSig参数),似乎是充分的估计。在这种情况下,ForeCA应该把苍蝇从肉片中筛选出来,并帮助找到可靠的预测因素。所有这些软件包如何知道什么是重要的,什么是不重要的,这是一个谜,但它们确实找到了嘈杂和随机的预测因素并拒绝它们。一个高质量的预测器将是一个非随机和无噪音的预测器。
接下来,有了一组高质量的预测器,你应该尝试它们来预测一些东西。例如,人们可以建立一个kohonen地图,并找到市场行为 对kohonen地图中的类的依赖性。对哪些班级可以交易,哪些不可以交易做出结论,从而为自己建立一个新的目标变量。目标变量会有很高的预测性,因为它是建立在预测器上的,听起来都不错,但我认为会有很多自身的问题和隐患。
这取决于正在接近问题的哪一端。最初,我们不知道想要的预测因素,也不知道目标变量。而为了成功地进行交易,我们需要了解这两点。我们不可能同时知道这两点,这就是为什么我们应该根据我们的目标变量来选择预测器。或者选择一个质量好的预测器,然后看一下用它们可以预测什么。
第一个方法.....
另一种方法....
办法是多种多样的,但我们是否要进行交易?
我们要交易什么?
一个趋势?
偏差?
水平?
请记住,我们只有两个订单 - 买入/卖出。还是有某一品种的人?进入买入 / 退出买入 / 进入卖出 / 退出卖出
这些是目标变量的变体。
下一步。
我们能否为我们的交易内容形成一个目标变量?
还是在目标和交易系统的想法之间存在一些差距,这是一个错误?
等等。
但我们必须从我们的交易内容开始。
你需要用变量v2乘以它的滞后期,再除以v3。
v2;Lag1_v2;v3;v11(цель);v2*Lag1_v2/v3
带有该文件的档案不需要下载。
lag看不到网络。
桑桑尼茨-弗门科。
准确了解交易的内容。有很多选择,但你可以再次选择不可预测的东西,并花大量时间来学习不可预测的东西。有必要选择在现有预测因素上更容易预测的东西。你必须对如何做这件事进行大量思考。
用ForeCA做了一个预测的测试代码。需要一个trainData表,目标变量在最后一列。它将按行划分为2个部分,用于培训/验证(将在中间严格划分)。预测模型是lm,由于某些原因,它总是在例子中与PCA一起使用,我想它在这里也会发挥作用。你可以用另一个模型替换代码中的lm(...)函数。
ForeCA要求数据在cov()之后的矩阵中具有全等级。我附上了提前检查的代码,并删除了低特征值的列。这一切都在一个循环中,需要很长的时间来执行,而且可能可以做得更简单。我通过这种方式消除了部分预测因素,我不知道这是否是好事。
到目前为止,我还没有得到任何结果,这个包吃了5G的绝望,很长时间我都在想,试试吧,也许它能给人带来好的预测。
显示有这些列的10行(v2;Lag1_v2;v3;v11(目标)和一个有公式v2*Lag1_v2/v3的列)
v2;Lag1_v2;v3;v11(цель);v2*Lag1_v2/v3
带有该文件的档案不需要下载。
用ForeCA.....,为预测做了一个测试代码。
我也是...我决定做一个快速的,拿着虹膜,添加了10个带噪音的预测因子
我只是训练了Forest,然后我采取了相同的日期,并使用foreca将其减少到4个预测因子并再次训练Forest。
结果。
新的数据上,只有弗雷斯特
福雷斯特甚至没有注意到数据中的噪音......
而Foreca的情况更糟
我也是...我决定做一个快速修复,添加了10个带噪音的预测因子
然后用foreCA将同一日期的噪声降低到4个预测因子,并再次对它们进行Forest训练。
结果。
新的数据上,只有弗雷斯特
福雷斯特甚至没有注意到数据中的噪音......
而对于foreca来说,情况更糟。
真理是好的,但幸福是更好的!
真相=42%,哦,是积极的去势。
虽然有可能生活得很幸福,但如果是零去势,就有可能是零去势。