错误、漏洞、问题 - 页 1231

 

P./S.: 我成功地从MT5的市场上下载了一个产品,而没有对我在MQL5的账户进行授权(我没有在MT4上尝试过没有授权)。

我以前不知道这种可能性。

 
meat:

坦率地说,你的论点很奇怪。那些不知道如何使用它的人,就不要使用它。你见过许多使用FileFlush的狗屁代码吗? 我没有见过任何。

几乎每个人都错误地使用了它,然后他们有 "Metatrader滞后"。这个WinAPI函数是非常慢的。

当我们进行600次构建时,我们完全重写了整个文件操作,并在通常的小口操作模式上加速了几十倍。


重新打开文件 会使代码更加困难。

但它立即让你想到了后果,不要把FileFlush放在每个tick上,然后不要对交易策略测试仪的 结果感到惊讶。

 
Renat:

几乎每个人都用错了,然后他们有 "Metatrader刹车"。

你太夸张了,也许有一些不好的编码员,但不要以偏概全。 从你的话中可以看出,好像这里的每个人都是麻木不仁的白痴。

但它立即让你想到了后果......。

雷纳特,你不会是认真的吧,看在上帝的份上!你似乎在给学生布置作业,就像可能他们会受苦,但会学会思考等("学习中的困难--战斗中的轻松")。 你把MQL定位为傻瓜的培训手册,还是程序员的工作工具? 如果是第二种,那你为什么要在车轮上放上人造棍子?

如果有人不知道或不能做某事--这是他的个人问题,让他学习。 为什么他们要为其他人减少功能?

 
meat:

你太夸张了,也许有一些不好的编码员,但不要以偏概全。 从你的话中可以看出,好像这里所有的书呆子和白痴都是这样。

雷纳特,你不会是认真的吧,看在上帝的份上!你给人的印象是你在给学生布置作业,比如让他们吃苦,但他们会学会思考等等("学习中的困难--战斗中的轻松")。 你把MQL定位为傻瓜的培训手册,还是程序员的工作工具? 如果是第二种,那么你为什么把人造的棍子放在车轮上?

如果有人不知道或不能做某事--这是他的个人问题,让他学习。 为什么他们要为其他人削减功能?

请看一下我们的论坛和kodobase。

我们不在一个学校里。我们处在一个更糟糕的地方,你有很多坏的代码,而MetaQuotes总是被先验地指责。如果你这样做,那是你的错,如果你反其道而行之,那还是你的错。

决定击败FileFlush只是因为了解到禁用它是比看着交易者放慢速度和抱怨更少的罪恶。我们不只是禁用它,我们完全重写了整个文件操作,所以它现在是一个极其有效和快速的引擎,减轻了任何错误和低效的开发者做法。我们非常努力地思考。


供参考,我没有夸大其词,因为我亲自领导我们论坛的公开讨论已经超过13年


 
crOss:
以任何专家顾问(来自MetaQuotes的例子)为例,在某一时期以相同的参数在Build 975下运行它。
获得结果,即收益率曲线图和交易表。


现在,在同一时期,以相同的参数在1010构建下运行相同的专家顾问,你会得到完全不同的结果......

P.S. Metatester是32位的。

交易分析在975构建和1010构建测试器中显示了什么?

