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

 
mytarmailS:

这里甚至有这个不苟言笑的孩子在说话,从第10分钟开始看。

https://www.youtube.com/watch?v=KUdWTnyeBxo&list=PLDCR37g8W9nFO5bPnL91WF28V5L9F-lJL&index=3

在视频中,重点不是完全应用傅里叶级数,而是使用一些函数来处理数据,将其转移到另一个空间(内核变换)。建议将图片转换为HSL调色板,声音转换为频率直方图。所有这些都会改变数据,但如果需要,可以很容易地通过反函数恢复。这种转换必须在某种程度上具有逻辑意义,使转换后的类在多维空间中更容易相互归类,以简化分类。如果经过任何改造后,班级在空间上将比以前更加分散--这种行动没有任何好处,只会更糟。

没有必要完全使用傅里叶,因为不建议这样做。例如,Alexey建议在条形图之间采取deltas,而不是原始值。Yury在libVMR中使用了不同的数学变换,这也很有趣,看看他在java上的源代码。你可以用主成分法对数据进行分解,并将其输入神经元成分,关于这一点,SanSanych和我已经分享了一些文章和例子。你想做的事有数百种解决方案,傅立叶只是其中之一。

或者你可以直接使用有几十层的神经元学,它将在原始数据上自行解决,不需要任何内核转换。但在监管、交叉验证等方面会有很多问题。

另外,这些方法都无法摆脱输入垃圾的问题。输入垃圾-->转换后的垃圾-->输出垃圾-->前沿测试的梅花。

 
mytarmailS:

有一个问题:是否可以通过振幅、相位和频率来衡量函数之间的相似性?

就是这样!!!。我对其他事情不感兴趣...

其他所有关于傅立叶的内容都是CC答案的结果,与我的问题无关。

如果函数是周期性的,你可以。如果是非周期性的,在比较两个函数的边缘(在开始时--参数的0值,和在周期结束时--参数的2*PI值)时会有错误。
 
Dr.Trader:

在视频中,重点不是完全应用傅里叶级数,而是用某种函数处理数据,将其转移到另一个空间(核变换)。

或者你可以直接使用有几十层的神经元学,它将在原始数据上自行解决,而不需要任何内核转换。

该视频中的内核变换是通过可视化预测器对手动选择的。也就是说,你需要一个人类专家,用视觉找到合适的配对,并为它们选择适当的内核转换。

Dr.Trader:


或者我们可以直接使用有几十层的神经元,它将在原始数据上自行解决,不需要任何内核转换。

视频中说,不仅不会成功,而且会变得更加混乱。此外,反向误差传播的方法实际上并没有调整离输出层较远的层的权重--信号并没有到达那里,即使到达那里,也太弱了。


Dr.Trader:


Yuri在libVMR中使用了不同的数学变换,这也很有趣,看看他的java源代码吧


不是各种,而是通过A.G. Ivakhnenko的参数组因式分解法(GMDH)进行算法编译。如果你采取随机的,即没有任何结构,你会得到废话。


 
尤里-雷舍托夫
如果函数是周期性的,你可以。如果是非周期性的,在比较两个函数的边缘(在开始时--参数的0值,在周期结束时--参数的2*PI值)时会有错误。

我明白了,两端还是会有变形,而且越靠近边缘越强,对不起,不适合....。

交易员博士。

你的神经网络是如何训练的?

 

我在一个网站上找到了这个,但不知道为什么,它已经失效了

也许有人会感兴趣。

"....按照你的建议,我建立了几个机器人模型,机器人正在学习,并通过新的数据识别一些东西,但结果,唉,还是与我的预期相去甚远。

.... 首先,我将多项式-谐波近似法应用于低通滤波器,得到第一组次要特征,一个滤波器用于短期趋势,第二个用于长期趋势。把频率、cos和sin振幅以及P系数作为次要特征。......该网络学习了,但没有概括性。

...下一步是一个新的模型:我们对收盘价 应用一个低通滤波器(我用的是二阶巴特沃斯滤波器),应用多项式谐波逼近,将A*cos(wx)+B*sin(wx)转换为M*sin(wx+f)的形式,并将M和f作为二级属性。

....有了这个模型,我成功地建立了一个具有非常好的泛化特性的网络:它几乎能正确识别所有的新数据。

多项式-谐波近似法很耗时,所以我决定做另一个模型:一组频率分布相等的带通滤波器,将其应用于收盘价的LF滤波器,然后对其应用希尔伯特变换。我还成功地为人工市场模型制作了一个网络,成功识别了新数据。

之后,我将这个模型应用于真实的报价。

- 我们用一个自适应的LF滤波器来过滤收盘价。

- 构建一套带通滤波器来检测市场波。

- 应用希尔伯特变换。

- 第一组次要属性:带通滤波器值、瞬时振幅和相位值。

