文章,程序库评论 - 页 50

新文章 轻松快捷开发 MetaTrader 程序的函数库(第 三十二部分):延后交易请求 - 在特定条件下挂单已发布: 我们继续功能开发,允许用户利用延后请求进行交易。 在本文中,我们将实现在特定条件下挂单的功能。 延后请求对象含有存储其所有激活条件的数组。 交易管理类(即其计时器)允许持续查看延后交易请求列表。 当需要激活延后交易请求(满足所有预定义的激活条件)时,会将交易订单发送到服务器。 其参数已设置在触发的延后请求当中。 若要开仓,您只需控制特定条件的发生。 一旦它们发生了,开仓的交易订单即会发送到服务器。
新文章 轻松快捷开发 MetaTrader 程序的函数库(第 三十一部分):延后交易请求 - 在特定条件下开仓已发布: 从本文开始,我们将开发一种功能,允许用户在特定条件下利用延后请求进行交易,举例来说,当达到特定时间限制、超出指定利润或由止损平仓时。 该函数库功能允许用户以编程方式创建条件,并遵此条件将交易订单发送到服务器。 例如: 如果价格跌到指定值以下(与品种属性值有关的两个条件),则在出现或超过特定时间时买入。 如果超过了指定的利润(与账户资产值有关的一个条件),则部分平仓。 如果持仓因止损而平仓,则逆向开仓(一个与账户事件属性有关的条件)。
新文章 监视多币种的交易信号(第一部分):开发应用程序结构已发布: 在本文中,我们将讨论创建多币种交易信号监视器的思路,并开发一个未来的应用程序结构,以及沿用其原型创建深入操作的框架。 本文表述了一种灵活的多币种应用程序的分步创建过程,该应用程序将能够生成交易信号,并有助交易者发现所需的信号。 即使在手动交易期间,交易者也会遵循某种操作算法和一连串动作,而这些可表述为五个主要任务: 定义交易信号。 定义入场规则和入场类型。 开仓管理。 定义离场信号。 定义离场规则。
转换 MT5 设置文件至 MT4: 转换 MT5 格式 .set 文件至 MT4 格式。 作者: Richard Gunning
新文章 如何交换数据:10 分钟为 MQL5 创建 DLL已发布: 现在很多开发人员不知道如何编写简单的 DLL,而这是不同系统绑定的特殊特性。我将通过多个示例,展示在 10 分钟内创建简单 DLL 的整个过程,并讨论我们绑定实施的一些技术细节。我将给出 Visual Studio 中的 DLL 创建的分步过程,以及交换不同变量类型的示例(数字、数组、字符串等)。此外,我还将说明在自定义 DLL 中如何使您的客户端免于崩溃。 作者:MetaQuotes Software Corp.
新文章 摆脱自制的 DLL已发布: 如果 MQL5 语言的功能性不足以完成任务,MQL5 程序员不得不诉诸于其他工具。他们必须转向其他编程语言并创建中间 DLL。MQL5 可提供各种数据类型并将它们传递至 API,但遗憾的是,MQL5 无法解决从收到的指针提取数据的相关问题。在本文中,我们将循规蹈矩,说明交换和使用复杂数据类型的简单机制。 作者:o_O
新文章 寻找市场形态的计量经济学方法:自相关,热点图和散点图已发布: 本文研讨季节性特征的扩展研究:自相关热点图和散点图。 本文之目的是展示“市场记忆”的季节性,它通过任意顺序增量的最大相关性来表达。 我们在 M15 时间帧内执行附加检查。 假设我们正在当前时间和前一天的相同时段之间寻找相同的相关性。 在这种情况下,有效滞后必须大 4 倍,并且必须约为 24*4=96,因为每个小时包含四个 M15 周期。 我已经采用相同的设置和 M15 时间帧优化了智能交易系统。 在最佳间隔中,所得的有效滞后小于60,这很奇怪。 也许优化器找到了另一种形态,或者 EA 优化过度。 图例 16. 优化间隔中
lot lib: 手数大小开发库。29 个资金管理选项。 所以,决定吧 - 在每个交易中可以使用怎样的风险?有许多选项,选择正确的一个并非总是那么容易,为了解决这个问题,我制作了lot_lib.mqh库。 作者: Andrey Khatimlianskii
  EA: х1  (1)