首先要找到分歧点。比较掉期的价值。看一下交易的数量

 
由于我已经一周没有听到服务台的任何消息,我将在这里提出这个问题(MT4 745 构建):
1.我有一个指标 ,有这样的代码。
#property strict
#property indicator_chart_window
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
{
   EventSetTimer(10);
   return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start ()
{
   return 0;
}
//+------------------------------------------------------------------+

void OnTimer()
{
   ChartSetSymbolPeriod(0, _Symbol, 1);
}
2.我有一个带有此代码的专家顾问。
#include <ChartObjects\ChartObjectsTxtControls.mqh>     


CChartObjectButton *p_button1 = NULL;                              
int OnInit()
{
   p_button1 = new CChartObjectButton; 
   p_button1.Create(0, "ddd", 0, 10, 20, 30, 40); // create button
 
   return INIT_SUCCEEDED;
}

void OnDeinit(const int reason)
{
   if (p_button1 != NULL)
   {
      p_button1.Delete();
      delete p_button1;
   }
}
void OnTick(void)
{
}

3. 附上指标, 附上专家顾问
4.在使用ChartSetSymbolPeriod
5时,我们窃取图表并等待它挂起。在手动切换TF和手动切换货币对 的情况下,一切正常。但它对软件不起作用(要么是曲线释放的堆栈,要么是一些泄漏....)。


我设法解决了TF切换的问题--API再一次被证明是更可靠的
,但如何用API切换货币对?

 
ALXIMIKS:
由于服务台一周内没有反馈,我在此提出问题(MT4 745 版本)。
1.这个代码有一个指标
2.有一个专家顾问,有这个代码。

3. 上指标, 上专家
4.使用ChartSetSymbolPeriod 时,窃取图表并等待它挂起。
5.在手动切换TF和手动切换货币对 的情况下,一切正常。但它对软件不起作用(要么是曲线释放的堆栈,要么是一些泄漏....)。


我设法用TF切换来解决这个问题--API又一次被证明是更可靠的。
但如何通过API将货币对切换到所需的货币对?

你的申请并没有丢失。

我们一定会回答你。

 
谁能澄清一下:在过去的几天里,我的等级(资料)在下降。这是一个新的功能,只是在网站算法上做了一些调整,还是其他什么?
 
Renat:

请看一下我们的论坛和kodobaza。

我们不在一个学校里。我们处在一个更糟糕的地方,那里有很多糟糕的代码,而且MetaQuotes 总是先验地指责一切。如果你这样做,那是你的错;如果你反其道而行之,那还是你的错。

你有没有想过,也许你自己要对传播这个故事负责? 所以,事实证明,你先验地责备自己。一些新手向你抱怨,说那里的东西不能用,而你没有礼貌地向他们解释或让他们去研究事实,而是在他们的脚下屈服,重新制作你的产品以满足他们的无知。这就是它的运作方式,不是吗? 最后,产品的质量受到影响,而这些人也没有学到什么。

如果我们谈论的是一个交易平台,我理解。但我们谈论的是一种灵活性很重要的编程语言。 而你拿走了这种灵活性。 你自己是一个程序员,可能明白没有通用的解决方案。 你所谓的有效机制只适用于某些特定的情况,在其他情况下绝对是无用的。一个需要每10秒向磁盘转储一次数据,另一个需要每10MB转储一次,第三个需要每隔一段时间转储 一次(是的,是的,有这种需要,如果信息非常重要)。再说一遍,如果一个人错误地使用某样东西--那是他的个人问题,没有必要放纵他的无知而屈从于它。

我没有白费力气,我有一段代码,FileFlush会定期向磁盘转储信息。而且我最近注意到,虽然我保存的数据量为30-40Mb,但没有任何数据被转储。 最后,当终端崩溃时(这并不是一种罕见的情况),所有的东西都丢失了。 而你甚至懒得至少警告我们一下。 如果任何功能可以随时停止工作,这彻底破坏了对MQL的信任。

 
meat:

你有没有想过,你可能是促成这个故事传播的人? 所以,事实证明,你先验地认为自己有错。一些新手向你抱怨,说那里的东西不能用,而你没有礼貌地向他们解释或让他们去研究事实,而是在他们的脚下屈服,重新制作你的产品以满足他们的无知。这就是它的运作方式,不是吗? 最后,产品的质量受到影响,而这些人什么也没学到。

我们不断地思考,而且足够深入。因此,我们做出这样的决定是为了让大家少犯错误。


如果我们谈论的是一个交易平台,我理解。但我们谈论的是一种灵活性很重要的编程语言。 而你拿走了这种灵活性。 你自己是一个程序员,可能明白没有通用的解决方案。 你所谓的有效机制只适用于某些特定的情况,在其他情况下绝对是无用的。一个需要每10秒向磁盘转储一次数据,另一个需要每10MB转储一次,第三个需要每隔一段时间转储一次(是的,是的,有这种需要,如果信息非常重要)。再说一遍,如果一个人错误地使用某样东西--那是他的个人问题,没有必要放纵他的无知而屈服于它。

让你为我们回应,所以在我们的论坛上 "这些是你的个人问题"。让我们看看在他们告诉你如何做生意以及为什么你是错的之前,你要忍受多少个小时。


我没有白费力气,我有一个代码,其中FileFlush定期向磁盘转储信息。最近我注意到,虽然收集的数据量为30-40Mb,但没有任何数据被转储。 结果,当终端崩溃时(这并不是一个罕见的事件),所有的东西都丢失了。 而你甚至懒得至少警告我们这一点。 如果任何功能可以随时停止工作,这将彻底破坏对MQL的信任。

我在上面指出,我们的首要任务是有效地工作,最大限度地提高我们平台的性能,而不是在一边工作。这主要适用于所有的文件操作:日志、数据库和专家文件。

如果你如此热衷于用开放的(而这本身已经是一个严重的问题)文件进行外部工作,那么就采取行动吧。

不需要撞墙--这个决定是有意识的,不会被改变。

原因: