library(vtreat)
#designTreatmentsC подходит только для классификации с двумя классами
treatmentsC <- designTreatmentsC(dframe = forexFeatures,
varlist=colnames(forexFeatures)[-ncol(forexFeatures)], #названия колонок с предикторами (тут - все кроме последней колонки)
outcomename = colnames(forexFeatures)[ncol(forexFeatures)], #названия колонок с таргетом (тут - последняя колонка)
outcometarget = "1") #текст или цифра одного из классов#обработка, сортировка результата
treatmensC_scores <- treatmentsC$scoreFrame[order(treatmentsC$scoreFrame$sig),]
treatmensC_scores <- treatmensC_scores[!duplicated(treatmensC_scores$origName),]
treatmensC_scores <- treatmensC_scores[,c("origName","sig")]
treatmensC_scores$is_good <- treatmensC_scores$sig <= 1/nrow(forexFeatures)
treatmensC_scores #вывод на экран таблички результатов. Лучшие предикторы вверху таблицы. Чем оценка sig меньше тем лучше. Желательно (колонка is_good==TRUE) чтоб sig была меньше чем 1/nrow(forexFeatures), всё что больше - плохо
与机器学习不同,GARCH被称为金融市场的主流(与协整和投资组合一样)。
这些模型考虑到了增量的一堆统计学上的细微差别,包括厚尾和长记忆,就像Hurst一样。
例如,有一份关于选择所有股票的GARCH模型参数的出版物,包括在S&P500指数中!这是对的。
有很多关于在外汇中应用的出版物。该工具包非常完善。例如,rugarch软件包。
这里是维基百科关于分形波动的文章,它不是rugarch,而是某种类似物。
对我来说,Garch是很难的,我喜欢它,当一切都算快的时候。关于预测波动的问题。比方说,预测波动率要比预测报价本身容易得多
甚至还有各种各样的模型,如https://en.wikipedia.org/wiki/Markov_switching_multifractal
它有什么作用,如何正确使用它,有人用它做过什么吗?
好吧,好吧,波动性已经被预测到了,什么原因?
我已经尝试了所有我检查过的外汇策略,并通过波动率来限制它们。阈值更高或更低,它没有给我任何东西。
我在低波动率时有许多好的交易,在高波动率时也有好的交易。我无法确定它们的波动性。
嗯,好吧,预测的波动性,这给了你什么?
我所测试的所有外汇策略,我都试图通过波动率来限制它们。阈值更高或更低,它没有给我任何东西。
我在低波动率时有许多好的交易,在高波动率时也有好的交易。我不能根据波动性将它们分开。
我试图追随科里帕伊的脚步)他们写道,人们必须预测波动性
我正在努力追随科里帕伊人的脚步))他们写道,应该预测波动性
你认为脚手架有用吗? 也许我将来会尝试研究它?
你认为脚手架在某种程度上是有用的,我可能会在未来尝试探索它?
等待关于脚手架的文章,它很快就会到来。
至于波动性,它可以用来切换TS的模式,这取决于牛。
而如果波动性也能被预测到,那么外汇就能更早地切换到另一种模式,而不会出现滞后。
我是这样理解的
这里也有一个用vtreat的例子。
一般来说,这是数据预处理,但可以作为每个预测器相对于目标的估计。我不喜欢这个软件包不考虑预测器的相互作用,只有在你只需要相对于目标一次估计预测器时才使用该代码。
用vtreat进行了实验。
下面是一个结果矩阵
[,1] [,2]
[1,] 5 8.12444537234629e-196
[2,] 1 1.98504271239423e-144
[3,] 7 2.36022454522949e-109
[4,] 11 5.68901830573741e-102
[5,] 4 6.60631002751930e-96
[6,] 10 2.95535252032342e-73
[7,] 3 2.43324301115409e-71
[8,] 9 4.51329770717951e-67
[9,] 6 3.11264518399281e-37
[10,] 2 5.77058632985908e-13
[11,] 12 3.76158923428915e-12
[12,] 8 8.18815163303239e-01
公式
不能很好地选择。例如,在对输入进行排序后,在1/nrow(df)=2e-4时,sig=5.77e-13,它漏掉了从底部开始的第三个。而且它很吵,把训练搞得一团糟。
也就是说,我们应该收紧几个数量级的选择。而且最好能自动做到这一点。
用vtreat进行了实验。
下面是结果矩阵
[,1] [,2]
[1,] 5 8。12444537234629e-196
[2,] 1 1.98504271239423e-144
[3,] 7 2.36022454522949e-109
[4,] 11 5.68901830573741e-102
[5,] 4 6.60631002751930e-96
[6,] 10 2.95535252032342e-73
[7,] 3 2.43324301115409e-71
[8,] 9 4.51329770717951e-67
[9,] 6 3.11264518399281e-37
[10,] 2 5.77058632985908e-13
[11,] 12 3.76158923428915e-12
[12, ] 8 8.18815163303239e-01
不能很好地摘除。例如,在1/nrow(df)=2e-4的情况下,对输入进行排序后,sig=5.77e-13,它错过了从底部开始的第3个。而且它很吵,把训练搞得一团糟。
也就是说,我们应该收紧几个数量级的选择。而且最好是自动进行。
一般来说,我使用这个特殊的包来选择预测因子。很明显,有一些缺点,特别是没有相对于目标预测因子的多个预测因子的互动。但总的来说,到目前为止,这对我的优化已经足够了......因此,如果有其他的数据预处理软件包,我很乐意考虑它们。
一般来说,我使用这个特殊的包来选择预测器。很明显,有一些缺点,特别是缺乏与目标有关的几个预测因素的互动。但总的来说,到目前为止,这对我的优化来说已经足够了...因此,如果有其他的数据预处理软件包,我将很高兴考虑它们。
好吧,迈克尔,你已经从你的疯狂中恢复过来了,很快你就会开始理智地、不狂热地评估你的TS吗?:)