错误、漏洞、问题 - 页 1549

 
comp:

明白了,谢谢你。不幸的是,这个解决方案只在专家顾问中起作用(在专家顾问中,计算应该被中断)。这在指标中是行不通的,因为在图表上调用指标不会创建一个平行的图表队列,它进入的是同一个事件队列,甚至不是针对某个特定图表,而是针对这个符号的所有图表。

如何将指标作为MQ5资源而不是EX5资源?

你不能。此外,你不能试图从另一个程序编辑代码(程序文本)。
 

伙计们!有什么问题吗? 我下了一个订单

m_trade.SellLimit(1,Ask+40,_Symbol,0,0,ORDER_TIME_GTC,0," )

它正在被设定。而且......以同样的速度被删除。在EA中只有一条(已经)线!这一个!也就是说,不是我的EA删除了订单。问题是什么?

[删除]  
Karputov Vladimir:
你不能。特别是你不能试图从另一个程序编辑代码本身(程序文本)。

可以在代码中携带EX5作为一个数组。在沙盒中创建一个EX5文件,并将其作为一种资源连接。

只是为什么这么麻烦,如果你能一次性连接MQ5资源,这样做会更合理。

 
comp:

可以在代码中携带EX5作为一个数组。在沙盒中创建一个EX5文件,并将其作为一种资源连接。

只是为什么这么麻烦,如果你能一次性连接MQ5资源,做同样的事情会更合理。

把现有的规则视为理所当然,而不是要求实施自己的愿望。
[删除]  
Karputov Vladimir:
把现有的规则视为理所当然,而不是要求实施自己的愿望。
你在哪里看到需求?
 

comp:

如果有可能一次性连接MQ5资源。

而除了学术上的兴趣之外,其目的是什么?
[删除]  
o_O:
那么除了学术上的兴趣之外,目标是什么呢?

事实上,开发商已经对此做出了禁令

汇编

我可以在我的代码中把EX5作为一个数组进行。在沙盒中创建EX5文件,并将其作为资源插入。

但这不是重点,当然。我想做一个通用的IsChanged(),并通过#include连接它。

我不想带着平行度指示器EX5-文件。我不知道什么样的东西可能会被放进去。如果MQ5是一个开放源码,它有另一种态度。

[删除]  
如果在指标执行过程中,日志中从未出现 "指标太慢",是否可以说指标没有冻结?
 
comp:
如果 "指标太慢 "在指标运行期间从未出现在日志中,我们是否可以确认指标没有挂起?

没有人可以在任何地方给出100%的保证:) .如果消息队列中的指标至少能放置一些东西,在快速市场上测试它是有意义的。

已添加。如果指标至少在消息队列中放置了一些东西,那么,除了在快速市场上测试外,在终端中运行几个指标是有意义的。

[删除]  
Karputov Vladimir:

没有人可以在任何地方给出100%的保证:) .如果消息队列中的指标至少能放置一些东西,在快速市场上测试它是有意义的。

已添加。如果指标至少在消息队列中放置了一些东西,那么,除了在快速市场上测试外,在终端中运行几个指标是有意义的。

快速市场可以通过调用FullOnCalculate()来模拟。

#define  TIMESERIES(X)                                                  \
   ::ArraySetAsSeries(X, TRUE);                                        \
   Size = ::MathMin(Copy##X(::Symbol(), ::Period(), 0, bars, X), Size);  

int FullOnCalculate( const int Prev_Calculated = 0 )
{
  int Spread[];
  long RealVolume[];
  
  int Size = INT_MAX;
  
  #ifdef __MQL4__
    const int bars = ::Bars;
  #endif

  #ifdef __MQL5__
    const int bars = ::Bars(::Symbol(), ::Period());
  #endif

   TIMESERIES(Spread)
  TIMESERIES(RealVolume)
  
  #ifdef __MQL4__
    return(::OnCalculate(Size, Prev_Calculated, Time, Open, High, Low, Close, RealVolume, Volume, Spread));
  #endif
  
  #ifdef __MQL5__
    datetime Time[];
    double Open[];
    double High[];
    double Low[];
    double Close[];
    long TickVolume[];

    TIMESERIES(Time)
    TIMESERIES(Open)
    TIMESERIES(High)
    TIMESERIES(Low)
    TIMESERIES(Close)
    TIMESERIES(TickVolume)
  
    return(::OnCalculate(Size, Prev_Calculated, Time, Open, High, Low, Close, RealVolume, TickVolume, Spread));
  #endif
}

事件模型- 类似地。这个问题是关于其他方面的

comp:
如果在一个指标的执行过程中,其日志中没有 "指标太慢",我们是否可以得出结论,该指标没有冻结

在俄语教学方面的过去式。