- 我们从接近的价格建立一个低通滤波器。

- 第二套次要属性--最后一根蜡烛的收盘价和最低价的相对偏差,支持和阻力水平与LF过滤器的值的相对偏差,酒吧的相对音量(相对于平均值)。

- 创建一个训练样本。

结果如下:网络被训练好了,但在新数据上工作得很差。在某处,它准确地预测了最小值,而在某处,它忘记了该做什么。与我之前所做的相比,结果似乎有了质的不同。是的,还有一件事要澄清,我遵循了经验法则:输入网络特征(本例中为二级特征)的数量<训练样本大小/10,隐藏层的神经元数量不超过网络输入的数量......"。我希望这些信中的摘录能让你对特征检索的可能方法有所了解。

 
mytarmailS:

我明白了,两端还是会有变形,越靠近边缘的地方越强,太糟糕了,它不适合....。

是否适合的问题是非常微不足道的。首先,将函数分解成傅里叶级数,然后通过反变换从级数中还原。并比较分解前的初始函数和恢复后的函数。如果重建的函数与原始函数有根本性的不同,那么这种方法显然是行不通的。

对于非周期性的函数,建议使用小波变换。我自己没有试过。但从图像首先被小波压缩,然后带着一些失真恢复的方式来看,但与傅里叶变换的失真相比,视觉上并不明显,很明显,与傅里叶变换相比,小波更适合于非周期性序列。由于我没有将小波应用于所引用的BP的实际经验,我不能在此分享关于哪种小波最合适的有用信息。而且有一马车和一小车的人。

mytarmailS:

你的神经网络做得怎么样了?

要看是什么样的任务和数据?如果你塞给它一个随机数字的样本,它就会咕哝。"垃圾进,垃圾出"。而如果你给它一个重要的预测因素的样本,它将产生可推广的价值。训练时间并不长,至少对于十几个预测器和几千个例子的样本来说是这样。
 
尤里-雷舍托夫

至于是否会成功的问题是很微不足道的。首先,将函数分解成一个傅里叶数列,然后通过反变换从所得到的数列中重建它。并比较分解前的原始函数和重构后的函数。如果重构的函数与原始函数有根本的不同,显然这种方法是行不通的。

我可能会这样做....首先我会告诉你我在做什么,我需要解决什么问题,然后你再告诉我你对它的建议,因为我觉得我把你们都搞糊涂了......
 

前史的一点....

我首先利用以下原则在历史中寻找模式。

1)我们有当前的价格- 让它成为最后的20根蜡烛

2)我们去看历史,寻找过去的类似情况(接近程度由皮尔逊相关和欧几里德衡量)。

3)当我们发现这种情况时,我们要看它是如何结束的--是增长还是衰退

4)当我们发现了很多这样的类似物时,有可能收集一些普遍性的统计数据,例如我们发现了10个类似物

其中8个以增长结束,2个--以下降结束,这里预测一下价格会发生什么变化 :)

也就是说,我已经做了一些类似于Ivakhnenok的 "复合类比方法--无模型预测 "的工作,但我的方法要原始得多

那么,由于一些原因,这种方法被证明是不可行的

1)所需矢量中的蜡烛图越多,在历史上可以找到的类似物就越少,在实践中,如果你把所有的OHLC价格和皮尔逊相关的准确性>0.93,3个蜡烛图的矢量将是极限,而一个正常的预测需要一个更大的矢量。

2) 在实践中,市场上几乎不存在相同的价格情况....。

3)事实证明,我们不能增加矢量,因为我们会失去很多准确性。 但即使我们可以,我们也无法在更大的矢量中找到类似的情况,因为不存在相同的情况

已找到解决方案.....

 
尤里-雷舍托夫

取决于什么任务和数据?如果你塞给它一个随机数字的样本,它就会喃喃自语。"垃圾进,垃圾出"。而如果你给它一个重要预测因素的样本,它就会产生普适性的数值。训练时间并不长,至少对于十几个预测器和几千个例子的样本来说是这样。

问候!!!!我使用LibVMR,但它似乎是一个旧版本,因为它一直出现 "坏数据 "错误。我知道有一个新的版本。我在哪里可以下载它?如果有可能的话?
 
mytarmailS:

前史的一点....

我首先利用以下原则在历史中寻找模式。

1)我们有当前的价格- 让它成为最后的20根蜡烛

2)我们把历史作为一个循环,寻找过去的类似情况(接近程度由皮尔逊相关和欧几里得衡量)。

不太清楚?你是把价格作为模式的OHLC还是对它们的某种转化?

重点是,如果你把OHLC当作是,一个类似的模式,但比被比较的模式高或低1000点,在欧氏距离上的差异将大于一个完全不类似的模式,但比被比较的模式高或低10点。而这个差异将是两个数量级,所以比较误差也将是两个数量级。