文章 "MQL5中的自优化智能交易系统(第十部分):矩阵分解"

 

新文章 MQL5中的自优化智能交易系统(第十部分):矩阵分解已发布:

分解是一种用于挖掘数据属性规律的数学方法。当我们将分解应用于以行列形式组织的海量市场数据时,能够从中挖掘市场的模式与特征。分解是一种强大的工具,本文将展示如何在MetaTrader 5终端中通过MQL5 API使用该方法,从而更深入地洞察市场数据。

矩阵分解是一种将大矩阵拆解为若干更小、更简单矩阵乘积的数学技术。这类方法具备诸多优势。然而,在介绍这些优势之前,我们先来理解为什么需要这些方法。

在日常生活中,有些体验是跨文化共通的。例如,我相信大多数读者都明白这样一个道理:通过和孩子交谈,倾听孩子对父母的描述,我们就能大致想象出父母是什么样的人。这些特征描述甚至能帮我们推断出,在子矩阵未能直接体现的场景中,原始矩阵会呈现怎样的特性。同样地,矩阵分解会把一个大矩阵拆解为若干更小的矩阵 —— 也就是它的“子矩阵”。每个子矩阵都会描述原始矩阵的不同侧面,帮助我们理解其内在结构。正如孩子的视角有时能帮助我们把握父母的特征一样,这些更小的矩阵也能揭示出我们分析的市场深层的规律。

矩阵分解的结果,通常能为我们前文介绍的线性模型提供数值上更稳定的解。本文还将介绍一个数值计算库:OpenBLAS(全称基础线性代数子程序)。OpenBLAS是BLAS库的开源分支,经过重新设计,可在现代计算平台上高效运行。BLAS最初是用Fortran语言和手写汇编编写的。 


作者:Gamuchirai Zororo Ndawana