在MQL5中一起学习和写作 - 页 3

 
FlyAgaric   :

"在我看来,这很简单......"。

使用免费的MS Visual Studio(或任何类似的)作为开发环境。

我们将发布标准的 "适配器 "mql5.exe,以便能够从其他IDE中进行编译。然而,调试只能从MetaEditor中进行。

然而,我个人怀疑使用其他IDE的MQL5代码是否有任何意义。

MetaEditor将被进一步改进,也将直接与MQL5.com及其代码库整合。

而MQL4(MQL5)将作为一个库使用其中一种语言(VB、C++和C#)来实现。后者。

在我看来,这是最有表现力的一个。现在你有了一个经过调试和时间检验的开发环境

具有所有必要的属性。而编译后的代码最适合于Windows。

如果你想写出尽可能快的代码,你可以制作自己的DLL并从MQL5中调用它们。

根据作者的说法,在MQL5中,一切都将以4-20倍的速度运行。没有注意到。一个简单的指标

经过一些小改动的移动平均线比MQL4中的慢得多。

我已经给出了我的意见,如果它冒犯了任何人--请原谅我。

MQL5事实上比MQL4快很多倍,尽管在发布之前,代码优化 被禁用。

一旦我们接近系统的发布,我们将公布开源的性能测试,以便任何人都可以检查和确定。
 
Renat :


如果你想写出最快的代码,你可以制作你自己的DLLs并从MQL5中调用它们。


MQL5确实比MQL4快了许多倍,尽管在发布之前,代码优化被禁用。


一旦我们接近系统发布,我们将发布带有来源的公开性能测试,这样任何人都可以检查和确定。

谢谢你的关注。我不认为有人会在休息日阅读它。

雷纳特,这些是我的想法,大声说出来。如果你所想的一切都能顺利完成,我会非常高兴。

至于DLL的使用,我在MT4或MT5中无法得到。我用C++和C#写了它。

祝贺即将到来的假期,祝愿MetaQuotes软件公司好运。

 
FlyAgaric   :

至于使用DLL,我在MT4和MT5中都没能抢到它。我当时用C++和C#写作。

祝贺MetaQuotes软件公司在即将到来的假期中取得好成绩。

将修剪过的DLL项目 与ZIP档案中的源文件直接附在论坛上--它们肯定会有帮助。

谢谢你的祝贺!

 

大家好!

帮助我,伙计们。

我需要得到快报中最后一句话的时间。也许有一个简单的方法可以做到这一点?

到目前为止,我正在这样做。

      err=0;
      do
        {
         rates_total=CopyTime(NULL,PERIOD_CURRENT,0,1,iTime);
         err++;
        }
      while(rates_total<=0 && err<QUANTITY_OF_ATTEMPTS);
      if(err>=QUANTITY_OF_ATTEMPTS)
        {
         cur_time=TimeCurrent();
        }
      else
        {
         cur_time=iTime[0];
        } 

是否有更简单的方法?

Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте - Документация по MQL5
 
vdv2001   :

大家好!

帮助我,伙计们。

我需要得到快报中最后一句话的时间。也许有一个简单的方法可以做到这一点?

到目前为止,我正在这样做。

是否有更简单的方法?

当前价格结构图
 

下午好。

我的专家顾问正在计算M1的市场概况,当我把它放在图表上时,一切都很正常,但如果我关掉终端,几个小时后再打开,就会出现错误,专家顾问崩溃了。

我怀疑这是因为交换历史,初始化函数在更新的数据被加载之前运行(主要计算在初始化时进行),因此它崩溃了。

我有一个问题,我怎样才能从Init中确定工具数据已经完全加载?当我检查终端是否连接到服务器时,并不总是有帮助,也就是说,如果 "新鲜 "的数据不是太多,则工作正常,如果是几天,则崩溃出错或不计算最后几天的数据。

你能告诉我如何提高所有数据是最新的标志吗?

Инструмент «Ценовая гистограмма» (Рыночный профиль) и его реализация на MQL5
Инструмент «Ценовая гистограмма» (Рыночный профиль) и его реализация на MQL5
  • 2010.01.26
  • Dmitry
  • www.mql5.com
Рыночный профиль был разработан Питером Стидлмайером (Peter Steidlmayer), который предложил использовать альтернативное представление информации как о горизонтальном, так и о вертикальном движении рынка, что дает полностью отличный набор моделей. Он предположил, что у рынка существует основной рыночный пульс, или фундаментальная модель, которая называется цикл равновесия и неравновесия (cycle of equilibrium and disequilibrium). В данной статье я сделаю попытку дать общие понятия об упрощенной модели Рыночного профиля (Market Profile) – Ценовой Гистограмме (Price Histogram) и расскажу, как реализовал данный инструмент на MQL5.
 
vdv2001   :

下午好。

我的专家顾问正在计算M1的市场概况,当我把它放在图表上时,一切都很正常,但如果我关掉终端,几个小时后再打开,就会出现错误,专家顾问崩溃了。

我怀疑这是因为交换历史,初始化函数在更新的数据被加载之前运行(主要计算在初始化时进行),因此它崩溃了。

我有一个问题,我怎样才能从Init中确定工具数据已经完全加载?当我检查终端是否连接到服务器时,并不总是有帮助,也就是说,如果 "新鲜 "的数据不是太多,则工作正常,如果是几天,则崩溃出错或不计算最后几天的数据。

你能告诉我如何提高所有数据已更新的标志吗?

把对历史的初始化从OnInit()移到OnTick()(你必须检查代码只执行一次),所有分页的问题都会消失。

 
 
alsu   :

把对历史的初始化从OnInit()移到OnTick()(代码应该被检查到只执行一次),所有分页的问题都会消失。

一个问题已经消失了,但在将计算转移到OnTick()之后,又出现了另一个问题--目前不工作的市场有一个空图表,OnTick()函数 没有被调用。

 
Rosh   :
另见组织数据访问


谢谢你用这种方式解决这个问题。

int OnInit()
  {
//---
   while(!(bool)SeriesInfoInteger(Symbol(),0,SERIES_SYNCRONIZED))
     {
      Sleep(20);
     }
   if(ExtExpert.Init())
      return(0);
   else
      return(-1);
  }