文章,程序库评论 - 页 31

Super-signals: 本指标很容易使用:红色箭头 - 卖出信号,蓝色箭头 - 买入信号。超出了它的模拟,例如最高价-最低价,趋势以及其它达到几次。可以适用于任意时段和任意货币对。 作者: John Smith
新文章 利用 CatBoost 算法寻找外汇市场的季节性模式 已发布: 本文探索了用时间过滤器建立机器学习模型,并讨论了这种方法的有效性。现在,只要简单地指示模型在一周中某一天的某个时间进行交易,就可以消除人为因素。模式搜索可以由单独的算法提供。 您可以在函数中设置要检查的小时数列表。在我的例子中,所有的24小时都设置好了。为了实验的纯度,我通过将“min”和“max”(开启仓位的最小和最大水平)设置为15来禁用采样。“iterations”变量负责每小时的再训练周期数。增加这个参数可以得到更可靠的统计数据。操作完成后,函数将显示下图:
新文章 直推和主动机器学习中的梯度提升 已发布: 在本文中,我们将探讨利用真实数据的主动机器学习方法,并讨论它们的优缺点。也许你会发现这些方法很有用,并将它们包含在你的机器学习模型库中。直推是由支持向量机(SVM)的共同发明者弗拉基米尔·瓦普尼克(Vladimir Vapnik)提出的。 让我们直接进入主动学习,用我们的数据测试它的有效性。 Python语言中有几个用于主动学习的库,其中最流行的是: modAL 是一个非常简单易学的包,它是流行的机器学习库 sciket learn 的一种包装(它们完全兼容)。该软件包提供了最流行的主动学习方法。 Libact
新文章 DoEasy 函数库中的时间序列(第五十七·部分):存储一次即时报价数据的对象 已发布: 从本文开始,着手创建操控价格数据的函数库功能。 今天,创建一个对象类,存储到达的即时报价的全部价格数据。 编译 EA,并在已预先设置好当前品种和时间帧的图表上启动它。 启动之后,当有新即时报价到达,对象(到达的即时报价)的说明将显示在日志当中: Account 8550475 : Artyom Trishkin (MetaQuotes Software Corp.) 10426.13 USD, 1 : 100 , Hedge, Demo account MetaTrader 5 ---
新文章 DoEasy 函数库中的时间序列(第五十八部分):指标缓冲区数据的时间序列 已发布: 关于操控时间序列的主题总结,诸如组织存储、针对存储在指标缓冲区中的数据进行搜索和分类,如此即可在程序里利用函数库创建指标值,并进一步据其执行分析。 函数库的所有集合类的一般概念,能够轻松地在相应的集合中找到必要的数据。 在今天创建的类中,也可分别完成同样功能。 编译 EA,并在图表上启动它,设置为仅使用当前品种和当前时间帧。 在图表的注释中,将显示所有已创建指标的第一号和零号(当前)柱线的数据: 为了更清晰起见,在图表上绘制了含有相同设置的相同指标 -
新文章 MQL5 编程基础: 终端中的全局变量已发布: 终端中的全局变量为开发复杂而可靠的EA交易提供了一种方便的工具,如果您掌握了全局变量,您就会发现在使用MQL5开发EA交易的时候它们是必不可少的。 执行脚本并在终端中打开全局变量窗口,窗口中应该包含一个新的叫做"test"的变量,并且它的数值为 1.23 (图 4)。   图 4. 带有新的 "test" 变量的全局变量窗口片段 实例的代码可以在 sGVTestCreate 脚本中找到。 作者:Dmitry Fedoseev
新文章 开发自适应算法(第一部分):寻找基本模式 已发布: 在接下来的系列文章中,我将演示探讨大多数市场因素的自适应算法的开发,以及如何将这些情况系统化,用逻辑描述它们,并在您的交易活动中应用它们。我将从一个非常简单的算法开始,这个算法将逐渐获得理论,并发展成一个非常复杂的项目。 EA 的特点是能够将赚来的资金再投资,您需要应用这一点。到目前为止,我展示了保守设置下的测试。但是,如果我们设置非常激进的设置,并启用大的手数呢?我不喜欢高风险,但让我们看看算法的能力。我将在2006年1月1日至2020年11月25日期间,在“Every Tick”模式下对 GBPUSD
新文章 神经网络变得轻松(第八部分):关注机制 已发布: 在之前的文章中,我们已经测试了组织规划神经网络的各种选项。 我们还研究了自图像处理算法中借鉴而来的卷积网络。 在本文中,我建议研究关注机制,它的出现为开发语言模型提供了动力。 分析烛条品种图表时,我们定义了趋势和倾向,并判定出它们的交易范围。 这意味着,我们从总体图中选择一些对象,然后将注意力集中在这些对象上。 我们知晓对象会影响未来的价格行为。 为了实现这种方法,早在 2014 年,开发人员就提出了第一种算法,该算法可以分析输入和输出序列元素[ 8 ] 之间的依赖性,并高亮显示。 所提议的算法称为“泛关注机制”。
新文章 使用电子表格建立交易策略 已发布: 本文介绍了使用电子表格(Excel、Calc、Google)分析任何策略的基本原则和方法。所得结果与 MetaTrader 5 测试器进行了比较。 为了分析策略的盈利能力,我需要计算交易期间价格所经过的距离。最简单的方法是分几个阶段。 首先,选择交易价格。如果交易已打开,请在信号旁边的列( L )中设置价格,并将其复制到随后的每个单元格中,直到交易关闭。如果没有交易,则向单元格中写入一个空行。 L4 单元格中的公式: = IF ( K4 = INDEX (DealTypes; 1 ) ; B4 +Spread ; IF ( K4 = INDEX
新文章 MetaTrader 5 中的 WebSockets 已发布: 在引入随 MQL5 API 更新而提供的网络功能之前,MetaTrader 程序与基于 WebSocket 的服务连接和接口的能力受到许多限制。当然,这一切都改变了,在本文中,我们将探讨纯 MQL5 中 WebSocket 库的实现。WebSocket 协议的简要描述将与如何使用生成的库的逐步指南一起给出。 这是连接到服务器时程序运行的视频。 作者: Francis Dube
新文章 DoEasy 函数库中的时间序列(第五十七·部分):指标缓冲区数据对象 已发布: 在本文中,开发一个对象,其中包含一个指标的一个缓冲区的所有数据。 这些对象对于存储指标缓冲区的数据序列将是必需的。 在其的辅助下,才有可能对任何指标的缓冲区数据,以及其他类似数据进行排序和比较。 在函数库中所有数据构建和存储的概念都建立在包含一组相同类型数据的集合列表之上。 它们可按所需顺序进行选择、排序和过滤。 这样可以获取必要的数据集,从而进一步深入比较和分析。 依据它们的结构,指标缓冲区与早前创建的序列对象也没有太大不同,它们也可被包含在它们的集合列表当中,在其中我们可以快速找到包含数据的必要对象。
新文章 模式搜索的暴力算法(第三部分):新视野 已发布: 本文延续了暴力算法的主题,并在程序算法中引入了市场分析的新机会,从而加快了分析速度,提高了结果质量。新的添加使得在这种方法中可以看到最高质量的全局模式。 另外,在测试过程中,我发现了一些错误的程序算法,这往往产生错误的结果。我已经修复了它们,但是这减少了找到的模式的数量。不过,这一次足以找到可接受的选择。现在,让我们在 MetaTrader 5 中进行测试:
新文章 DoEasy 函数库中的时间序列(第五十六部分):自定义指标对象,从集合中的指标对象获取数据 已发布: 本文研究在 EA 中创建自定义指标对象。 我们稍微改进一下库类,并添加一些方法,以便从 EA 中的指标对象获取数据。 品种图表将显示所有已创建指标缓冲区中的数据: 可在图表上添加必要的指标,这些指标的参数与 EA 中创建的参数相对应。 您可以在图表注释和数据窗口中检查这些指标的匹配情况 - 它们应该匹配。 作者: Artyom Trishkin
新文章 神经网络变得轻松(第七部分):自适应优化方法 已发布: 在之前的文章中,我们利用随机梯度下降法针对网络中的所有神经元按照相同的学习率训练神经网络。 在本文中,我提议着眼于自适应学习方法,该方法能够改变每个神经元的学习率。 我们还将研究这种方法的利弊。 经由 Adam 方法进行的优化测试,其所依据条件与早期 测试 中使用的相同:品种 EURUSD,时间帧 H1,20 根连续烛条的数据馈入网络,并根据最近两年的历史进行训练。 已为测试创建了 Fractal_OCL_Adam 智能交易系统。 该智能交易系统的创建,则是基于 Fractal_OCL EA,在主程序的 OnInit
新文章 市场及其全局模式中的物理学 已发布: 在本文中,我将尝试测试这样一个假设,即任何对市场了解甚微的系统都可以在全局范围内运行。我不会发明任何理论或模式,但我只会使用已知的事实,逐步将这些事实转化为数学分析的语言。 这就是我们需要 MetaTrader 5 测试器的地方。MetaTrader 5 允许使用真实的报价点测试策略。不幸的是,所有货币对和工具都只在一个相对较近的时期内有真实报价点。我将在过去几年中使用真实的报价点和非常严格的点差要求来测 试 MetaTrader 5 的系统版本,看看该系统在2020年是否能正常工作。但首先,我将在“每个报价点”模式下对以前使用的时段进行测试:
新文章 无需 Python 或 R 语言知识的 Yandex CatBoost 机器学习算法 已发布: 本文通过一个具体的例子提供了机器学习过程的主要阶段的代码和描述。您不需要 Python 或 R 语言知识就能够获得模型。此外,基本的MQL5知识已经足够了- 这正是我的水平。因此,我希望这篇文章能为广大读者提供一个很好的指导,帮助那些对评估机器学习能力感兴趣的人,并在他们的课程中实现这些能力。 结果不是很特别出众,但可以注意到,主要的交易规则“避免金钱损失”是遵守的。即使我们从 CB_Svod.csv
在锁仓账户中用单边模式计算多个订单的价格: MT4账户一般是双边模式,但如果你采用加仓的话,价格分布在不同位置,就不好知道当前的平均开单价,本脚本采用MT5的单边账户模型显示了一些相应的价格(平均开单价,保本价,中价),并可以计算到达某个价格下的利润。 作者: Wujun Chen
新文章 DoEasy 函数库中的时间序列(第五十五部分):指标集合类 已发布: 本文继续开发指标对象类及其集合。 为每个指标对象创建其描述和正确的集合类,从而实现无错存储,并从集合列表中获取指标对象。 编译 EA 并在终端图表上启动它。 初始化之后,“智能系统”日志显示有关函数库的初始化消息。 两个创建的指标的参数,它们当中分别拥有 完整 和 简洁 参数列表: Account 8550475 : Artyom Trishkin (MetaQuotes Software Corp.) 10425.23 USD, 1 : 100 , Hedge, Demo account MetaTrader 5
新文章 梯度提升(CatBoost)在交易系统开发中的应用. 初级的方法 已发布: 在 Python 中训练 CatBoost 分类器,并将模型导出到mql5,以及解析模型参数和自定义策略测试程序。Python 语言和 MetaTrader 5 库用于准备数据和训练模型。 编译后的 EA 可以在标准的 MetaTrader 5 策略测试器中进行测试。选择一个合适的时间框架(必须与模型训练中使用的时间框架相匹配)和输入参数 look_back 和 MA_period,这也应该与 Python 程序中的参数相匹配。让我们在训练期间检查模型(培训+验证子样本): 模型的效果(训练+验证子样本)
Bad Orders: 智能交易 BadOrders。简单实用的智能交易。 Author: John Smith
5_8 MACross: 5_8 MACross.使用指标MA。 Author: John Smith
新文章 使用 DeMark Sequential 和 Murray-Gann 水平分析图表 已发布: Thomas DeMark Sequential (序列)擅长显示价格变动的平衡变化。如果我们把它的信号与水平指标例如 Murray 水平相结合,就更为明显。这篇文章主要是为初学者和那些仍然找不到他们的“圣杯”。我还将展示一些我在其他论坛上没有看到的构建水平的功能。因此,这篇文章可能对高级交易者也很有用。欢迎提出建议和合理批评。
新文章 手工图表和交易工具包(第二部分)。 图表图形绘图工具 已发布: 这是该系列的下一篇文章,在其中我展示了如何创建一个函数库来,从而看便利地用键盘快捷键手动绘制图表图形。 所用工具包括直线及其组合。 在这一部分中,我们将查看如何在绘图工具里应用第一部分中讲述的函数。 该函数库可连接到任何 EA 或指标,这将大大简化绘图任务。 此方案未使用外部 dll,而所有命令都是由内置 MQL 工具实现的。 我相信趋势线可以承受双倍负荷。 一方面,它显示了价格变化率的限制(如果价格低于该趋势线,则为“不快” ;如果价格低于该趋势线,则为“不慢” , 价格高于上限)。
新文章 DoEasy 函数库中的时间序列(第四十六部分):多周期、多品种指标缓冲区 已发布: 在本文中,我将继续改进指标缓冲区对象类,从而可在多品种模式下操作。 这为自定义程序中创建多品种、多周期指标提供了途径。 我会在计算缓冲区对象里添加缺失的功能,从而令我们可创建多品种、多周期的标准指标。 每根柱线上的直方图和信号线的颜色对应于指定品种/周期的 MACD 蜡烛方向: 该指标在 EURUSD M15 图表上启动,默认设置为基于 GBPUSD M30 的 MACD。 为了更清楚起见,打开相同参数的 GBPUSD M30,以及标准 MACD。 作者: Artyom Trishkin
Williams Percent Range, %R: Williams’ Percent Range Indicator (%R) is a dynamic technical indicator, which determines whether th Author: MetaQuotes Software Corp.
新文章 神经网络变得轻松(第六部分):神经网络学习率实验 已发布: 我们之前已研究过各种类型的神经网络及其实现。 在所有情况下,训练神经网络时都使用梯度下降法,为此我们需要选择学习率。 在本文中,我打算通过示例展示正确选择学习率的重要性,及其对神经网络训练的影响。 第三个实验与本文的主题略有偏离。 其思路来自前两个实验。 因此,我决定与您分享。 在观察神经网络训练的同时,我注意到不存在分形的概率在 60-70% 左右波动,且很少低于 50%。 无论买入或卖出,出现分形的可能性均约为 20% 至 30%。 这是很自然的,因为图表上的分形比趋势内的烛条少得多。
阻力与支撑: 本指标的支撑和阻力线是根据 iFractals (分形) 指标值计算得来的。 作者: Vladimir Karputov
新文章 DoEasy 函数库中的时间序列(第五十四部分):抽象基准指标类的衍生 已发布: 本文研究基于基准抽象指标衍生对象类的创建。 这些对象所提供功能,可访问创建的指标 EA,收集和获取各种指标和价格数据的数值统计信息。 同样,创建指标对象集合,从中可以访问程序中创建的每个指标的属性和数据。 为了进行测试,我们需要 上一篇文章中的指标 ,且无需进行任何修改。 简单地将其保存在新文件夹 \MQL5\Indicators\TestDoEasy\ Part54\ 之下,新名称为 TestDoEasyPart54.mq5 。 编译指标,并在图表上启动它。 在日志中将显示以下内容: all
新文章 开发和分析交易系统的最佳方法 已发布: 在这篇文章中,我将展示在选择一个系统或信号来投资你的资金时所使用的标准,以及描述开发交易系统的最佳方法,并强调这个问题在外汇交易中的重要性。 正如我们所见,这里也有全局模式的迹象,我们只需测试整个时间间隔,看看它在全局范围内的表现: 这张图远不是完美的,但我们可以看到有效的阶段。我们也可以尝试引入过滤器或进行深度优化。特定工具的选择始终是可选项。如果我们对其他对进行测试,那么结果可能会有所不同,但是经过一定的时间,我们很可能会同时找到几个对的最佳参数。如果我们设法掌握并加强物理学,那么结果会更好。
新文章 DoEasy 函数库中的时间序列(第五十三部分):抽象基准指标类 已发布: 本文研究创建一个抽象指标,其将进一步用作创建函数库标准指标和自定义指标对象的基类。 随着 DoEasy 函数库的开发,我们已有必要创建一个指标对象。 此类对象的存在将允许在程序里便捷地存储和使用已创建的所有指标。 指标对象构造的概念与主要函数库对象的概念没有不同,即:基准抽象对象及其后代依据其状态(对于指标 - 自定义和标准)阐明对象的从属关系。 我曾在 最早的文章 中谈及如何创建此类对象。 今天,创建基准抽象指标对象,并检查其创建结果。 在随后文章中,我将创建标准和自定义指标的对象。