我在外汇市场上有一个交易策略,我正在努力改进。
我有一个很大的表(100k+行),它表示市场中的每一种可能的交易、交易类型(买入或卖出)、交易结束后的利润/损失,以及10个左右的额外变量,表示在交易开始时的各种市场衡量标准。
我正在尝试找出这10个变量中是否有任何变量与利润/亏损有显着相关。
例如,假设变量X的范围从50到-50。买入订单的X平均值为25,卖出订单的X平均值为-25。
如果大多数有利可图的买入订单的价值为X> 25,而大多数有利可图的卖出订单的价值为X< -25,那么我会认为X与利润的关系是重要的。
我希望这是一个好的起点。我已经安装了RapidMiner 5
,以防有人能给我一个具体的建议。
发布于 2011-09-25 22:51:44
决策树可能是最好的起点。
树本身是特征重要性排名(或OP中所述的重要变量)的可视摘要。
(即,重要变量)--最重要的变量是
根节点,并且比两个子节点更重要,而这两个子节点又比它们的四个子节点的总和更重要。“显着性”在这里指的是解释的方差百分比(相对于某个响应变量,也就是“目标变量”或你试图预测的东西)。一个条件:通过对决策树的目测检查,您无法区分变量重要性和
在相同等级的节点之间。
如果您以前没有使用过它们,下面是决策树的工作原理:算法将遍历数据中的每个变量(列)和每个变量的每个值,并根据每个值将数据分成两个子集。这些拆分中的哪一个实际上是由算法选择的--即拆分标准是什么?选择最“净化”数据(即最大化信息增益)的特定变量/值组合来拆分数据(该变量/值组合通常表示为节点的标签)。这个简单的启发式方法只是递归地执行,直到剩余的数据子集是纯的,或者进一步的拆分不会增加信息增益。
关于数据集中变量的“重要性”,这说明了什么?良好的重要性通过与根节点的接近程度来表示--即层次级别或等级。
一个建议:决策树处理分类数据和离散数据通常没有问题;然而,根据我的经验,如果响应变量(您试图使用所有其他变量预测的变量)是离散的/分类的而不是连续的,则决策树算法总是执行得更好。看起来你的分析可能是连续的,在这种情况下,会考虑将其离散化(除非这样做只会导致整个分析没有意义)。为此,只需使用对您的问题域有意义的参数(bin大小、bin数量和bin边缘)将响应变量值分类--例如,如果r/v由从1到100的“连续值”组成,您可能会明智地将它们分类为5个分类,0-20、21-40、41-60等等。
例如,在您的问题中,假设数据中的一个变量是X,它有5个值(10、20、25、50、100);还假设将此变量上的数据与第三个值(25)分开会产生两个几乎纯的子集--一个是低值,一个是高值。只要这种纯度高于通过对其他值进行拆分而获得的子集的纯度,数据就会在该变量/值对上进行拆分。
RapidMiner确实有一个决策树实现,而且网上似乎有相当多的教程(例如,来自YouTube,here和here)。(请注意,我没有使用过R/M中的决策树模块,也没有使用过RapidMiner。)
我会考虑的另一组技术通常被归类为rubric 降维。特征提取和特征选择可能是D/R之后最常见的两个术语。最广泛使用的是主成分分析( PCA ),它基于协方差矩阵(从导出到数据矩阵)的特征向量分解。
这种特征向量分解的一个直接结果是每个特征向量所占数据的可变性的分数。仅从这个结果,您就可以确定需要多少维度来解释数据中95%的可变性
如果RapidMiner具有主成分分析或其他类似功能的降维技术,那么在哪里可以找到它并不明显。我确实知道RapidMiner有一个R扩展,当然可以让你在RapidMiner.R中访问R。R有很多PCA库(包)。我在下面提到的所有包都可以在CRAN上找到,这意味着那里的任何PCA包都满足文档和小插图(代码示例)的最低包要求。我可以推荐pcaPP (基于投影寻踪的稳健主成分分析)。
此外,我可以推荐两个关于PCA的很好的分步教程。第一个来自NIST Engineering Statistics Handbook。第二个是独立分量分析的tutorial,而不是主成分分析,但我在这里提到了它,因为它是一个很好的教程,这两种技术用于类似的目的。
https://stackoverflow.com/questions/7545962
复制相似问题