神经网络变得轻松(第七部分):自适应优化方法

神经网络变得轻松(第七部分):自适应优化方法

在之前的文章中,我们利用随机梯度下降法针对网络中的所有神经元按照相同的学习率训练神经网络。 在本文中,我提议着眼于自适应学习方法,该方法能够改变每个神经元的学习率。 我们还将研究这种方法的利弊。
无需 Python 或 R 语言知识的 Yandex CatBoost 机器学习算法

无需 Python 或 R 语言知识的 Yandex CatBoost 机器学习算法

本文通过一个具体的例子提供了机器学习过程的主要阶段的代码和描述。您不需要 Python 或 R 语言知识就能够获得模型。此外,基本的MQL5知识已经足够了- 这正是我的水平。因此,我希望这篇文章能为广大读者提供一个很好的指导,帮助那些对评估机器学习能力感兴趣的人,并在他们的课程中实现这些能力。
模式搜索的暴力方法(第二部分):深入

模式搜索的暴力方法(第二部分):深入

在本文中,我们将继续讨论暴力方法。我将尝试使用我的应用程序的新改进版本来更好地解释这种模式。我还将尝试使用不同的时间间隔和时间框架来找出稳定性的差异。
神经网络变得轻松(第六部分):神经网络学习率实验

神经网络变得轻松(第六部分):神经网络学习率实验

我们之前已研究过各种类型的神经网络及其实现。 在所有情况下,训练神经网络时都使用梯度下降法,为此我们需要选择学习率。 在本文中,我打算通过示例展示正确选择学习率的重要性,及其对神经网络训练的影响。
模式搜索的暴力方法

模式搜索的暴力方法

在本文中,我们将搜索市场模式,根据确定的模式创建 EA 交易,并检查这些模式,如果它们保持有效的话,保持有效的时间有多少。
神经网络变得轻松(第四部分):循环网络

神经网络变得轻松(第四部分):循环网络

我们继续研究神经网络的世界。 在本文中,我们将研究另一种类型的神经网络,循环网络。 此类型建议与时间序列配合使用,其在 MetaTrader 5 交易平台中由价格图表呈现。
并行粒子群优化

并行粒子群优化

本文介绍了一种基于粒子群算法的快速优化方法。本文还介绍了MQL中的方法实现,它既可以在EA交易内部的单线程模式下使用,也可以作为在本地测试人员代理上运行的附加组件在并行多线程模式下使用。
开发交易算法的科学方法

开发交易算法的科学方法

本文探讨了开发交易算法的方法,即使用一致的科学方法来分析可能的价格模式,并基于这些模式构建交易算法。开发的理念是通过实例来展示的。
自定义品种(符号):实践基础

自定义品种(符号):实践基础

本文专门介绍了程序化生成自定义品种(符号),这些自定义品种可用来演示一些显示报价的流行方法。 它描述的是一种建议的微创智能交易系统改编方案,可用在派生的自定义品种图表上,如同真实品种一样。 MQL 源代码随附于文后。
计算数学表达式(第二部分)。 普拉特和分流场解析器

计算数学表达式(第二部分)。 普拉特和分流场解析器

在本文中,我们基于运算符优先级的解析器,研究数学表达式解析和评估的原理。 我们将实现普拉特(Pratt)和分流场解析器,字节代码的生成和代码计算,查看如何在表达式中将指标用作函数,以及如何基于这些指标在智能交易系统中设置交易信号。
快捷手动交易工具箱:基本功能

快捷手动交易工具箱:基本功能

如今,众多交易者切换至自动交易系统,这类系统可能需要附加设置,或是能够完全自动化并准备就绪。 然而,有相当一部分交易者更喜欢以旧有方式进行手动交易。 在本文中,我们将创建快速手动交易工具箱,用热键来一键执行典型交易操作。
开发跨平台网格 EA:测试多币种 EA

开发跨平台网格 EA:测试多币种 EA

行情在一个月内下跌了 30% 以上。 这似乎是测试基于网格和马丁格尔的智能交易系统的最佳时间。 本文是“创建跨平台网格 EA”系列的计划外延续。 当前行情为安排网格 EA 提供了疏解压力的机会。 因此,我们要把握这次机会,并测试我们的智能交易系统。
在交易中应用 OLAP(第 3 部分):为开发交易策略而分析报价

在交易中应用 OLAP(第 3 部分):为开发交易策略而分析报价

在本文中,我们将继续研讨在交易中运用 OLAP 技术。 我们会扩展前两篇文章中表述的功能。 这次我们将研究报价的操盘分析。 我们还将基于所汇集的历史数据,推导并检验交易策略的设想。 本文推介了基于柱线形态研究和自适应交易的智能交易系统。
使用单独模块构建智能交易系统

使用单独模块构建智能交易系统

开发指标、智能交易系统和脚本时,开发人员往往需要创建大量与交易策略没有直接关系的各种代码片段。 在本文中,我们研究一种复用早前已创建的模块(例如尾随、过滤和调度代码、亦或其他)来搭建智能交易系统的方法。 我们将看到这种编程方式的益处。
解读经典和隐藏背离的新途径。 第二部分

