错误、漏洞、问题 - 页 306

 
Jager:
如果各地的构建都是一样的,也可以尝试删除tester\Agent-x.x.x.x-xxxxx\bases文件夹(在远程代理和本地代理上)。如果我在MQ报价上进行优化,下一个在A-ri报价上进行优化,它对我是有效的--有时远程代理也不想启动。
 
notused:
如果各地的构建都是一样的,试着把tester\Agent-x.x.x.x-xxxxx\bases文件夹(在远程代理和本地代理上)也删除。对我来说,如果我在MQ报价上运行优化,并在A-ri报价上运行下一个,它就能发挥作用--有时远程代理也不想运行。
如果有几十个代理在不同的电脑上,这是不现实的。它应该在没有外部干扰的情况下工作。
 

自动替换 "uint "而不是 "int "的for片段 是一种浪费时间的做法。初学者经常上当受骗。

for (uint i = 0; i < SomeObject.Count - 1; i++)

uint可以是任何无符号的整数

 
由于某些原因,很多时候,在优化器完成其工作后,在"优化结果"选项卡中,上下文菜单栏 "运行单个测试 "没有激活,相应地,左键点击通过线也不会启动。
 

今天我意识到,使EA参数动态化

而且不可能将专家顾问和指标合二为一。

...在一起。

有什么办法吗?

 
Im_hungry:

我今天意识到,在EA中不可能使EA参数动态化,也不可能将EA与指标合二为一。根本就没有办法?

你最好不要描述你的结论,而是描述你要实现的目标和目的。

 
Yedelkin:

你最好描述一下,不是你的结论,而是你要实现的目的和目标。

当然,这都是正确的。任务是这样的。

使指标参数动态化,当你关闭头寸

我们改变一个指标参数,那就是任务。

以下是我的解决方案。

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   vhandle=iCustom(NULL,0,"МТ5"); 
   if(vhandle<0)
     {
      Alert("Ошибка при создании индикаторов: ",GetLastError());
      return(-1);
     }
   return(0);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   IndicatorRelease(vhandle);
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
{ 
   if (isNewBar()==true)
     {
     ArraySetAsSeries(Sp1Buffer,true);
     ArraySetAsSeries(Sp2Buffer,true);
//----------------------
     vhandle=iCustom(NULL,0,"МТ5",Symbol1,100,Lots,Close());
     if(vhandle<0)
       {
        Alert("Ошибка при создании индиката: ",GetLastError());
       }
     if(CopyBuffer(vhandle,0,0,50,Sp1Buffer)<0 || CopyBuffer(vhandle,1,0,50,Sp2Buffer)<0)
       {
        Alert("Ошибка копирования буферов индикатора номер ошибки:",GetLastError());
       }
     }    
}
//+==================================================================+
int Close()
{
...
}


我可以说这段代码是有效的,因为测试显示了不同的结果,但这并不清楚

但很难理解为什么它的效果这么差。

它冻结了,并在缓冲区内给出了相同的数值,尽管这是不可能的(2周内有相同的数值

如果不循环,它就会写出错误。

通过警报的信息

Ошибка копирования буферов индикатора номер
 

远程代理已停止更新。

2011.02.19 21:15:01     Tester  tester agent VPN  20 lvlaxim is failed
2011.02.19 21:15:01     VPN  20 lvlaxim connect closed
2011.02.19 21:15:01     Tester  tester agent VPN  20 lvlaxim cannot synchronized
2011.02.19 21:14:00     VPN  20 lvlaxim Old build 392 of Tester Agent. Attempt to update.
2011.02.19 21:14:00     VPN  20 lvlaxim authorized (agent build 392)
2011.02.19 21:13:59     VPN  20 lvlaxim connected

2011.02.19 19:08:29     VPN  20 lvlaxim connect closed
2011.02.19 19:08:29     Tester  tester agent VPN  20 lvlaxim cannot synchronized
2011.02.19 19:07:28     VPN  20 lvlaxim Old build 392 of Tester Agent. Attempt to update.
2011.02.19 19:07:28     VPN  20 lvlaxim authorized (agent build 392)
 
Voodoo_King:

建立401。

1) 似乎MT5用户永远不会等待开发人员在测试器表格上添加一个开关,并且

写一行带有if条件的代码...以避免在每次运行时打开可视化窗口

尽管这个主题中的许多用户在许多年前就要求这样做了。

2) 请恢复全尺寸测试器窗口中剩余优化时间的计算输出(如MT4中那样)。

我完全支持它--也许是在servicedesk?(关闭它一百次)。
 
notused:

自动替换 "uint "而不是 "int "的片段是一种浪费。新来的人经常上当受骗。

uint可以是任何无符号的整数

谢谢