文章 "通过有用的技术组合让您的 MQL5 客户惊叹!"

 

新文章 通过有用的技术组合让您的 MQL5 客户惊叹!已发布:

得益于 MQL5 为编程人员提供的一套非常完整的函数集和面向对象 API,他们可以在 MetaTrader 环境中大展身手。然而,Web 技术如今是用途极为广泛的工具,可以在一些情形中提供帮助:当您需要完成一些非常具体的工作;希望用一些不同的东西给您的客户留下深刻印象;或仅仅是您没 有足够的时间来掌握 MT5 标准库的特定部分。今天的练习引导您完成有关如何在创建令人惊叹的技术组合的同时,管理您的开发时间的实例。

Figure 5. jQuery dialog

作者:Jordi Bassaganas

 
我没有仔细阅读,只是通篇在寻找中心思想。它是什么?是关于用 mql5 生成网页,还是 "人人都能使用的基础 html"?一些日期选择器、时间选择器....如何将它们连接到 MT5 EA?
 

从 MQL 到 Java 的切换?

 

主要内容是写的代码已通过验证,但它根本不起作用,你可以看到它是为 magarich 设计的--现在我明白第一张图片上的内容了。

 
感谢您提供这篇有趣的文章。我希望作者不会介意这个例子的可用性略有提高。我用 Hlaiman 引擎做了这个例子,我现在发布的是稍作修改的 news-watcher-csv.html 文件。我添加了检测计算机上安装的终端的功能,并将 CSV 格式的新闻日历保存到用户所选终端的数据文件夹中。


终端选择

对 news-watcher-csv.html 的修改:


初始化 Hlaiman、检测用户电脑上的终端、创建适当的界面元素。

var hlaim_app = new ActiveXObject("hlaim.Application");
if(hlaim_app != null) {
        var hlaim_plugin = hlaim_app.LoadModuleObject("mt45.dll");
        var hlaim_terminals = document.getElementById("base-terminal");
        if(hlaim_plugin && hlaim_plugin.TerminalsCount > 0 && hlaim_terminals)
        for(i = 0; i < hlaim_plugin.TerminalsCount; i++) {
                var new_term = document.createElement("option");
                if(new_term) {
                        new_term.text = hlaim_plugin.Terminals[i];
                        new_term.value = i;
                        hlaim_terminals.add(new_term);
                }
        }
}

对对话框中的 "确定 "按钮的功能进行小幅修改

Ok: function() {
var fso, f1, ht; 
        fso = new ActiveXObject("Scripting.FileSystemObject");
        ht = document.getElementById("base-terminal");
        if(fso && ht) {
                csv_term = new String(ht.options[ht.selectedIndex].text);
                csv_path = csv_term.slice(0, csv_term.indexOf("terminal")) +
                "MQL5\\files\\news_watcher.csv";
                f1 = fso.CreateTextFile(csv_path, true); 
                f1.Write (csv);
                fso = null;
        }  
        $( this ).dialog( "close" );
}

终端选择界面元素

<div class="form-field">
        <label> Select terminal:</label>
        <select id="base-terminal">
        </select>
</div>

*使用的 HTML5 代码已通过 W3C 标记验证服务的验证。本示例必须安装 Hlaiman EA Generator 才能运行。要了解有关 Hlaiman EA Generator 的更多信息,请阅读以下文章:基于 MQL5 向导和 Hlaiman EA Generator 创建神经网络交易机器人

Hlaiman 引擎的功能允许 MQL 开发人员在其应用程序中充分利用网络技术的力量。例如,可利用这一系列技术创建复杂、多终端、跨平台的智能交易系统。

附加的文件:
 
感谢您提供这篇有趣的文章。
,我希望作者不要谴责对这个示例进行的一点可用性改进。在 Hlaiman 引擎的帮助下,我对附件中的 news-watcher-csv.txt 文件进行了小幅修改。添加了检测计算机上安装的终端和将 CSV 格式的新闻日历保存到用户所选终端的数据文件夹中的功能。


终端选择

news-watcher-csv.html 中的更改:

初始化 Hlaiman 引擎、检测用户电脑上的终端、创建相应的界面元素。


