程序库: MT4Orders - 页 2

 
Dmitry Fedoseev:

已检测到一些处理历史记录的基本方法:

每次调用 OrdersHistoryTotal() 时,都会对账户的整个历史记录进行大量检查。

在历史记录中按索引进行选择与在整个历史记录中慢跑是一样的。

这不是初级功能,但不幸的是,这是必须的。

德米特里-费多谢耶夫Dmitry Fedoseev):
与历史工作有关的测试有哪些?

我就不一一介绍了,有很多。在各种人为情况下对历史记录进行了测试,在 MT4-advisors 执行过程中也对历史记录进行了测试。

if (MQLInfoInteger(MQL_VISUAL_MODE))
    Comment("Trade:" + OrdersToString() + "\nHistory:" + OrdersToString(MODE_HISTORY)); // 在测试仪的可视模式下,您可以看到
 

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

智能交易系统: Spreader

fxsaber, 2016.09.03 11:18 AM.

您可以在 MT5 测试器中查看。

// 这是一个 MT5 顾问,可让您运行相应的
// MT4-advisor 在 MT5(套期保值)多货币测试仪中(使用真实刻度线)

//https://www.mql5.com/zh/code/16006
#include <MT4Orders.mqh>
#include <MQL4_to_MQL5.mqh>

//#include "Spreader_v1.mq4" //https://www.mql5.com/zh/code/9484
#include "Spreader_v2.mq4" //https://www.mql5.com/zh/code/9495

void OnTick()
{
  start();
}

欧元兑美元 M1 OHLC 模式下默认设置下的多货币回溯测试结果

报告文件中的详细信息。


 
您好!能否给我一个关于如何在 MT5 平台上测试 MT4 Expert Advisor 的逐步说明或视频?
 
Nauris Zukas:
您好!能给我一个如何在 MT5 平台上测试 MT4 Expert Advisor 的逐步说明或视频吗?

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

翻译困难:)

Alexey Volchanskiy, 2016.09.05 14:05

我将在我的YouTube博客上制作一个关于从MQL4翻译到MQL5的视频。

 

Автор создавал такую возможность для себя, поэтому намеренно не проводил подобную же идею перехода "одной строкой" для таймсерий, графических объектов, индикаторов и т.д.

这项工作 影响授权令系统。

粗体部分

MQL's OOP notes: Converting MetaTrader 4 indicators to MetaTrader 5
MQL's OOP notes: Converting MetaTrader 4 indicators to MetaTrader 5
  • 2016.09.28
  • //www.mql5.com/en/users/marketeer">
  • www.mql5.com
It has been a long time since MetaTrader 5 was released, but MQL products for MetaTrader 4 do still prevail on mql5.com site (both in the codebase, and in the market), and in the Internet in general....
 

这就是我的发现。OrderSelect 在代码中不起作用。MT4 Ask 终端变量如何?是否无法以任何方式模拟?

#include <mt4orders.mqh>

void OnStart()
{
    MqlTick last_tick;
    SymbolInfoTick(Symbol(),last_tick);
    double Ask = last_tick.ask;
    int ticket = OrderSend(Symbol(), OP_BUY, 0.1, Ask, 10, 0, 0);
    if(ticket > 0)
        if(OrderSelect(ticket, SELECT_BY_TICKET))//没有选择,尽管仓位已打开,票据 = 28912052。在终端的 "交易 "选项卡中票据 = 38631303
        {
            double price = OrderOpenPrice();
            Print("price = ", DoubleToString(price, Digits()));
        }
}

入场券


 
Alexey Volchanskiy:

以下是我的发现。OrderSelect 在代码中不起作用。

是的,OrderSend 返回的不是仓位,而是订单/交易。这是该程序库仅在离线测试仪上编写和测试的结果。

我想反正也没人用它,所以就没有发布修正版(我很久以前就修正过了)。出于同样的原因,我也没有发布可以在交易所使用的变量。

MT4 Ask 终端变量如何?没有以任何方式模拟它吗?

所有与订单语言系统无关的内容都被单独放置。
#include <MQL4_to_MQL5.mqh>
ZЫ 我已将更正后的版本发送至您的 PM。
 
fxsaber:

更正后的版本已发送给 PM。


为什么不更新出版物呢?每个人都需要。

 
Stanislav Korotky:

为什么不更新出版物?每个人都应该更新。

遗憾的是,kodobase 中出版物的更新并不像我们希望的那样频繁(有节制)。

 
Stanislav Korotky:

你为什么不更新出版物?每个人都需要 它。

否则fxsaber 就会因为只有我一个人注意到这个错误而不高兴,所以大家都不需要图书馆 ))只是我们的人很善于观察。

生活中的一则轶事--我在主持网络研讨会时,重复了 10 次录音。最后我再说一遍,明天就会录制,如果你们有问题,就问吧。现在猜猜第一个问题 ))))