错误、漏洞、问题 - 页 761

 

一个服务值需要在一个类中持有。我在私人部门申报。我在类的构造函数 中初始化了它。一切都很好。

这里有一个微妙的问题。这个值实际上是一个常数--它在程序的整个生命周期内都不会改变。

当把它附在声明 "const "上时,编译器对试图在构造函数中修改它(初始化它)的行为发誓。直接在声明块中初始化也会导致编译错误。

如何在一个类中声明和初始化一个常量?

Документация по MQL5: Основы языка / Типы данных / Структуры и классы
Документация по MQL5: Основы языка / Типы данных / Структуры и классы
  • www.mql5.com
Основы языка / Типы данных / Структуры и классы - Документация по MQL5
 
voix_kas:

一个服务值需要在一个类中持有。我在私人部门申报。我在类的构造函数 中初始化了它。一切都很好。

这里有一个微妙的问题。这个值实际上是一个常数--它在程序的整个生命周期内都不会改变。

当把它附在声明 "const "上时,编译器对试图在构造函数中修改它(初始化它)的行为发誓。直接在声明块中初始化也会导致编译错误。

如何在一个类中声明和初始化一个常量?

class MyClass
  {
public:
           MyClass(void): i(777), s("my string") {}
          ~MyClass(void) {}
private:
    const int    i;
    const string s;
  };
 
是某种错误,还是从今天起MetaQuotes模拟服务器上有5点的点差?这种变化的原因是什么?还有,为什么订单下得这么歪歪扭扭?
 

你好!

我有一个问题:我知道MetaTrader 5不允许导入 其报价,但有没有计划中的导入报价的软件工具?例如,正如在Wealth Lab 6.3中所做的那样:在他们的网站上,你可以下载各种扩展,可以用来将报价上传到终端。例如,你可以从雅虎财经、谷歌财经下载免费报价,从finam.com下载俄罗斯股票的报价,等等。这意味着,你甚至不需要连接到你的交易账户!

这将是非常方便的。另外,如果能创建一个连接Quik程序的连接器,为股票市场创建机器人,那将是超级的。

就我个人而言,我对MetaQuotes团队深表敬意,我非常高兴地使用他们的终端,我深深相信Meta Trader有一个伟大的未来。

然而,让我留在Wealth Lab的唯一事情是可以导入我的报价。我想从事股票、期货合约、市场...什么时候能完成?

p.s. MetaQuotes,看着你所有的最新更新,无论是终端还是网站,我想真诚地感谢你,并祝你成功!感谢你们提供优秀的MetaTrader 5软件。

 

等到MT5在股票经纪公司推出后,整个报价历史就会正常了。

我们不允许第三方导入 其他人的数据,因为这将完全打破 "数据始终可访问、始终正确、始终同步、具有所有正确设置等 "的机制。

我们有一个如此复杂和自动化的系统,积极地与远程代理、可视化器、云代理等一起工作,使其过载是没有意义的。

我们的目标是简单化和自动化。看看MetaTrader 5是如何发展的。在它里面,几乎所有的事情都是自动完成的,有最低限度的设置,所有的数据都是可用的--你只要有时间按下 "开始 "按钮。

 

我明白了,你们专业人士最了解情况。我们将等待。

你们计划什么时候至少演示访问RTS、MICEX和其他交易所的报价和赌注?是否已经有这样的经纪人?

 
Renat:
关于不存在的引号:请在你的代码中提供一个可重复的例子。你的代码中一定有一个错误。

这里有一个CopyOpen()和SeriesInfoInteger() 函数的绝对歪曲操作的例子。

使用的代码。

   string symbol="USDHKD";
   datetime date=D'02.05.12 00:00'; 
   double Arr[];
   Print("SYMBOL: ",symbol);
   Print("SERIES SYNCRONIZED: ",(bool)SeriesInfoInteger(symbol,Period(),SERIES_SYNCRONIZED));
   Print("LAST BAR DATE: ",TimeToString(SeriesInfoInteger(symbol,Period(),SERIES_LASTBAR_DATE)));
   Print("WORK BAR DATE: ",date);
   int i=CopyOpen(symbol,Period(),date,1,Arr);
   Print("COPYOPEN RESULT: ",i);
   if(i>0){Print("OPEN VALUE: ",Arr[0]);}else{Print("OPEN VALUE: UNKNOWN");}

获得的结果。

2012.07.02 22:44:33     Ind (EURUSD,D1) OPEN VALUE: 7.787
2012.07.02 22:44:33     Ind (EURUSD,D1) COPYOPEN RESULT: 1
2012.07.02 22:44:33     Ind (EURUSD,D1) WORK BAR DATE: 2012.05.02 00:00:00
2012.07.02 22:44:33     Ind (EURUSD,D1) LAST BAR DATE: 2011.09.02 00:00
2012.07.02 22:44:33     Ind (EURUSD,D1) SERIES SYNCRONIZED: true
2012.07.02 22:44:33     Ind (EURUSD,D1) SYMBOL: USDHKD

2012.07.02 22:45:57     Ind (EURUSD,W1) OPEN VALUE: 7.79515
2012.07.02 22:45:57     Ind (EURUSD,W1) COPYOPEN RESULT: 1
2012.07.02 22:45:57     Ind (EURUSD,W1) WORK BAR DATE: 2012.05.02 00:00:00
2012.07.02 22:45:57     Ind (EURUSD,W1) LAST BAR DATE: 1970.01.01 00:00
2012.07.02 22:45:57     Ind (EURUSD,W1) SERIES SYNCRONIZED: true
2012.07.02 22:45:57     Ind (EURUSD,W1) SYMBOL: USDHKD

Build 655; MQ服务器。

附加的文件:
Ind.mq5  2 kb
 
如果我没有理解错的话,你不喜欢2012年5月2日星期三下午的开盘价要求与包括5月2日在内的每周的开盘价不一样?

所以你不明白周三下午酒吧的开盘价和4月30日星期一开始的每周开盘价 之间的区别?
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
 
Renat:

看看LAST BAR DATE 的值 根据SeriesInfoInteger(),在指定的工具中没有2012年5月或4月的历史记录

而CopyOpen()并没有出现错误。

 
我到我的电脑前看看。

同时,你可以复制日期而不是开盘价,并根据要求查看哪一个日期栏被发出。
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5