错误、漏洞、问题 - 页 621 1...614615616617618619620621622623624625626627628...3184 新评论 Alexey 2012.01.15 14:38 #6201 sergey1294: 首先你除以整数,所以你得到的是一个整数,请阅读类型转换 https://www.mql5.com/ru/docs/basis/types/casting 的确如此,但以前不是这样的。我甚至懒得理会。 Mykola Demko 2012.01.15 15:41 #6202 ivandurak: 确实如此,但之前不是这样的。我甚至懒得理会。因为在5中,它从一开始就是这样,并将永远是这样(1/2=0;1./2.=0.5)。如果你想明确地指定重复的内容,则要添加一个点。// Script program start function void OnStart() { int i; double a,b ; for(i=0;i<10;i++) { a=1./2.; b=1./2.; Print("a=",a," ","b=",b) ; } } Renat Fatkhullin 2012.01.15 15:46 #6203 Urain:以前是以四为单位吗? 因为从一开始就是以五为单位。如果你想明确地指定重复,请添加句号。在第四和第五章中都没有出现过这种情况。 整数运算(甚至以纯整数常数的形式)是毫不含糊的。 Sergey Molotkov 2012.01.16 09:00 #6204 我遇到了一个测试者和模拟账户之间的差异。在成功的交易操作 后,价格字段在交易服务器的响应结构中被不同地填写。在模拟账户中,价格字段一切如常--交易的价格,在测试器中这个字段保持为0。为了测试,我画了一个专家顾问的草图,它买入每个tick并在日志中显示返回代码和价格。//+------------------------------------------------------------------+ //| test-expert.mq5 | //| Copyright 2012, MetaQuotes Software Corp. | //| http://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2012, MetaQuotes Software Corp." #property link "http://www.mql5.com" #property version "1.00" //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { return(0); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { MqlTradeRequest trade_request; MqlTradeResult trade_result; ZeroMemory(trade_request); ZeroMemory(trade_result); trade_request.action=TRADE_ACTION_DEAL; trade_request.volume=0.1; trade_request.type=ORDER_TYPE_BUY; trade_request.price=SymbolInfoDouble(_Symbol,SYMBOL_ASK); trade_request.symbol=_Symbol; OrderSend(trade_request,trade_result); Print(trade_result.retcode, "купили по цене ",trade_result.price); } //+------------------------------------------------------------------+ 当我在一个模拟账户上运行它时,日志中包含以下字符串。2012.01.16 12:48:29 test-expert (EURUSD,H1) 10009 在1.266买入而当在visualizer中运行这些:2012.01.16 12:49:12 2011.12.30 00:00:11 10009 以0.0的价格买入。告诉我这是一个错误,一个错误,还是我做错了什么? Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Типы торговых операций www.mql5.com Стандартные константы, перечисления и структуры / Торговые константы / Типы торговых операций - Документация по MQL5 Alexey 2012.01.16 15:31 #6205 有什么办法可以控制测试仪中的前史。从2011年1月1日到今天,1小时的测试只加载了6000条。在设置中是--最大条数无限制。历史记录都是从1971年的一分钟内加载的。 Dmitriy Skub 2012.01.20 09:57 #6206 这个问题的出现是出乎意料的。当在专家顾问中通过iCustom 加载一个指标时,该指标被加载并正常工作--唯一的问题是它的OnTimer 函数没有被调用。它应该是这样的,还是一个错误?同样的指标只是附在图表上,工作正常。574号建筑。 Anton 2012.01.20 10:55 #6207 Dima_S:这个问题的出现是出乎意料的。当在专家顾问中通过iCustom 加载一个指标时,该指标被加载并正常工作--唯一的问题是它的OnTimer 函数没有被调用。它应该是这样的,还是一个错误? 它是这样设计的。 Dmitriy Skub 2012.01.20 11:09 #6208 antt: 这就是它的意义所在。 非常有创意) Rashid Umarov 2012.01.20 11:17 #6209 Dima_S: 非常有创意)计时器事件是为图形产生的,并从那里到运行在它上面的程序(扔在它上面)。这就是意识形态--程序执行。客户端将生成的事件发送到相应的开放图表中。另外,事件可以由图表(图表事件)或mql5-程序(自定义事件)产生。通过设置图表的CHART_EVENT_OBJECT_CREATE 和CHART_EVENT_OBJECT_DELETE 属性,可以启用或禁用图表上创建和删除图形对象事件的生成。每个mql5程序和每个图表都有自己的事件队列,所有的新事件都存储在这里。 该程序只接收来自它所运行的图表的事件。所有的事件都按照收到的顺序一个接一个地处理。 因此,从专家顾问中调用的指标不会接收定时器事件。试着用专家顾问的ChartIndicatorAdd 函数将指标应用到图表上,会有什么变化吗? Anton 2012.01.20 11:19 #6210 Dima_S: 非常有创意) 该活动最初是为专家准备的,本质上是一个图表活动。在指标中使用该事件是后来增加的,而且有一个限制,即指标必须被添加到图表中。 1...614615616617618619620621622623624625626627628...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
首先你除以整数,所以你得到的是一个整数,请阅读类型转换 https://www.mql5.com/ru/docs/basis/types/casting
确实如此,但之前不是这样的。我甚至懒得理会。
因为在5中,它从一开始就是这样,并将永远是这样(1/2=0;1./2.=0.5)。
如果你想明确地指定重复的内容,则要添加一个点。
以前是以四为单位吗? 因为从一开始就是以五为单位。
如果你想明确地指定重复,请添加句号。
在第四和第五章中都没有出现过这种情况。
整数运算(甚至以纯整数常数的形式)是毫不含糊的。
我遇到了一个测试者和模拟账户之间的差异。
在成功的交易操作 后,价格字段在交易服务器的响应结构中被不同地填写。在模拟账户中,价格字段一切如常--交易的价格,在测试器中这个字段保持为0。
为了测试,我画了一个专家顾问的草图,它买入每个tick并在日志中显示返回代码和价格。
当我在一个模拟账户上运行它时,日志中包含以下字符串。
2012.01.16 12:48:29 test-expert (EURUSD,H1) 10009 在1.266买入
而当在visualizer中运行这些:
2012.01.16 12:49:12 2011.12.30 00:00:11 10009 以0.0的价格买入。
有什么办法可以控制测试仪中的前史。
从2011年1月1日到今天,1小时的测试只加载了6000条。在设置中是--最大条数无限制。历史记录都是从1971年的一分钟内加载的。
这个问题的出现是出乎意料的。
当在专家顾问中通过iCustom 加载一个指标时,该指标被加载并正常工作--唯一的问题是它的OnTimer 函数没有被调用。
它应该是这样的,还是一个错误?
同样的指标只是附在图表上,工作正常。
574号建筑。
这个问题的出现是出乎意料的。
当在专家顾问中通过iCustom 加载一个指标时,该指标被加载并正常工作--唯一的问题是它的OnTimer 函数没有被调用。
它应该是这样的,还是一个错误?
这就是它的意义所在。
非常有创意)
计时器事件是为图形产生的,并从那里到运行在它上面的程序(扔在它上面)。这就是意识形态--程序执行。
客户端将生成的事件发送到相应的开放图表中。另外,事件可以由图表(图表事件)或mql5-程序(自定义事件)产生。通过设置图表的CHART_EVENT_OBJECT_CREATE 和CHART_EVENT_OBJECT_DELETE 属性,可以启用或禁用图表上创建和删除图形对象事件的生成。每个mql5程序和每个图表都有自己的事件队列,所有的新事件都存储在这里。
该程序只接收来自它所运行的图表的事件。所有的事件都按照收到的顺序一个接一个地处理。因此,从专家顾问中调用的指标不会接收定时器事件。试着用专家顾问的ChartIndicatorAdd 函数将指标应用到图表上,会有什么变化吗?
非常有创意)