MQL5 中的范畴论 (第 14 部分):线性序函子
本文是更广泛关于以 MQL5 实现范畴论系列的一部分,深入探讨了函子(Functors)。我们实验了如何将线性序映射到集合,这要归功于函子;通过研究两组数据,典型情况下会忽略其间的任何联系。
MQL5交易工具(第一部分):构建交互式可视化挂单交易助手工具
本文将介绍如何使用MQL5开发一款交互式交易助手工具,旨在简化外汇交易中的挂单操作流程。我们首先阐述其核心设计理念:通过用户友好的图形界面(GUI),实现图表上直观设置入场点、止损位和止盈位的功能。此外,本文将详细说明MQL5代码实现过程及回测验证方法,确保工具的可靠性,并为后续高级功能开发奠定基础。
从基础到中级:Include 指令
在今天的文章中,我们将讨论一个在 MQL5 中可以找到的各种代码中广泛使用的编译指令。虽然这里对这个指令的解释相当肤浅,但重要的是你要开始了解如何使用它,因为随着你进入更高层次的编程,它很快就会变得不可或缺。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
在MQL5中构建带自定义画布图形的凯特纳通道(Keltner Channel)指标
本文将介绍如何在MQL5中构建一个带自定义画布图形的凯特纳通道(Keltner Channel)指标。我们将详细阐述移动平均线(MA)与平均真实波幅(ATR)计算的集成方法,以及如何增强型图表的可视化效果。此外,我们还将介绍如何通过回测评估该指标的实际交易表现,为实战交易提供有价值的参考依据。
在 MQL5 中创建交易管理员面板(第五部分):双因素认证(2FA)
今天,我们将讨论如何增强当前正在开发的交易管理员面板的安全性。我们将探讨如何在新的安全策略中实施 MQL5,并将 Telegram API 集成到双因素认证(2FA)中。本次讨论将提供有关 MQL5 在加强安全措施方面的应用的宝贵见解。此外,我们还将研究 MathRand 函数,重点关注其功能以及如何在我们构建的安全框架中有效利用它。继续阅读以了解更多信息!
开发回放系统(第 58 部分):重返服务工作
在回放/模拟器服务的开发和改进暂停之后,我们正在恢复该工作。现在我们已经放弃使用终端全局变量等资源,我们将不得不完全重组其中的一些部分。别担心,我们会详细解释这个过程,这样每个人都可以关注我们服务的发展。
用Python和MQL5进行投资组合优化
本文探讨了使用Python和MQL5结合MetaTrader 5进行高级投资组合优化的技术。文章展示了如何开发用于数据分析、资产配置和交易信号生成的算法,强调了在现代金融管理和风险缓解中数据驱动决策的重要性。
动物迁徙优化(AMO)算法
本文介绍了AMO算法,该算法通过模拟动物的季节性迁徙来寻找适合生存和繁殖的最优条件。AMO的主要特点包括使用拓扑邻域和概率更新机制,使得其易于实现,并且能够灵活应用于各种优化任务。
交易中的神经网络:节点-自适应图形表征(NAFS)
我们邀请您领略 NAFS(节点-自适应特征平滑)方法,这是一种创建节点表征的非参数方法,不需要参数训练。NAFS 提取每个给定节点的邻域特征,然后把这些特征自适应组合,从而形成最终表征。
人工藻类算法(Artificial Algae Algorithm,AAA)
文章探讨了基于藻类微生物特征的人工藻类算法(AAA)。该算法包括螺旋运动、进化过程和适应性,使其能够解决优化问题。本文深入分析了AAA的工作原理及其在数学建模中的潜力,强调了自然与算法解决方案之间的联系。
基于MQL5和Python的自优化EA(第五部分):深度马尔可夫模型
在本次讨论中,我们将把一个简单的马尔可夫链应用于相对强弱指标(RSI),以观察指标穿过关键水平后的价格行为。我们得出结论,当RSI处于11-20区间时,会产生最强的买入信号;而当RSI处于71-80区间时,会产生最强的卖出信号,这在新西兰元兑日元(NZDJPY)货币对上表现得尤为明显。我们将展示如何通过对数据的处理和分析,直接从您所拥有的数据中构建出最优的交易策略。此外,我们还将展示如何训练一个深度神经网络,使其能够最优地利用转移矩阵。
原子轨道搜索(AOS)算法
本文探讨了原子轨道搜索(Atomic Orbital Search,AOS)算法,该算法运用原子轨道模型的概念来模拟解的搜索过程。此算法基于概率分布以及原子内相互作用的动力学原理。本文详细阐述了关于AOS算法的数学层面,包括候选解位置的更新方式,以及能量吸收与释放的机制。AOS算法通过为计算问题提供一种创新的优化方法,为将量子原理应用于计算问题开辟了新思路。
神经网络变得简单(第 77 部分):交叉协方差变换器(XCiT)
在我们的模型中,我们经常使用各种关注度算法。而且,可能我们最常使用变换器。它们的主要缺点是资源需求。在本文中,我们将研究一种新算法,它可以帮助降低计算成本,而不会降低品质。
您应当知道的 MQL5 向导技术(第 25 部分):多时间帧测试和交易
默认情况下,由于组装类中使用了 MQL5 代码架构,故基于多时间帧策略,且由向导组装的智能系统无法进行测试。我们探索一种绕过该限制的方式,看看搭配二次移动平均线的情况下,研究运用多时间帧策略的可能性。
开发回放系统(第 46 部分):Chart Trade 项目(五)
厌倦了浪费时间搜索应用程序工作所需的文件吗?在可执行文件中包含所有内容如何?这样,你就不用再去找东西了。我知道很多人都使用这种分发和存储形式,但还有一种更合适的方式。至少在可执行文件的分发和存储方面是这样。这里将介绍的方法非常有用,因为您可以将 MetaTrader 5 本身用作优秀的助手,也可以使用 MQL5。此外,它并不难理解。
开发多币种 EA 交易 (第 13 部分):自动化第二阶段 — 分组选择
我们已经实现了自动化优化的第一阶段。我们根据若干标准对不同的交易品种和时间框架进行优化,并将每次通过的结果信息存储在数据库中。现在我们将从第一阶段找到的参数集中选择最佳组。
开发多币种 EA 交易(第 21 部分):准备重要实验并优化代码
为了取得进一步的进展,最好看看我们是否可以通过定期重新运行自动优化并生成新的 EA 来改进结果。关于使用参数优化的许多争论中的绊脚石是,在将盈利能力和回撤保持在指定水平的同时,所获得的参数在未来一段时间内可用于交易的时间有多长。有可能做到这一点吗?
神经网络变得简单(第 63 部分):决策转换器无监督预训练(PDT)
我们将继续讨论决策转换器方法系列。从上一篇文章中,我们已经注意到,训练这些方法架构下的转换器是一项相当复杂的任务,需要一个大型标记数据集进行训练。在本文中,我们将观看到一种使用未标记轨迹进行初步模型训练的算法。
随机数生成器质量对优化算法效率的影响
在这篇文章中,我们将探讨梅森旋转算法(Mersenne Twister)随机数生成器,并将其与MQL5中的标准随机数生成器进行比较。此外,我们还将研究随机数生成器的质量对优化算法结果的影响。
从基础到中级:定义(二)
在本文中,我们将继续了解 #define 指令,但这次我们将重点关注它的第二种使用形式,即创建宏。由于这个主题可能有点复杂,我们决定使用我们已经研究了一段时间的应用程序。希望您喜欢今天的文章。
从基础到中级:操作符
在本文中,我们将介绍主要的操作符。虽然这个主题很容易理解,但在代码格式中包含数学表达式时,有一些要点非常重要。如果不充分了解这些细节,经验很少或没有经验的程序员最终会放弃尝试创建自己的解决方案。
您应当知道的 MQL5 向导技术(第 32 部分):正则化
正则化是一种在贯穿神经网络各层应用离散权重,按比例惩罚损失函数的形式。我们来考察其重要性,对于一些不同的正则化形式,能够在配合向导组装的智能系统运行测试。
开发回放系统(第 35 部分):进行调整 (一)
在向前迈进之前,我们需要解决几个问题。这些实际上并不是必需的修正,而是对类的管理和使用方式的改进。原因是系统内的某些相互作用导致了故障的发生。尽管我们试图找出这些故障的原因以消除它们,但所有这些尝试都没有成功。其中有些情况完全不合理,例如,当我们在 C/C++ 中使用指针或递归时,程序就会崩溃。
神经网络实践:伪逆 (二)
由于这些文章本质上是教育性的,并不打算展示特定功能的实现,因此我们在本文中将做一些不同的事情。我们将重点介绍伪逆的因式分解,而不是展示如何应用因式分解来获得矩阵的逆。原因是,如果我们能以一种特殊的方式来获得一般系数,那么展示如何获得一般系数就没有意义了。更好的是,读者可以更深入地理解为什么事情会以这种方式发生。那么,现在让我们来弄清楚为什么随着时间的推移,硬件正在取代软件。
从基础到中级:数组(三)
在本文中,我们将介绍如何在 MQL5 中使用数组,包括如何使用数组在函数和过程之间传递信息。目的是为您准备在本系列后续材料中演示和解释的内容。因此,我强烈建议您仔细研究本文将展示的内容。
开发回放系统(第 49 部分):事情变得复杂 (一)
在本文中,我们将把问题复杂化。通过前面文章中展示的内容,我们将开始打开模板文件,以便用户可以使用自己的模板。不过,我将逐步进行修改,因为我还将改进指标,以减少 MetaTrader 5 的负载。
神经网络实践:割线
正如理论部分已经解释的那样,在使用神经网络时,我们需要使用线性回归和导数。为什么呢?原因是线性回归是现存最简单的公式之一。从本质上讲,线性回归只是一种仿射函数。然而,当我们谈论神经网络时,我们对直接线性回归的影响并不感兴趣。我们感兴趣的是生成这条直线的方程。我们对创建出的线并不感兴趣。你知道我们需要理解的主要方程吗?如果没有,我建议您阅读这篇文章来了解它。
精通模型解释:从您的机器学习模型中获取深入见解
机器学习对于任何经验的人来说都是一个复杂而回报的领域。在本文中,我们将深入探讨为您所构建模型提供动力的内在机制,我们探索的错综复杂的世界,涵盖特征、预测和化解复杂性的有力决策,并牢牢把握模型解释。学习驾驭权衡、强化预测、特征重要性排位的艺术,同时确保做出稳健的决策。这篇基本读物可帮助您从机器学习模型中获得更高的性能,并为运用机器学习方法提取更多价值。
重构经典策略(第五部分):基于USDZAR的多品种分析
在本系列文章中,我们重新审视经典策略,看看是否可以使用人工智能来改进这些策略。在今天的文章中,我们将研究一种使用一篮子具有相关性的金融产品来进行多品种分析的流行策略,我们将重点关注货币对 USDZAR。
为 Metatrader 5 开发MQTT客户端:TDD方法——第4部分
本文是一系列文章的第四部分,介绍了我们为 MQTT 协议开发本机 MQL5 客户端的步骤。在这一部分中,我们将描述什么是 MQTT v5.0 属性,它们的语义,以及我们如何阅读其中的一些属性,并提供一个如何使用属性来扩展协议的简短示例。
使用MQL5经济日历进行交易(第五部分):添加响应式控件和过滤按钮的增强型仪表盘
在本文中,我们创建了用于货币对过滤、重要性级别过滤、时间过滤以及取消选项的按钮,以改进仪表盘的控制功能。通过编程让这些按钮能够动态响应用户操作,实现无缝交互。我们还对其行为进行了自动化处理,以便在仪表盘上实时反映变化。这样就提升了面板的整体功能性、灵活性和响应速度。
开发具有 RestAPI 集成的 MQL5 强化学习代理(第 2 部分):用于与井字游戏 RestAPI 进行 HTTP 交互的 MQL5 函数
在本文中,我们将讨论 MQL5 如何与 Python 和 FastAPI 交互,使用 MQL5 中的 HTTP 调用与 Python 开发的井字游戏交互。这篇文章讨论了使用 FastAPI 为这种集成创建一个 API,并提供了一个 MQL5 测试脚本,突出了 MQL5 的多功能性、Python 的简易性以及 FastAPI 在连接不同技术以创建创新解决方案方面的效果。
接受者操作特征(ROC)曲线入门
ROC 曲线是用于评估分类器性能的图形工具。尽管 ROC 图形相对简单,但在实践中使用它们时,仍存在一些常见的误解和误区。本文旨在为那些希望理解分类器性能评估的交易者提供一份关于 ROC 图形的入门介绍。
使用MQL5中的动态时间规整进行模式识别
在本文中,我们探讨了动态时间规整(Dynamic Time Warping,DTW)作为识别金融时间序列中预测模式的一种方法。我们将深入了解其工作原理,并在纯MQL5语言中展示其实现方法。
在 MQL5 中重新构想经典策略(第二部分):富时 100 指数(FTSE100)与英国国债(UK Gilts)
在本系列文章中,我们探索了流行的交易策略,并尝试使用人工智能(AI)对其进行改进。在今天的文章中,我们将重新审视基于股市与债市之间关系的经典交易策略。