智能系统健壮性测试
在策略开发中,有许多错综复杂的细节需要考虑,对于初学交易者其中许多都未予重视。如是结果,众多交易者,包括我自己,都不得不历经苦难来学习这些教训。本文基于我观察到的大多数初学交易者在 MQL5 上开发策略时常见的陷阱。它将提供一系列提示、技巧、和示例,帮助辨别不合格的 EA,并以一种易于实现的方式来测试我们自己 EA 的稳健性。目标是教导读者,帮助他们未来购买 EA 时避免遭遇骗局,以及预防他们自己开发策略时的错误。
开发回放系统(第 53 部分):事情变得复杂(五)
在本文中,我们将介绍一个很少有人了解的重要话题:定制事件。危险。这些要素的优缺点。对于希望成为 MQL5 或其他语言专业程序员的人来说,本主题至关重要。在此,我们将重点介绍 MQL5 和 MetaTrader 5。
开发回放系统(第 59 部分):新的未来
正确理解不同的想法可以让我们事半功倍。在本文中,我们将探讨为什么在服务与图表交互之前需要配置模板。此外,如果我们改进鼠标指标,这样我们就可以用它做更多的事情呢?
价格行为分析工具包开发(第十八部分):四分位理论(3)——四分位看板
本文中,我们在原有四分位脚本的基础上新增 "四分位看板"(Quarters Board) 工具,该工具让您无需返回代码即可直接在图表上切换四分位水平。您可以轻松启用或禁用特定水平,EA还会提供趋势方向注释,帮助您更好地理解市场走势。
在 MQL5 中构建自优化EA(第六部分):自适应交易规则(二)
本文探讨了如何优化 RSI 的水平和周期,以获得更好的交易信号。我们介绍了估算最优 RSI 值的方法,并使用网格搜索和统计模型来自动选择周期。最后,我们在 MQL5 中实现了该解决方案,同时利用 Python 进行分析。我们的方法力求务实和直接,旨在以简单的方式帮助您解决潜在复杂的问题。
重塑经典策略(第六部分):多时间框架分析
在这一系列文章中,我们重新审视经典策略,看看是否可以利用人工智能(AI)对其进行改进。在本文中,我们将研究流行的多时间框架分析策略,以判断该策略是否可以通过人工智能得到增强。
构建动态多品种EA(第三部分):均值回归与动量策略
在本文中,我们将继续讲解构建动态多品种智能交易系统(EA)的第三部分内容,重点聚焦于均值回归策略与动量交易策略的融合。我们将详细拆解如何检测价格对均值的偏离(通过Z-分数)并据此执行交易,以及如何在多个外汇对上测算动量,以此确定交易方向。
开发回放系统(第 76 部分):新 Chart Trade(三)
在本文中,我们将看看上一篇文章中缺少的 DispatchMessage 代码是如何工作的。我们还会介绍下一篇文章的主题。因此,在继续下一个主题之前,了解这段代码的工作原理非常重要。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
DoEasy. 控件 (第 32 部分): 水平滚动条,鼠标轮滚动
在本文中,我们将完成水平滚动条对象功能的开发。我们还将令移动滚动条滑块和旋转鼠标滚轮来滚动容器的内容成为可能,以及考虑到 MQL5 中的新订单执行策略,和新的运行时错误代码,在函数库里相应添加。
种群优化算法:二进制遗传算法(BGA)。第 I 部分
在本文中,我们将探讨二进制遗传和其它种群算法中所用的各种方法。我们将见识到算法的主要组成部分,例如选择、交叠和突变,以及它们对优化的影响。此外,我们还将研究数据表示方法,及其对优化结果的影响。
黑洞算法(BHA)
黑洞算法(BHA)利用黑洞引力原理来优化解。在本文中,我们将考察 BHA 如何在避免局部极端情况的同时,吸引最佳解,以及为什么该算法已成为解决复杂问题的强大工具。学习简单的思路如何在优化世界带来令人印象深刻的结果。
价格行为分析工具包开发(第二十七部分):利用移动平均线进行流动性扫单
理解价格走势背后的微妙动态,能让您获得至关重要的优势。流动性扫单便是这样一种现象,大型交易者(尤其是机构)会刻意运用这一策略,推动价格突破关键支撑位或阻力位。这些价位往往集中了零售交易者的止损单,从而形成流动性池,大资金玩家可以借此机会买入或卖出大额头寸,且滑点极小。
无政府社会优化(ASO)算法
本文中,我们将了解无政府社会优化(Anarchic Society Optimization,ASO)算法,并探讨一个基于无政府社会(一个摆脱中央权力和各种等级制度的异常社会交互系统)中参与者非理性与冒险行为的算法是如何能够探索解空间并避免陷入局部最优陷阱的。本文提出了一种适用于连续问题和离散问题的统一ASO结构。
MQL5自优化智能交易系统(第八部分):多策略分析(2)
欢迎继续阅读本系列文章,我们将把前两个交易策略合并为一个集成交易策略。本文将展示多种合并多个策略的可行方案,并介绍如何控制参数空间,确保即使在参数数量增加的情况下,仍能进行有效的优化。
您应当知道的 MQL5 向导技术(第 18 部分):配合本征向量进行神经架构搜索
神经架构搜素,是一种判定理想神经网络设置的自动化方式,在面对许多选项和大型测试数据集时可能是一个加分项。我们试验了当本征向量搭配时,如何令这个过程更加高效。
从新手到专家:对K线进行编程
在本文中,我们将迈出 MQL5 编程的第一步,即使是完全零基础的初学者也能上手。我们将向您展示,如何将熟悉的 K线形态 转换为一个功能完备的自定义指标。K线形态之所以有价值,是因为它们反映了真实的价格行为,并预示着市场的转变。与其手动扫描图表——这种方法容易出错且效率低下——我们将讨论如何通过一个指标来自动化这个过程,该指标会自动识别并标记出这些形态。在此过程中,我们将探讨一些关键概念,例如索引、时间序列、平均真实波幅(用于在多变的市场波动性中提高准确性),以及如何开发一个可自定义、可复用的 K线形态库,以便在未来的项目中使用。
使用MQL5中的动态时间规整进行模式识别
在本文中,我们探讨了动态时间规整(Dynamic Time Warping,DTW)作为识别金融时间序列中预测模式的一种方法。我们将深入了解其工作原理,并在纯MQL5语言中展示其实现方法。
从基础到中级:BREAK 和 CONTINUE 语句
在本文中,我们将学习如何在循环中使用 RETURN、BREAK 和 CONTINUE 语句。了解每个语句在循环执行流程中的作用对于处理更复杂的应用程序非常重要。此处提供的内容仅用于教育目的。在任何情况下,除了学习和掌握所提出的概念外,都不应出于任何目的使用此应用程序。
在MQL5中实现基于经济日历新闻事件的突破型智能交易系统(EA)
重大经济数据发布前后市场波动率通常显著上升,为突破交易策略提供了理想的环境。在本文中,我们将阐述基于经济日历的突破策略的实现过程。我们将全面覆盖从创建用于解析和存储日历数据的类,到利用这些数据开发符合实际的回测系统,最终实现实盘交易执行代码的完整流程。
重构经典策略(第十四部分):高胜率交易形态
高胜率交易形态在交易圈内广为人知,但遗憾的是,其定义始终缺乏明确标准。本文将通过实证研究与算法建模,为高胜率形态构建量化定义框架,并探索其识别与运用方法。借助梯度提升树模型,我们演示如何系统性优化任意交易策略的性能,同时以更精准、可解释的方式向计算机传达交易指令的核心逻辑。
在 MQL5 中创建交易管理员面板(第五部分):双因素认证(2FA)
今天,我们将讨论如何增强当前正在开发的交易管理员面板的安全性。我们将探讨如何在新的安全策略中实施 MQL5,并将 Telegram API 集成到双因素认证(2FA)中。本次讨论将提供有关 MQL5 在加强安全措施方面的应用的宝贵见解。此外,我们还将研究 MathRand 函数,重点关注其功能以及如何在我们构建的安全框架中有效利用它。继续阅读以了解更多信息!
在 MQL5 中构建自优化智能交易系统(第八部分):多策略分析
如何才能最有效地整合多种策略,构建一个强大的策略组合?欢迎加入本次讨论,我们将探讨如何将三种不同的策略整合到我们的交易应用程序中。交易员通常会采用专门的策略来开仓和平仓。我们想探究的是,机器能否在这项任务上表现得比人类更出色。我们将首先从熟悉策略测试器的各项功能开始讨论,以及完成此任务所需的面向对象编程(OOP)原则。
接受者操作特征(ROC)曲线入门
ROC 曲线是用于评估分类器性能的图形工具。尽管 ROC 图形相对简单,但在实践中使用它们时,仍存在一些常见的误解和误区。本文旨在为那些希望理解分类器性能评估的交易者提供一份关于 ROC 图形的入门介绍。
DoEasy. 控件 (第 19 部分): 在 TabControl 中滚动选项卡、WinForms 对象事件
在本文中,我将创建的功能是利用滚动按钮在 TabControl 中滚动选项卡标题。 该功能旨在将选项卡标题从控件的任一侧拖放到单行之中。
基于MQL5和Python的自优化EA(第六部分):利用深度双重下降算法
传统的机器学习教导从业者要警惕不要使模型陷入过度拟合。然而,这种观念正受到哈佛大学研究人员最新发表的学术见解的挑战。他们发现,看似过拟合的情形在某些情况下可能是由于提前终止训练过程导致的。我们将展示如何利用研究论文中发表的观点,来改进我们使用人工智能预测市场行为的方式。
构建MQL5自优化智能交易系统(第二部分):美元兑日元(USDJPY)剥头皮策略
今天我们齐聚一堂,挑战为美元兑日元(USDJPY)货币对打造一套全新交易策略。我们将基于日线图上的K线形态开发交易策略,因为日线级别的信号通常蕴含更强的市场动能。初始策略已实现盈利,这激励我们进一步优化策略,并增加风险控制层以保护已获利资本。
开发回放系统(第 45 部分):Chart Trade 项目(四)
本文的主要目的是介绍和解释 C_ChartFloatingRAD 类。我们有一个 Chart Trade 指标,它的工作方式非常有趣。您可能已经注意到了,图表上的对象数量仍然很少,但我们却获得了预期的功能。指标中的数值是可以编辑的。问题是,这怎么可能呢?这篇文章将使答案变得更加清晰。
在MQL5中创建交易管理员面板(第八部分):分析面板
今天,我们将深入探讨如何在管理员面板EA的一个集成专用窗口中,加入有用的交易指标。本次讨论的重点是使用MQL5实现一个分析面板,并强调其所提供数据对交易管理员的价值。其影响主要体现在教学意义上,因为整个开发过程能提炼出宝贵的经验教训,使新手和经验丰富的开发者都能从中受益。此功能展示了我们开发的系列工具在为交易经理配备先进软件工具方面所提供的无限可能。此外,作为对交易管理员面板能力的持续扩展,我们将探讨PieChart(饼图)和ChartCanvas(图表画布)类的实现。
从基础到中级:变量 (III):
今天,我们将学习如何使用预定义的 MQL5 语言变量和常量。此外,我们将分析另一种特殊类型的变量:函数。知道如何正确使用这些变量可能意味着一个有效的应用程序和一个无效的应用程序之间的区别。为了理解这里介绍的内容,有必要理解前几篇文章中讨论的材料。
从基础到中级:定义(一)
在这篇文章中,我们将做一些许多人会觉得奇怪和完全脱离上下文的事情,但如果使用得当,这将使你的学习更加有趣:我们将能够根据这里显示的内容构建非常有趣的东西。这将使您更好地理解 MQL5 语言的语法。此处提供的材料仅用于教育目的。它不应以任何方式被视为最终应用程序。其目的不是探索所提出的概念。