MT5和速度在行动 - 页 76

 
Renat Fatkhullin:

去研究这个问题吧(至少10年),不要在这个问题上乱扔垃圾,拜托。

我们在这里讨论的是不同训练和不同阶层的问题。

亲爱的开发者伙伴们,他们为研究所讨论的主题付出了半生的努力。

请回答一个简单的用户问题。

如果一个终端有99个专家顾问,怎么会工作得更快,消耗的资源更少?

1.在同一个符号上

-使用OnTick并通过SymbolInfoTick获取当前价格

-使用OnBookEvent并通过MarketBookGet获得当前价格

2.相同的,但在不同的符号上

谢谢你!
Документация по MQL5: Константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Приказы на проведение торговых операций оформляются ордерами. Каждый ордер имеет множество свойств для чтения, информацию по ним можно получать с помощью функций Идентификатор позиции, который ставится на ордере при его исполнении. Каждый исполненный ордер порождает сделку, которая открывает новую или изменяет уже существующую позицию...
 
Dmi3:

亲爱的开发者伙伴们,他们为研究所讨论的主题付出了半生的努力。

请回答一个简单的用户问题。

如果终端中有99个专家顾问,如何更快地工作并消耗更少的资源?

1.在同一个符号上

-使用OnTick并通过SymbolInfoTick获取当前价格

-使用OnBookEvent并通过MarketBookGet获得当前价格

2.相同的,但在不同的符号上。

谢谢你!

你怎么会认为这是一个简单的问题呢?

亲爱的同事,如果你是一名开发人员,你必须自己检查一切。或者你可以订购一份自由职业者的调查报告,其中包括所有输入数据的完整和详细描述。

 
Dmi3:

如果终端有99个EA,怎么会工作得更快,消耗的资源更少。

2.相同的,但在不同的符号上

99台滚揉机进行广播,流量不小。

 
fxsaber:

99个眼镜的广播不是一个简单的流。

事实上,我们在Forts上有大约一打活的,其余的都是不流动的。
 
Dmi3:
事实上,我们在Forts上有大约一打活的,其余的都是不流动的。

在各种配置中运行这个顾问,看看结果。

 
fxsaber:

在不同的配置下运行这个EA,看看结果。

让我们看看结果(Bild 2650, Open, Real)。

2020.11.09 20:12:22.910 11_test (Si-12.20,M1)   Alert: OnTick-lag! - 291655 mcs.
2020.11.09 20:12:22.910 11_test (Si-12.20,M1)        [bid]  [ask] [onTick] [Interval]
2020.11.09 20:12:22.910 11_test (Si-12.20,M1)   [0]  76595  76598    false        696
2020.11.09 20:12:22.910 11_test (Si-12.20,M1)   [1]  76596  76598     true     150488
2020.11.09 20:12:22.910 11_test (Si-12.20,M1)   [2]  76596  76598    false        323
2020.11.09 20:12:22.910 11_test (Si-12.20,M1)   [3]  76596  76598     true     291655
2020.11.09 20:12:23.290 11_test (Si-12.20,M1)   Alert: OnTick-lag! - 25571 mcs.
2020.11.09 20:12:23.290 11_test (Si-12.20,M1)        [bid]  [ask] [onTick] [Interval]
2020.11.09 20:12:23.290 11_test (Si-12.20,M1)   [0]  76595  76598    false        663
2020.11.09 20:12:23.290 11_test (Si-12.20,M1)   [1]  76595  76597     true      97445
2020.11.09 20:12:23.290 11_test (Si-12.20,M1)   [2]  76595  76597    false        334
2020.11.09 20:12:23.290 11_test (Si-12.20,M1)   [3]  76595  76597     true      25571
2020.11.09 20:12:23.920 11_test (Si-12.20,M1)   Alert: OnTick-lag! - 209232 mcs.
2020.11.09 20:12:23.920 11_test (Si-12.20,M1)        [bid]  [ask] [onTick] [Interval]
2020.11.09 20:12:23.920 11_test (Si-12.20,M1)   [0]  76593  76596    false        659
2020.11.09 20:12:23.920 11_test (Si-12.20,M1)   [1]  76594  76596     true      33395
2020.11.09 20:12:23.920 11_test (Si-12.20,M1)   [2]  76594  76596    false        343
2020.11.09 20:12:23.920 11_test (Si-12.20,M1)   [3]  76594  76596     true     209232
2020.11.09 20:12:24.572 11_test (Si-12.20,M1)   Alert: OnTick-lag! - 31365 mcs.
2020.11.09 20:12:24.572 11_test (Si-12.20,M1)        [bid]  [ask] [onTick] [Interval]
2020.11.09 20:12:24.572 11_test (Si-12.20,M1)   [0]  76594  76597    false        342
2020.11.09 20:12:24.572 11_test (Si-12.20,M1)   [1]  76594  76596     true      66980
2020.11.09 20:12:24.572 11_test (Si-12.20,M1)   [2]  76594  76596    false        662
2020.11.09 20:12:24.572 11_test (Si-12.20,M1)   [3]  76594  76596     true      31365
2020.11.09 20:12:25.137 11_test (Si-12.20,M1)   Alert: OnTick-lag! - 340874 mcs.
2020.11.09 20:12:25.137 11_test (Si-12.20,M1)        [bid]  [ask] [onTick] [Interval]
2020.11.09 20:12:25.137 11_test (Si-12.20,M1)   [0]  76591  76593     true       6635
2020.11.09 20:12:25.137 11_test (Si-12.20,M1)   [1]  76591  76593     true          5
2020.11.09 20:12:25.137 11_test (Si-12.20,M1)   [2]  76591  76593    false        654
2020.11.09 20:12:25.137 11_test (Si-12.20,M1)   [3]  76591  76593     true     340874
 
prostotrader:

请看结果 (Bild 2650, Open, Real)

这是一个不正确的比较(打印结果显示),因为如果有翻板存在,代码应该是不同的。

 
fxsaber:

这是一个不正确的比较(你可以在打印输出上看到),因为如果有鳍,代码应该是不同的。

这是你的程序(没有改变任何东西) :)

添加

// Возвращает bid/ask-цены из стакана.
bool GetCurrentPrices( double &bid, double &ask )
{
  MqlBookInfo Bands[];

  const bool Res = MarketBookGet(_Symbol, Bands);

  if (Res)
    for (int i = ArraySize(Bands) - 2; i >= 0; i--)
      if (Bands[i].type == BOOK_TYPE_SELL)
      {
        ask = Bands[i].price;
        bid = Bands[i + 1].price;
        
        break;
      }
  
  return(Res);
}

功能不正确,因为

1.杯子可以是空的

2.杯子里没有卖出的报价

3.杯中不含买引号

 
prostotrader:

一个不正确的函数,因为

你为什么要让自己成为一个讨厌的人呢?仍然没有错误处理 或任何东西。这个代码的目的不是为了在EA中,而是为了表明有一个问题。

prostotrader:

这是你的程序(我没有改变任何东西):)。

因此,我非常了解这个程序的逻辑,以至于我可以在FORTS上断言其结果的不正确性。

 
fxsaber:

你为什么要让自己成为一个讨厌的人呢?那里还没有错误处理或任何东西。这段代码的目的不是为了在战斗的专家顾问中,而是为了显示问题的存在。

这就是为什么我非常了解这个程序的逻辑,我可以说它的结果在FORTS上是不正确的。

好的