х1: 一款简单的无指标系统, 基于按照递减交易量加仓, 直至必要的盈利级别。 作者: ЕВГЕНИЙ
在外汇中显示不同周期级别的加权平均价与结算价-MT5指标: 于主图显示,类似于期货日内均线,可以选择更多的结算周期 作者: Wujun Chen
新文章 连续前行优化 (第三部分): 将机器人适配为自动优化器已发布: 第三部分充当前两部分之间的桥梁:它阐述的是第一篇文章中研究的 DLL,以及第二篇文章中论述的报告下载对象之间的交互机制。 我们将分析从 DLL 导入的包装类的创建过程,该类可依据交易历史记录形成 XML 文件。 我们还将研究一种与此包装器进行交互的方法。 在第一篇文章中,分析了 XML 报告文件的操作机制,和文件结构的创建。 在第二篇文章中则研究了报告的创建。 实验了报告生成机制,从加载历史记录对象开始,到生成报告对象结束。 在研究报表创建过程中涉及到对象时,详细分析了其计算部分。
针对等量等间隔网格刷单最大风险的计算: 这个脚本是计算等价等量加仓步骤的,比如在当前原油价格低迷情况下,又在反复震荡,投资者又想抄底,可以通过这个脚本来计算需要间隔多少来实现逐步等量加仓。 作者: Wujun Chen
MVV_LinearRegression: 标准线性回归通道和支撑/阻力水平。 Author: Владимир
新文章 轻松快捷开发 MetaTrader 程序的函数库(第 三十部分):延后交易请求 - 管理请求对象已发布: 在上一篇文章中,我们遵照函数库对象的一般概念创建了相对应的延后请求对象类。 本次,我们将着手允许管理延后请求对象的类。 最初,我打算创建一个独立的、拥有所有必要方法的类来管理延后请求。 但是事实证明,函数库的主要 CTrading 类与将要创建的管理延后请求的新类是如此紧密相关,以至于令管理延后请求对象的新类成为主要交易类的后代会容易得多。 延后请求对象的完整管理在类计时器中执行,故此我们将基准交易类计时器定为虚拟,这意味着延后请求管理类的计时器也将是虚拟的。
新文章 攫取盈利至最后的点位已发布: 本文尝试阐述在算法交易领域中将理论与实践相结合。 有关创建交易系统的大多数讨论都与依据历史柱线和其上应用的各种指标有关联。 这是覆盖率最高的领域,因此我们不会再过多涉及。 柱线体现出非常人工的实体; 因此,我们将使用更接近原始数据的东西,即价格的即时报价。 资源 我们在哪里可以获得研究所需的价格数据? 即时报价的来源很多。 我们从中选择其一。 当您处理较高含金量的岩石时,找到金块的机会可能更高。 因此,我们将利用具有更高潜在利润的即时报价。...
新文章 轻松快捷开发 MetaTrader 程序的函数库(第 二十九部分):延后交易请求 - 请求对象类已发布: 在之前的文章里,我们检验了延后交易请求的概念。 实际上,延后请求是由特定条件执行的正常交易订单。 在本文中,我们会创建完整的延后请求对象类 — 基准请求对象及其后代。 在前三篇文章里,我们检验了利用延后请求管理交易类交易方法的概念。 实际上,延后请求是由特定条件执行的正常交易订单。 当收到服务器错误时,若该处理错误需要一些等待时间才能重新发送请求至服务器,则我们在交易方法里会检查延迟发送交易订单的条件。 自然而然,并非所有条件都能适用于延后请求。
BB stops JMA - 多停损线: BB stops JMA - 多停损线 作者: Mladen Rakic
新文章 利用箱形图(Boxplot)探索金融时间序列的季节性形态已发布: 在本文中,我们将利用箱形图(Boxplot)观察金融时间序列的季节性特征。 每个单独的箱形图(或箱须图)都能直观地展现数值如何沿数据集的分布。 不要把箱形图与烛条图混淆,尽管它们在外观上可能相似。 随时间和形势趋势变化,价格距均值会有偏移,因此统计分析不适用于此类原始序列。 百分比计量价格变化(价格增幅)通常在计量经济学中使用,以确保它们都位于相同的数值范围内。 可以利用 pd.DataFrame(rates['close'].pct_change(1)) 方法接收百分比变化。 我们需要平均每月价格范围。
新文章 轻松快捷开发 MetaTrader 程序的函数库(第 二十八部分):延后交易请求之平仓、删除和修改已发布: 这是有关延后请求概念的第三篇文章。 我们将创建平仓、删除挂单、修改持仓和挂单参数等方法来完成延后交易请求的测试。 这是有关于延后请求概念的第三篇文章。 在本文中,我们将创建平仓、删除订单、以及修改持仓的止价订单/挂单参数等方法来完成概念测试。 此外,我们还略微改进了抽象订单类,添加了两个订单和仓位属性的返回值 — 订单填充和到期类型。 基准跨平台交易对象的所有交易方法的代码都已略微优化。 没必要在此讨论这些修改。 反之,我将展示修改的方法之一作为单独示例。 作者:Artyom
FuzzyNet 模糊逻辑库: FuzzyNet 是用于创建模糊模型的最流行的数学库之一 用于 Microsoft.Net 的模糊逻辑库 (FuzzyNet) 是一款易于使用的控件, 可用来实现马丹尼和关野 (Sugeno) 型模糊推理系统。 FuzzyNet 包括: 5 个隶属函数。形式灵活的开发模糊系统的规则。 马丹尼 模糊推理系统。 关野 模糊推理系统。一个马丹尼型系统的 去模糊化 方法。无限量的输入和输出变量。当程序库移植到 MQL5 时, 补充了以下内容: 8 个新的隶属函数。4 个马丹尼型系统的去模糊化方法。 作者: MetaQuotes Software Corp...
交易模拟器: 用于策略优化,指标运行和训练交易技巧的程序模拟器。 作者: Денис Орлов
账户状态web发布系统: 这个EA可以把用户的交易状况发布到web服务器。 Author: Greatshore
新文章 轻松快捷开发 MetaTrader 程序的函数库(第 二十七部分):操控交易请求 - 下挂单已发布: 在本文中,我们将继续开发交易请求,实现下挂单,并剔除检测到的交易类操作缺陷。 在上一篇文章中,我们起手实现延后交易请求,并创建了第一个开仓延后请求,应对交易类向服务器发送请求后收到错误。 在本文中,我们将继续开发延后请求,并针对设置挂单时发生错误的情况实现创建延后请求。 在测试交易类时,我检测到一些缺陷。 特别是,在类构造函数中初始化品种的交易对象时,会为其硬性设置默认值。 并非所有这些数值在品种规格中都加以支持。 这就会导致尝试下挂单时,服务器端出错 —
新文章 继续漫步优化(第二部分):为任意机器人创建优化报告的机制已发布: 在漫步优化系列中的第一篇文章里介绍了如何在我们的自动优化器中运用 DLL。 此续文完全致力于 MQL5 语言。 这是致力于创建自动优化器的系列文章中的下一篇,该优化器可以执行交易策略的漫步优化。 上一篇文章描述过如何创建 DLL,并运用在我们的自动优化器和 EA 之中。 这部分新内容则完全致力于 MQL5 语言。 我们将研究优化报告的生成方法,以及在您的算法中该功能的应用。 策略测试器不允许从智能交易系统中访问其数据,而其提供的结果缺乏细节,所以,我们将利用我在之前文章中实现的优化报告下载功能。
MQL5向导 - 基于两条移动平均线带日内时间过滤的交易信号: 基于两条指数平滑移动平均线交叉带日内过滤的交易信号(CSignal2EMA_ITFA来自MQL5标准库)被考虑。基于该策略的EA交易的代码可以被MQL5向导自动生成 作者: MetaQuotes Software Corp.
  EA: 跳空 DM  (4)
