量化交易软件:使用贝叶斯分类和基于奇异频谱分析的指标预测市场走势

概述

如今, 算法交易约占证券交易所交易的 60-70%, 在 FORTS 和市场约占 90%。有鉴于此, 机器人在实际交易量中的份额增加。这是由于现代市场上短线波动极其活跃, "买入并持有" 的策略事实上不再适合。高效交易需要从被动投资转向主动交易。现代市场中成功基于使用有效的算法和一系列系统规则, 以便增加成功交易的数量, 并减少失败的数量, 最大限度地减少亏损。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

达成此目标的一种有前途的方法是建立高效交易的推荐制系统, 将奇异频谱分析 (SSA) 的预测能力和贝叶斯原理基础之上的重要机器学习方法结合在一起。所选方法的价值在于, 数据的处理单纯地基于统计分析方法, 而非毫无根据的假设。这可清晰认识此方法的能力和局限性, 及创建自动交易系统的前景。

在开发此系统的过程中, 焦点是时间帧单位的尺度, 在 5 分钟到 1 小时的范围之间。在大部分成功率统计方法的理论描述当中, 基础尺度越大越受欢迎, 比如小时和日线 (由于混沌成份的影响减少)。然而, 这种方法在个人投机交易的实际操作中几乎从无应用。

应用 SSA 并预测价格系列的特点

SSA 方法可以解决这类问题:

  • 时间序列主要成份的分离 (趋势, 周期变化, 振荡) 和噪音过滤;

  • 搜索周期性;

  • 通过限定成份集合来平滑源数据;

  • 预测所观察依赖的进一步行为。

当处理非平稳序列时, SSA 是少数可用的统计方法之一。这种系列的完美实例就是包括趋势, 爆发, 脉冲排布的市场价格序列。与此同时, 价格在独立的非随机因素影响下形成, 当然影响和持续时间略有不同。假设市场大部分时间依赖于这种力量, 这就有可能使用与 SSA 方法相对应的基于不同尺度分量总和的模型。

有关 SSA 及其 "卡特彼勒" 版本的数学基础的信息, 可在 (参见文章附件中的参考清单) 里找到 [1]。从实际的角度来看, 关键是应注意到, 直到最近, 影响 SSA 在数据处理中流行的主要原因之一是缺乏与 FFT 类似的快速算法。这一难题已不复存在 — 这类算法已经开发出来, 且它们的有效性已得到证明 [2] (参见文章附件中的参考清单)。

使用 SSA进行预测使用隐藏的周期性模型: 将数据序列分离出分量, 在分析期间已确定其行为, 可根据行为参数扩展这些分量并汇总结果。产物是预测结果, 其品质取决于初始分量集合所定义的原始数据的好坏。自然地, 这种预测对于一个波动混乱的序列来说是不可靠的, 但对于在稳定因素影响下且噪音相对较小时形成的价格是合理的。此外, 在处理交易不活跃的金融工具时, 不宜依靠统计分析。在此情况下. 偶然因素和 "主力" 参与者的影响是不可预知且危险的。

结合指标来提高预测的可靠性

根据研究思路, 开发了三款预测指标。趋势识别及其预测 - 基于快速变换的 SSA 趋势预测和快速预测, SSACD (MACD 的改编) 和 SSA 随机振荡。每款指标都有两种变体: 简化和扩展。

由于所有指标使用相同的数据, 但针对不同的处理特点, 每款指标都有其优点和缺点。结合所有指标, 实现协同效应, 增加总体情势评估的效率, 健壮性和准确性, 是一种很自然的愿望。

从投机策略的视角来看, 显然且必要的信息在于回答问题: "价格在不久的未来将会何去何从?"。有三种选择: 价格会上涨, 波动或下跌。

对于依据趋势识别预测价格的指标, 显然, 当价格上涨或下跌时, 导数的相似值必须或正或负。通过设置 EPS 的误差等级, 可以定义一个条件: 如果 "导数" 邻近零点, 半径为 epsilon (EPS), 那么价格变化可以忽略不计。

SSACD 指标是 MACD 的改编版, 为避免信息延迟经过调整, 这在移动平均线中很常见。为了防止使用太多的术语, 下文将其称为 MACD。MACD 在图表上显示为直方图和其平滑指数移动均线, 称为信号线。相应地, 平滑线的变化相对于 MACD 稍有延迟。因此, 如果价格上涨, 则 (MACD-Signal)>0, 如果下跌, 则 (MACD-Signal)<0。为 EPS 设置邻近零点的确定范围, 定义不稳定价格行为的过渡区域。