解读经典和隐藏背离的新途径。 第二部分

本文针对各种指标的常规背离及其成效进行了严格查验。 此外,它还包含用于提升分析准确性的过滤选项,并提供非标准解决方案的功能描述。 结果就是,我们将创建一个解决技术任务的新工具。
开发跨平台网格 EA 交易(第三部分): 使用马丁格尔的基于修正的网格

开发跨平台网格 EA 交易(第三部分): 使用马丁格尔的基于修正的网格

在本文中,我们将尝试开发尽可能最好的基于网格的 EA 交易。像往常一样,这将是一个跨平台的EA,能够与 MetaTrader 4 和 MetaTrader 5一起工作。第一个 EA 已经足够好了,只是它在很长一段时间内不能盈利。第二个EA在几年之内可能有效,不幸的是,在最大回撤低于50%的条件下, 它每年无法产生超过50%的利润。
在交易中应用 OLAP(第 2 部分):可视化交互式多维数据分析的结果

在交易中应用 OLAP(第 2 部分):可视化交互式多维数据分析的结果

在本文中,我们会探讨为一个MQL程序创建一个交互式图形界面,该程序设计用于使用OLAP技术处理帐户历史和交易报告。为了获得视觉效果,我们将使用最大化和可伸缩的窗口、自适应布局的控件和用于显示图表的新控件。为了提供可视化功能,我们将实现一个GUI,其中沿着坐标轴选择变量,以及选择聚合函数、图表类型和排序选项。
开发一个跨平台网格 EA

开发一个跨平台网格 EA

在本文中,我们将学习如何创建在 MetaTrader 4 和 MetaTrader 5 中都能工作的 EA 交易。为此,我们将开发一个 EA 构建的订单网格,网格是指将多个限价订单置于当前价格之上,同时将相同数量的限价订单置于当前价格之下的 EA 交易。
使用CSS选择器从HTML页面提取结构化数据

使用CSS选择器从HTML页面提取结构化数据

本文描述了一种通用的基于CSS选择器的HTML文档数据分析和转换方法。交易报告、测试报告、您最喜欢的经济日历、公共信号、账户监控和其他在线报价源将直接从MQL获得。
MetaTrader 5 与 Python 的集成:接收和发送数据

MetaTrader 5 与 Python 的集成:接收和发送数据

全方位的数据处理需要大量工具,并且经常超出单一应用程序的功能沙箱。 专用编程语言正在用于处理和分析数据,统计和机器学习。 Python 是数据处理的主要编程语言之一。 本文介绍如何使用套接字连接 MetaTrader 5 和 Python,以及如何通过终端 API 接收报价。
ZigZag (之字折线) 的力量(第二部分)。 接收、处理和显示数据的示例

ZigZag (之字折线) 的力量(第二部分)。 接收、处理和显示数据的示例

在本文的第一部分当中,我曾描述过一个修订的 ZigZag (之字折线) 指标和一个用于接收该类型指标数据的类。 在此,我将展示如何基于这些工具开发指标,并编写一款根据 ZigZag 指标形成的信号进行交易的 EA 来测试。 作为补充,本文将介绍一套开发图形用户界面的新版 EasyAndFast 函数库。
ZigZag(之字折线)的力量(第一部分)。 开发指标基类

ZigZag(之字折线)的力量(第一部分)。 开发指标基类

许多研究人员对于判定价格行为没有给予足够的重视。 与此同时,还使用各种复杂方法,而这些方法通常只是“黑盒子”,例如机器学习或神经网络。 在这种情况下显现出的最严重问题就是提交何种数据来训练特定模型。
以马丁格尔(翻倍加仓)为基础的长线交易策略

以马丁格尔(翻倍加仓)为基础的长线交易策略

在本文中,我们将深入研究马丁格尔(翻倍加仓)系统。 我们将评测该系统是否可以用于实盘交易,以及在运用它时如何将风险减至最小。 这一简单系统的主要缺点在于很可能会将全部存款亏损。 如果您决定使用马丁格尔技术进行交易,则必须考虑这一事实。
蒙特卡罗方法在强化学习中的应用

蒙特卡罗方法在强化学习中的应用

在本文中,我们将应用强化学习来开发可以自主学习的EA交易。在前一篇文章中,我们考虑了随机决策森林算法,并编写了一个简单的基于强化学习的自学习EA,概述了这种方法的主要优点(交易算法的开发简单和“培训”速度快)。强化学习(RL)可以很容易地融入到任何交易EA中,并加速其优化。
分离策略在趋势和盘整条件下的优化

分离策略在趋势和盘整条件下的优化

本文探讨了在分离在不同市场条件下的优化方法,分离优化意味着分别为上涨趋势和下跌趋势分别定义交易系统的最佳参数. 为了减少错误信号的影响,提高盈利能力,系统变得灵活,这意味着它们有一些特定的设置或输入数据,这是合理的,因为市场行为不断变化。