var hlaim_app = new ActiveXObject("hlaim.Application");
if(hlaim_app != null) {
        var hlaim_plugin = hlaim_app.LoadModuleObject("mt45.dll");
        var hlaim_terminals = document.getElementById("base-terminal");
        if(hlaim_plugin && hlaim_plugin.TerminalsCount > 0 && hlaim_terminals)
        for(i = 0; i < hlaim_plugin.TerminalsCount; i++) {
                var new_term = document.createElement("option");
                if(new_term) {
                        new_term.text = hlaim_plugin.Terminals[i];
                        new_term.value = i;
                        hlaim_terminals.add(new_term);
                }
        }
}
Ok: function() 中的小改动


Ok: function() {
var fso, f1, ht; 
        fso = new ActiveXObject("Scripting.FileSystemObject");
        ht = document.getElementById("base-terminal");
        if(fso && ht) {
                csv_term = new String(ht.options[ht.selectedIndex].text);
                csv_path = csv_term.slice(0, csv_term.indexOf("terminal")) +
                "MQL5\\files\\news_watcher.csv";
                f1 = fso.CreateTextFile(csv_path, true); 
                f1.Write (csv);
                fso = null;
        }  
        $( this ).dialog( "close" );
}
选择终端的界面元素


<div class="form-field">
        <label> Select terminal:</label>
        <select id="base-terminal">
        </select>
</div>
*HTML5 代码已通过 W3C 标记验证服务验证。为使本示例正常运行,您需要安装 Hlaiman EA Generator。要了解有关 Hlaiman EA Generator 的更多信息,请阅读文章《使用 MQL5 向导和 Hlaiman EA Generator 创建神经网络 EA》。

Hlaiman 引擎的可能性使 MQL 开发人员能够在其应用程序中充分利用网络技术的力量。例如,这种可用的技术组合可用于创建复杂、多终端、跨平台的专家顾问。
附加的文件:
 

感谢您的改进、

我们欢迎任何扩展 这就是我们的 想法! 我们可以 MQL5 开发 使用 网络 技术 来创建跨平台软件。不过, 我想借此机会 发表一点意见

一般来说, JavaScript 代码 不应 使用 ActiveX 控件 解决安全问题,因为 恶意软件 编写者可能会编写 ActiveX 程序来进入用户的 Windows 系统。您的客户应该信任您,您才可以做这样的事情,而且您应该清楚地向 他们解释 您使用 ActiveX 来运行某些功能等。

当然, 可以 ActiveX 用于自己的 用途 随心所欲地 Windows 进行交互

更多信息,请参见这里:

http://entertainment.howstuffworks.com/activex-for-animation3.htm

http://articles.winferno.com/web-browser-security/dangers-of-activex/

HowStuffWorks "Problems with ActiveX"
HowStuffWorks "Problems with ActiveX"
  • Dave Roos
  • entertainment.howstuffworks.com
The same things that make ActiveX so useful -- its flexibility and integration between all applications -- make it particularly dangerous in the hands of malicious hackers. Many of the past decade's most infamous computer viruses, spyware and adware programs came disguised as ActiveX controls. The problem with ActiveX, security experts say, is...
 
感谢您的评论。事实上,ActiveX 以及其他微软互联网技术都可能被用于传播病毒。谷歌等其他通信解决方案也存在同样的情况。当然,目前病毒的主要传播者是互联网。

从这个角度来看,大多数类似的任务在本地文本编辑器中解决要安全得多。100%使用打字机也会更安全。用计算器代替电脑会更好;)。但不幸的是,这将会影响可用性。

,但我认为我们不应该对此过于担心,因为专门的反病毒程序和网站都在与病毒作斗争。我们只需在 MetaTrader 环境中保护我们的客户,因为在这种环境中,病毒的风险较小,但外汇交易 的风险较大。
 
hlaiman:
感谢您的评论。事实上,ActiveX 以及其他微软互联网技术都可能被用于传播病毒。谷歌等其他通信解决方案也存在同样的情况。当然,目前病毒的主要传播者是互联网。 从这个角度来看,大多数类似的任务在本地文本编辑器中解决要安全得多。100%使用打字机也会更安全。用计算器代替电脑会更好;)。但不幸的是,这将影响可用性。 ,但我认为我们不应该对此过于担心,因为专门的反病毒程序和网站都在与病毒作斗争。我们只需在 MetaTrader 环境中保护我们的客户,因为在该环境中,病毒的风险较小,但



外汇交易 的风险较大。
嗯,我认为关于 ActiveX 的评论必须做。我喜欢跨平台 EA 的想法,但网络用户必须意识到 ActiveX 可能是危险的。