SSA 随机振荡指标是经过改编的快速随机振荡器, 与之前的情况类似。随机振荡器的曲线通常与其局部趋势相同。即为, 形成价格上涨, 下跌和不稳定行为的条件可以通过随机指标的 "导数": 在 epsilon 邻近范围之内大于或小于零。

由于指标提供了局部预测, 所以上述测量值的评估可给出价格行为在不远未来的信息。匹配的指标值能够增加预测可靠性, 并降低误差概率。 为了验证所选方法的正确性, 有必要评估如何组合指标来减少历史数据上的严重预测误差数量。误差是指短期预测指示一个方向, 而价格变化却反方向发展的情形。

使用上述指标的用户可能会对选择的控制参数值感兴趣, 以及为什么。但既然最感兴趣的是最近预测点, 所以无需为这些参数指定长期选择。指标的适当参数, 其行为应与该序列的主要 (非预测) 部分相一致, 结合价格行为的平滑度和精细度, 并适用于广泛的金融工具类别。以下应予以选择:

  1. 基于趋势预测价格 (SSA 快速趋势预测, 版本 2.5): 算法: 复发性预测, N: 数据片段 = 256, 时间依赖性滞后 = N/3, 趋势 高频限制= 0.25, 预测 高频限制= 0.25, 预测变换 = S[i]/Max(:), 预测平滑 = 平滑 MA(3)。

  2. 对于 SSACD 预测 (受限) 版本 2.5: 算法: 复发性预测, N: 数据片段 = 512, 时间依赖性滞后 = N/4, 快速趋势 高频限制 = 0.4 慢速趋势 高频限制= 0.6 信号 SMA 周期 = 4 数据准备 = {ln(S[i]-Smin+1)}/Max(:) 预测准备 = S[i] /Max(:) 预测平滑 = 平滑 MA(3)。

  3. 对于 SSA 随机振荡 (受限) 版本 2.0: 算法: 复发性预测, N: 数据片段 = 256, 时间依赖性滞后 = N/4, %K 高频限制 = 0.3, %D 高频限制 = 0.6, 数据准备 = S[i] /Max(:), 预测平滑 = 平滑 MA(3)。

用于分析的历史数据片段已经在不同的时间间隔当中进行: 对于周期为 M5, M15, H1 的 GOLD 期货; BRENT — M5, M15; Si-USD/RUB — M15, 对于 EUR/USD 报价 — M15。 不改变指标参数, 对不同周期、不同金融工具的交易进行处理, 可以研究预测值的稳定性和品质。在长度约为 1000 点的数据序列上迭代, 并在每个历史点上进行预测计算, 这提供了预测与真实进行比较的机会。 赫兹量化用图表上的收盘价数据来描绘指标预测的结果。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

图例 1. 实际收盘价与其预测值, 和经过三点平滑的预测值的比较片段 图例. 1 显示 "按趋势" 预测的大部分时间略有延迟。这并不奇怪, 因为趋势为基础的价格预测是针对不同金融工具的应用多功能性设置的, 因为高频振荡的绝大部分被滤除, 因此它是平滑的。对于其它金融工具 (BRENT, GOLD), 在不同的时间帧 (5 分钟和 1 小时) 上的预测行为也类似。 赫兹量化拿另一款指标 (MACD-信号) 的预测评估与其实际值进行比较。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

图例 2. 根据 MACD 指标, 价格演变方向的实际值和预测值的片段

编辑切换为居中

添加图片注释,不超过 140 字(可选)

图例 3. 价格变化形成的趋势与根据 MACD 预测的价格变化保持一致 方向不确定度 (EPS) 设为 0.25, 此值来自序列值 (MACD-信号) 经归一化后 (按照最大振幅) 的标准。 在 "SSA 随机" 指标的帮助下, 在每个点上形成的随机值与初步预测值的比较片段如下图所示。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

图例 4. 随机指标的实际值和预测值 图例 2 和 4 说明根据 SSACD 和 SSA 随机指标数据产生的实际结果与预测值几乎完全相同。当针对许多振荡器应用 SSA 进行预测时, 这是可以预期的。 由于图例 1 呈现的价格预测包含一组方向上的错误, 从中我们可以看出, 指标组合是如何减少这种错误数量的。图例 1 中实际价格和预期价格的差值是无关紧要的, 因为当立场一致时它不会造成损失。 这些数值: (MACD-信号), 真实和预测价格序列的差分导数, 以及随机值, 三点平滑。早前已定义条件的一致性, 表明价格变化的方向, 进一步用于分析其组合的效率。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