跳空 DM: 智能交易系统等待柱线开盘时的跳空。 作者: Vladimir Karputov
新文章 轻松快捷开发 MetaTrader 程序的函数库(第二十六部分):处理延后交易请求 - 首次实现(开仓)已发布: 在本文中,我们将在订单和仓位的魔幻数字中存储一些数据,并开始实现延后请求。 为了验证这一概念,我们在收到服务器错误并需要等待与重复发送请求时,创建第一个测试延后请求来开仓。 编译并启动 EA。 断开互联网,然后等待以下图像出现在终端的右下角: 禁用互联网并单击“卖出”后,交易服务器返回错误,且日志中显示以下记录: 2019.11.26 15:34:48.661 CTrading::OpenPosition<uint,uint>: Invalid
新文章 轻松快捷开发 MetaTrader 程序的函数库(第 二十五部分):处理交易服务器返回的错误已发布: 交易订单发送到服务器之后,我们需要检查错误代码,或未出现错误。 在本文中,我们将研究处理交易服务器返回的错误,并着手创建延后交易请求。 在最新的 MetaTrader 5 版本中(自 build 2201 开始),测试器提供了在测试执行期间为品种设置参数的能力。 因此,可以在品种上设置交易限制,并在检测到品种限制时测试函数库行为。 若要调用品种设置窗口,单击测试时间帧选择右侧的按钮: 一个品种只允许开立多头仓位,并将同时开仓和同向挂单的交易量限制为 0.5。
新文章 轻松快捷开发 MetaTrader 程序的函数库(第 二十四部分):基准交易类 - 无效参数自动纠正已发布: 在本文中,我们关注无效交易订单参数的处理程序,并改进交易事件类。 现今,所有交易事件(单个和在一次即时报价内同时发生的)均将在程序中正确定义。 通常,EA 应当能够根据形势采取行动,同时遵循用户定义的交易订单出错的处理逻辑。 因此,当检测到交易订单错误时,我们可以向 EA 提供以下指令: 干脆地退出交易方法,即由用户自行创建出错订单内无效参数的处理程序。 如果交易订单的无效值可被修复,则立即行动,并将其发送到服务器,
发表文章: 如何在10分钟内为MQL5编写一个DLL并交换数据? : 事实上,现在很少有开发者记得如何编写一个简单的DLL,以及连接异质系统的特殊性。在10分钟内,我将尝试演示创建简单DLL的整个过程,并讨论我们绑定实现的一些技术细节。我将通过传递不同类型的变量(数字、数组、字符串等)以及在自定义DLL中保护客户终端免于崩溃的例子,展示在Visual Studio中创建DLL的一步步过程。 作者: Renat Fatkhullin