错误、漏洞、问题 - 页 1878

 
Sergey Dzyublik:

那么这个行动的名称是什么呢?

这一行动现在还没有名字(1589+)。我认为当你理解了Warning的来历后

template <typename T>
T Func(){
  T Res;
  return(Res);
}

template <typename T>
void Func( T Value ){
  T Res = (int)Value; // implicit conversion from 'number' to 'string'
}

void OnStart()
{
  Func<string>(); 

  Func(0);
}

你会明白我们在谈论的是什么问题。

 

请在优化器日志中显示要优化的参数的范围和步骤。

同时,在代理商的日志中也有这样的字串

NS      0       14:11:00.853    Tester  756 : passed in 0:00:04.789
MJ      0       14:11:03.447    Tester  757 : passed in 0:00:02.574
RM      0       14:11:05.860    Tester  758 : passed in 0:00:02.340

伴随着相应的运行信息 - 专家顾问的名称和它的输入参数。

 
如果我们删除这里 的一行
#define  TYPETOBYTES_FULL_SLOW

则启用新的联合体,使编译时间增加一倍。

'TypeToBytes_ExampleScript.mq5' TypeToBytes_ExampleScript.mq5
'TypeToBytes.mqh'       TypeToBytes.mqh
0 error(s), 0 warning(s), compile time: 3195 msec

一个小的代码需要三秒钟,这正常吗?

同时,调试版本

0 error(s), 0 warning(s), compile time: 108 msec

被编译的速度要快30倍。

是否有可能在不启动调试本身的情况下快速编译到调试版本--只是为了自我测试?

 

我不知道怎么发生的,但结果是这样的。


 
Комбинатор:

我不知道怎么发生的,但结果是这样的。

必须 给某人写信。你必须这样做,没有其他办法)))。
 
Andrey Khatimlianskii:
必须 给某人写信。你必须这样做,没有其他办法)))。
这还不够。
 
在今天的现实中,这是否正常?
void OnStart()
{
  MqlTick Tick;
  
  Tick = (MqlTick)Tick; // cannot cast 'MqlTick' to 'MqlTick'
}
 

问候非常多!

帮助我解决一个问题。

我有这样的代码,即我们在市场评论上打开一个新的图表,并在上面画一个对象。

我看不出有什么问题,因为图表中只有很少的股票。

打开的窗口越多,下一个窗口的打开速度就越慢。

当图表打开时间达到3000ms!!!=3s 时,ChartOpen返回0,尽管图表最终被打开,但是!!!我们有一个条件--在一个新的图表中画一个对象,如果ChartOpen返回0,我们不能得到图表的ID,所以只是在其中画一个对象,尽管图表最终被打开,但是我们不知道其ID。

试图解决这个问题vasyanskim方式,愚蠢地打开睡眠4s,但仍然,与约60分,甚至它不工作。它甚至是我已经剪出的带有火鸡的附件模板,就像一开始计划的那样。

如果你是Zammenut Sleep,那么惊险、混乱和鸡奸就会更早开始。

2017.04.29 12:50:12.563 открытие множества чартов с созданием объектов (EURUSD,H1)      Чарт 131379294082473728 открывался = 2480.0
2017.04.29 12:50:12.563 открытие множества чартов с созданием объектов (EURUSD,H1)      Раз тут открылся чарт #Wheat_N7  должен нарисовать объект 
2017.04.29 12:50:12.673 открытие множества чартов с созданием объектов (EURUSD,H1)      На символе номер = 57 #Wheat_N7  создано объектов = 1
2017.04.29 12:50:12.673 открытие множества чартов с созданием объектов (EURUSD,H1)      На символе номер = 57 #Wheat_N7  на самом деле создано объектов = 1
2017.04.29 12:50:19.753 открытие множества чартов с созданием объектов (EURUSD,H1)      Не удалось открыть чарт № = 58 тикер = #AUS200  за время = 3003.0
2017.04.29 12:50:26.623 открытие множества чартов с созданием объектов (EURUSD,H1)      Чарт 131379294223977200 открывался = 2794.0
2017.04.29 12:50:26.623 открытие множества чартов с созданием объектов (EURUSD,H1)      Раз тут открылся чарт #Belgium20  должен нарисовать объект 

内存盖特终端约700MB,另有1300个空闲,即不在资源中。图表上的Kolvo条设置为5000。

Не удалось открыть чарт № = 58 тикер = #AUS200

然而,图表打开了,但它的ID是未知的。

//+------------------------------------------------------------------+
//|                                                      ProjectName |
//|                                      Copyright 2012, CompanyName |
//|                                       http://www.companyname.net |
//+------------------------------------------------------------------+
#property strict
#property script_show_inputs
input string nametemplate="zz.tpl";
input int    limit=1000;
int symopen,objquant;
double close[];
datetime time[];
string namesym;
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   ArrayInitialize(time,0);
   ArrayInitialize(close,0);
   long chart_id=ChartFirst(),chart_id_prev;
   for(int c2=0; c2<SymbolsTotal(true)-1; c2++)
     {
      int Q=0;
      objquant=0;
      chart_id_prev=chart_id;
      ArrayFree(close);
      ArrayFree(time);
      ArrayResize(close,limit);
      ArrayResize(time,limit);
      int время=CopyTime(namesym,0,1,limit,time);
      int цена=CopyClose(namesym,0,1,limit,close);
      namesym=SymbolName(c2,true);
      ulong start=GetMicrosecondCount();
      chart_id=ChartOpen(namesym,0);
      ulong finish=GetMicrosecondCount();
      Sleep(4000);
      if( chart_id==0 )
        {
         Print("Не удалось открыть чарт № = ",c2," тикер = ",namesym," за время = ",
               NormalizeDouble((finish-start)/1000,3));
         continue;
        }
      Print("Чарт ",chart_id," открывался = ",NormalizeDouble((finish-start)/1000,3));
      symopen=1;
      //      ChartApplyTemplate(chart_id,nametemplate);
      Print("Раз тут открылся чарт ",namesym," должен нарисовать объект ");
      //Sleep(100);
      ResetLastError();
      bool objcreated=ObjectCreate(chart_id,"name"+namesym+string(c2),OBJ_RECTANGLE,0,time[5],close[5],time[15],close[15]);
      if(objcreated==true) objquant++;
      else Print("Ошибка создания объекта = ",GetLastError());
      Print("На символе номер = ",c2," ",namesym," создано объектов = ",objquant);
      int total=ObjectsTotal(chart_id,0,-1);
      Print("На символе номер = ",c2," ",namesym," на самом деле создано объектов = ",total);
     }
   return;
  }

//+------------------------------------------------------------------+
 
kaus_bonus:

帮助解决一个问题。

编写GetNewChartID()。
 
fxsaber:
编写GetNewChartID()。


ChartOpen 应该返回一个新的图表ID,但它并没有这样做

你能帮我解决这个问题吗?