图例 5. 使用这三款指标时, 价格变化的实际和预测方向并行

编辑切换为居中

添加图片注释,不超过 140 字(可选)

图例 6. 如果仅使用基于趋势的预测, 价格变动方向的预测会出现相当大的误差

编辑切换为居中

添加图片注释,不超过 140 字(可选)

图例 7. 基于趋势和 (MACD-信号) 的价格预测组合中的预测误差

编辑切换为居中

添加图片注释,不超过 140 字(可选)

图例 8. 基于趋势、MACD 和随机指标的价格预测组合中的预测误差 图例 6 — 8 展示使用三款指标的协同效应 — 在预测进一步的价格变动方向时的粗略错误数量不坏于指标函数商定值的 5 至 7 倍。 基于指标预测值的可能价格走势的贝叶斯分类器

贝叶斯定理是在概率论的基础课程里中提出的, 关联条件

添加图片注释,不超过 140 字(可选)

事件 x 的发生概率必须是事件 y 已经发生。

根据定义:

添加图片注释,不超过 140 字(可选)

, 此处

添加图片注释,不超过 140 字(可选)

是 x 和 y 的联合概率, 而 p(x) 和 p(y) 是每个事件的单独概率。相应地, 联合概率可以用两种方式表示:

编辑

添加图片注释,不超过 140 字(可选)

贝叶斯定理:

添加图片注释,不超过 140 字(可选)

对于基于指标预测价格走势方向的研究情形, 定理可以用以下形式进行重写:

编辑

添加图片注释,不超过 140 字(可选)

此处: V — 对应于给定方向上的实际价格变动 (其变化的迹象) 的事件。三个可能的选项: V1= -1 "向下", V2 = 0 "不确定", V3 = +1 "向上"。 F — 对应于价格方向预测, 或已预测导数符号的事件 (三个可能的选项: F1 = -1 "向下", F2 = 0 "不确定", F3 = +1 "向上")。 M — 对应于 (MACD-信号) 符号预测的事件, 与价格行为一致 (三个可能选项: M1 = -1 "向下", M2 = 0 "不确定", M3 = +1 "向上"), S — 对应于已预测随机导数符号的事件 (三个可能选项: S1 = -1 "向下", S2 = 0 "不确定", S3 = +1 "向上")。 公式的左边部分可以转换为人类可读的形式, 如下所示: "如果预测指标给出 F, M, S 的具体值, 那么价格向 Vk={-1,0,1} 方向移动的概率是多少?"。 接着, 为了简化表述, 赫兹量化令指标取值为 -1, 0, +1, 这意味着导数的符号或 (MACD-信号) 的符号。 为了评估并比较价格是否下跌、上涨或仍然微弱波动的概率, 有必要了解公式右侧的含义。若做到这一点, 需要解决两个任务:

  1. 针对历史数据进行 "学习",

  2. 研究学习结果在训练间隔之外数据上的 "稳定性"。

在不同的数据片段、不同的时间帧和金融工具上进行多种训练。训练样本的长度为数百根柱线。结果证明是类似的, 正如所预期的那样, 这是由于本文第三部分研究的指标所选参数的普遍性。 赫兹量化来描述期货 USD/RUB 15分钟 "收盘" 价格数据的分析结果。 赫兹量化限定自己只研究价格 "上行" 和 "下行" 的可能性, 因为这两个值被用于开仓或平仓交易的决策基础。 在价格实际下跌的情况下, 指标信号也必须为负 ("向下") 或接近零 ("中性"), 这是可以理解的。当价格下跌时, 将由联合预测概率的首次条件评估事件进行确认。不过, 从 USD/ RUB-15M 期货数据的培训结果中获得的其它概率指示出偏离预期值的可能性, 如表 1, 2 所示。

编辑

添加图片注释,不超过 140 字(可选)

基于贝叶斯公式的计算结果得出一份根据指标值的实际走势概率分布的有趣信息。表 3 和 表 4 示意根据预测值价格下行 (事件 V1 = -1) 和上行 (事件 V3 = +1) 的最大条件概率。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值