话虽如此,如果您的客户信任您,您可以使用 ActiveX。您可以在对话框中向用户详细解释您的应用程序的作用,要求他们接受您的应用程序需要运行某些功能 才能正常工作等。

我认为,网络技术可以帮助您在不使用 ActiveX 的情况下,以非常安全的方式对 MQL5 的某些开发进行补充。
 
laplacianlab:
嗯,我认为关于 ActiveX 的评论必须做。我喜欢跨平台 EA 的想法,但网络用户必须意识到 ActiveX 可能是危险的。 话虽如此,如果您的客户信任您,您可以使用 ActiveX。您可以在对话框中向用户详细解释您的应用程序的作用,要求他们接受您的应用程序需要运行某些功能才能正常工作等。我认为,网络技术可以帮助您在不使用 ActiveX 的情况下,以非常安全的方式对 MQL5 的某些开发进行补充。



我想提醒的是,DDE/OLE/ActiveX/COM/DCOM 是微软程序间交互技术的发展。几乎所有 Windows 应用程序和服务都支持这些技术。这些技术是 .Net 的基础。

因此,完全放弃 ActiveX 技术就等于完全放弃 Windows 操作系统,进而放弃所有为 Windows 编写的程序,如 MetaTrader 终端和 MetaEditor IDE。

为了更好地解释我们讨论的主题,我将举一个生活中的例子。我们知道,病毒是通过空气中的飞沫 感染人的。为了防止感染,我们可以使用抗病毒疫苗、药片、口罩等。但我们也可以采取更彻底的方法。与您的提议类比,完全放弃 ActiveX,完全放弃空气。但是,如果从病毒的载体--空气中夺走病毒,我们就可以摧毁感染的目标--人类,那么谁还需要这种安全保障呢?)
 

关于交易、自动交易系统和测试交易策略的论坛

新闻回顾

newdigital, 2014.06.06 09:25

交易重大新闻事件的 3 个步骤 (基于dailyfx 文章)

谈话要点:

  • 新闻发布会给交易者带来压力
  • 在事件到来之前制定计划
重大新闻发布会给交易者带来压力。这种压力会体现在各种交易风格上。
也许您已经有了一个很好的进场点位,但您担心新闻发布可能会破坏您的良好进场点位。

也许您想在价格接近技术上合理的进场点时进入一个新的仓位,但您不确定技术面是否能在震荡新闻发布时保持稳定。因此,你苦恼于是现在入场还是在新闻事件发生后入场。

也许,您喜欢在新闻发布期间参与行动并启动新头寸。新闻发布期间的快节奏波动仍然会让您在下单交易时手心冒汗。

正如您所看到的,新闻事件会以各种方式给交易者带来压力。

今天,我们将介绍交易新闻事件的三个步骤。


步骤 1 - 制定策略

这听起来很简单,但新闻发布时的情绪很容易让我们偏离方向。我们看到价格快速直线上升,害怕错过机会,或者害怕失去已经坐享的收益。因此,我们会情绪化地做出决定并采取行动。

制定策略并不一定要很复杂。请记住,在新闻期间远离市场,什么都不做就是一种策略。

对于在进入新闻事件时有浮动利润的交易者来说,策略可以很简单:"我要平掉一半的仓位,并将止损位移到高于收支平衡的位置"。

对于想要启动技术性新头寸的交易者来说,他们可能会决定等到新闻发布至少 15 分钟后,再决定设置是否仍然有效。

活跃的新闻交易者可能会意识到他们需要一个买卖规则计划,因为他们的交易是基于 "感觉良好"。

第 2 步 - 使用保守的杠杆

如果您在新闻发布时入市,请确保您使用了保守的杠杆。我们不知道价格会走向何方,而在消息发布期间,价格往往会快速波动。因此,通过使用低额杠杆来降低每笔交易对您账户净值的影响。

我们对成功交易者特质的研究发现,使用少于 10 倍有效杠杆的交易者往往平均获利更多。


3 - 不要偏离策略

如果您从第一步开始就花时间思考策略,如果您已经意识到保守杠杆的重要性,那么您已经成功了 90%!然而,这最后的 10%可以说是最困难的。无论你的计划是什么,都要坚持下去!

如果我制定了一个减轻 20 磅体重的计划,其中包括吃得更健康和多做运动,但我却继续吃高脂肪和高糖分的食物,运动量也有限,那么我只会让自己陷入沮丧。

你不必因为基本的新闻发布而感到压力或沮丧。