错误、漏洞、问题 - 页 668 1...661662663664665666667668669670671672673674675...3184 新评论 Anatoli Kazharski 2012.03.09 14:41 #6671 如果你专注于Price tumblr 中的颜色,似乎就会出现混乱。//---购买 按钮是蓝色的。因此,你可以出价的价格也应该是蓝色的。现在情况正好相反,你必须努力工作才能适应它,而且不太可能成功。这是一种心理上的细微差别。))) Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Виды заявок в стакане цен www.mql5.com Стандартные константы, перечисления и структуры / Торговые константы / Виды заявок в стакане цен - Документация по MQL5 Anatoli Kazharski 2012.03.09 15:44 #6672 根据帮助 中与价格堆栈 有关的信息,测试的布局将看起来像这样。//+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { MarketBookAdd(_Symbol); //--- return(0); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { MarketBookRelease(_Symbol); } //+------------------------------------------------------------------+ //| OnBook Event | //+------------------------------------------------------------------+ MqlBookInfo priceArray[]; //--- void OnBookEvent(const string &symbol_name) { bool getBook=MarketBookGet(_Symbol,priceArray); //--- if(!getBook) { Print("Не удалось получить содержимое стакана по символу ",Symbol()); } } //+------------------------------------------------------------------+ //| OnChart event handler | //+------------------------------------------------------------------+ void OnChartEvent(const int id,const long &lparam,const double &dparam,const string &sparam) { double price_buy=0.0,price_sell=0.0; //--- TRADE_EXEMODE=(int)SymbolInfoInteger(_Symbol,SYMBOL_TRADE_EXEMODE); // Узнаем тип исполнения //--- if(TRADE_EXEMODE==SYMBOL_TRADE_EXECUTION_MARKET || TRADE_EXEMODE==SYMBOL_TRADE_EXECUTION_EXCHANGE) { mytrade.SetTypeFilling(ORDER_FILLING_IOC); //--- if(TRADE_EXEMODE==SYMBOL_TRADE_EXECUTION_EXCHANGE) { int size=ArraySize(priceArray); //--- for(int i=size-1; i>=0; i--) { if(priceArray[i].type==1) { price_buy=priceArray[i].price; // Получим ближайшую цену для BUY price_sell=priceArray[i+1].price; // Получим ближайшую цену для SELL //--- break; } } } else { price_buy=mylast_tick.ask; price_sell=mylast_tick.bid; } } //--- //... Далее следуют функции для совершения торговых операций }//---然而,在进行交易时,专家顾问日志显示了一条信息,从中可以看出,虽然查询中存在一个价格,但它是市场深度中最接近的一个。price_request=mytrade.RequestPrice();的结果是没有价格(0.000)。price_result=mytrade.ResultPrice();并且交易函数返回错误。//---在日志中,我们可以看到有一次试图在零价位开仓。但还是以当前价格开仓。//---如果这些信息不足以确定哪一方有问题,我将写信给服务台。 Aydar Kamalov 2012.03.10 19:14 #6673 你能告诉我如何删除一个挂单吗?trReq.order=order_ticket。trReq.type=TRADE_ACTION_REMOVE。OrderSend(trReq,trRez)。我的编译器给我:TRADE_ACTION_REMOVE 不能转换枚举。和2次关于同样的错误。以前也试过用同样的方法调零。trReq.symbol =Symbol(); //NULLtrReq.magic =MAGIC; //0trReq.volume =0.0。trReq.type =0。trReq.price =0.0。trReq.sl =0.0。trReq.tp =0.0。trReq.type_time =0。trReq.expiration=0。不起作用。建立597。请给我一个完整的例子。预先感谢你。 Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Типы торговых операций www.mql5.com Стандартные константы, перечисления и структуры / Торговые константы / Типы торговых операций - Документация по MQL5 Anatoli Kazharski 2012.03.10 19:24 #6674 stroka:...请给出一个完整的例子。预先感谢你。在标准库中有一个完整的例子。功能OrderDelete()。它有文件。你也可以把那里的功能用于所有交易操作。//+------------------------------------------------------------------+ //| Delete specified pending order. | //| INPUT: ticket - ticket of order for delete. | //| OUTPUT: true-if successful, false otherwise. | //| REMARK: no. | //+------------------------------------------------------------------+ bool CTrade::OrderDelete(ulong ticket) { //--- variables string action,result; //--- check stopped if(IsStopped(__FUNCTION__)) return(false); //--- clean ClearStructures(); //--- setting request m_request.action =TRADE_ACTION_REMOVE; m_request.order =ticket; //--- order check if(!OrderCheck(m_request,m_check_result)) { //--- copy return code m_result.retcode=m_check_result.retcode; if(m_log_level>LOG_LEVEL_NO) printf(__FUNCTION__+": %s [%s]",FormatRequest(action,m_request),FormatRequestResult(result,m_request,m_result)); return(false); } //--- order send if(!OrderSend(m_request,m_result)) { if(m_log_level>LOG_LEVEL_NO) printf(__FUNCTION__+": %s [%s]",FormatRequest(action,m_request),FormatRequestResult(result,m_request,m_result)); return(false); } if(m_log_level>LOG_LEVEL_ERRORS) printf(__FUNCTION__+": %s [%s]",FormatRequest(action,m_request),FormatRequestResult(result,m_request,m_result)); //--- ok return(true); } UncleBOB 2012.03.11 08:01 #6675 终端没有登录到mql5社区。我在终端设置 中输入登录名和密码,按OK键,没有任何反应。当我再次进入设置时,登录被保存,但密码是空白的。我无法从市场上下载任何东西。我可以毫无问题地进入论坛。 Dmitriy Skub 2012.03.11 08:45 #6676 Dima_S:当你把一个字符串设置为外部参数时,截断它的目的是什么?输入字符串- 最多可以指定105个字符,如果超过这个数字,就会在右边被剪掉。建立597 建设607--同样的问题。 meneo 2012.03.11 18:34 #6677 请告诉我为什么下面的代码找不到相应的窗口(我检查过了,有这个类的窗口存在)。#import "user32.dll" int FindWindowA(string &lpClassName, string &lpWindowName); #import string FormClass="TMyMainForm"; string FormName=""; int hnd = FindWindowA(FormClass,FormName); if (hnd==0) printf("not found"); else printf("found"); Alexey Klenov 2012.03.11 19:20 #6678 看上去好像有某种错误,在 //+------------------------------------------------------------------+ //| Open position. | //| INPUT: symbol -symbol for trade, | //| order_type -direct for open, | //| volume -volume of position, | //| price -price for open, | //| stop -price of stop loss, | //| take -price of take profit, | //| comment -comment of position. | //| OUTPUT: true-if successful, false otherwise. | //| REMARK: no. | //+------------------------------------------------------------------+ bool CTrade::PositionOpen(const string symbol,ENUM_ORDER_TYPE order_type,double volume, double price,double sl,double tp,const string comment)在返回代码10008(已下订单)时,该方法返回false。该订单最终被执行。正因为如此,在模拟账户上开设的订单 数量超过了规定的数量。RQ 0 Trades 14:00:18 '3119321' : accepted exchange buy 0.10 USDCHF at 0.00000 IO 0 Trades 14:00:18 '3119321' : exchange buy 0.10 USDCHF at 0.00000 placed for execution MH 0 Trades 14:00:18 '3119321' : exchange buy 0.10 USDCHF at 0.00000 MQ 0 Trades 14:00:18 '3119321' : deal #2888080 buy 0.10 USDCHF at 0.91144 done (based on order #4880065) NL 0 Trades 14:00:18 '3119321' : accepted exchange buy 0.10 USDCHF at 0.00000 MK 0 Trades 14:00:18 '3119321' : exchange buy 0.10 USDCHF at 0.00000 placed for execution IS 0 Trades 14:00:18 '3119321' : exchange buy 0.10 USDCHF at 0.00000 MN 0 Trades 14:00:19 '3119321' : accepted exchange buy 0.10 USDCHF at 0.00000 NE 0 Trades 14:00:19 '3119321' : exchange buy 0.10 USDCHF at 0.00000 placed for execution JQ 0 Trades 14:00:19 '3119321' : exchange buy 0.10 USDCHF at 0.00000 PJ 0 Trades 14:00:19 '3119321' : deal #2888081 buy 0.10 USDCHF at 0.91144 done (based on order #4880066) KG 0 Trades 14:00:20 '3119321' : deal #2888082 buy 0.10 USDCHF at 0.91145 done (based on order #4880067) KF 0 Trades 14:00:20 '3119321' : accepted exchange buy 0.10 USDCHF at 0.00000 LM 0 Trades 14:00:20 '3119321' : exchange buy 0.10 USDCHF at 0.00000 placed for execution HJ 0 Trades 14:00:20 '3119321' : exchange buy 0.10 USDCHF at 0.00000 DR 0 Trades 14:00:20 '3119321' : deal #2888083 buy 0.10 USDCHF at 0.91146 done (based on order #4880068) HR 0 Trades 14:00:21 '3119321' : accepted exchange buy 0.10 USDCHF at 0.00000 OJ 0 Trades 14:00:21 '3119321' : exchange buy 0.10 USDCHF at 0.00000 placed for execution CE 0 Trades 14:00:21 '3119321' : exchange buy 0.10 USDCHF at 0.00000 MN 0 Trades 14:00:21 '3119321' : deal #2888084 buy 0.10 USDCHF at 0.91146 done (based on order #4880069) DI 0 Trades 14:00:21 '3119321' : accepted exchange buy 0.10 USDCHF at 0.00000 CF 0 Trades 14:00:21 '3119321' : exchange buy 0.10 USDCHF at 0.00000 placed for execution OP 0 Trades 14:00:21 '3119321' : exchange buy 0.10 USDCHF at 0.00000 GI 0 Trades 14:00:22 '3119321' : deal #2888085 buy 0.10 USDCHF at 0.91146 done (based on order #4880070) QD 0 Trades 14:00:22 '3119321' : accepted exchange buy 0.10 USDCHF at 0.00000 JS 0 Trades 14:00:22 '3119321' : exchange buy 0.10 USDCHF at 0.00000 placed for execution NK 0 Trades 14:00:22 '3119321' : exchange buy 0.10 USDCHF at 0.00000 MD 0 Trades 14:00:22 '3119321' : deal #2888086 buy 0.10 USDCHF at 0.91146 done (based on order #4880071) NS 0 Trades 14:00:23 '3119321' : accepted exchange buy 0.10 USDCHF at 0.00000 MH 0 Trades 14:00:23 '3119321' : exchange buy 0.10 USDCHF at 0.00000 placed for execution IG 0 Trades 14:00:23 '3119321' : exchange buy 0.10 USDCHF at 0.00000 .... 和专家顾问日志 (EURUSD,H1) 14:00:18 CTrade::PositionOpen: [placed] (EURUSD,H1) 14:00:18 CTrade::PositionOpen: [placed] (EURUSD,H1) 14:00:19 CTrade::PositionOpen: [placed] (EURUSD,H1) 14:00:20 CTrade::PositionOpen: [placed] (EURUSD,H1) 14:00:21 CTrade::PositionOpen: [placed] (EURUSD,H1) 14:00:21 CTrade::PositionOpen: [placed] (EURUSD,H1) 14:00:22 CTrade::PositionOpen: [placed] (EURUSD,H1) 14:00:23 CTrade::PositionOpen: [placed] (EURUSD,H1) 14:00:23 CTrade::PositionOpen: [placed] .... 请告诉我,什么时候可能出现市场订单被放在服务器上但没有被执行(甚至部分执行)的情况? Документация по MQL5: Торговые функции / OrdersTotal www.mql5.com Торговые функции / OrdersTotal - Документация по MQL5 Anatoli Kazharski 2012.03.11 21:00 #6679 olyakish: 似乎有一个错误在 在返回代码10008(已下订单)时,该方法返回false。该订单最终确实被执行了。正因为如此,在模拟账户上开设的订单 数量超过了规定的数量。和专家日志 告诉我什么时候可能会出现在服务器上下了市价订单但没有被执行(甚至部分执行)的情况?同样的问题在该页的最开始也有描述。这里描述了它:https://www.mql5.com/ru/forum/1111/page679#comment_164002。 目前还没有得到答复。//---你的模拟账户是在哪里开的? Alexey Klenov 2012.03.12 13:32 #6680 tol64:同样的问题在该页的最开始也有描述。这里是:https://www.mql5.com/ru/forum/1111/page679#comment_164002。 目前还没有给出答案。//---你的模拟账户是在哪里开的?1.很晚才看到这个主题。2.在A*****i。我在论坛4的幽默中发了这个帖子,但我认为它也应该在这里。我正在解析专家顾问的航班(MT5),在日志中发现了这个问题 .....(EURUSD,H1) 16:43:16 CTrade::PositionClose: [not enough money] ...在哪里...在DC? 1...661662663664665666667668669670671672673674675...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
如果你专注于Price tumblr 中的颜色,似乎就会出现混乱。
//---
购买 按钮是蓝色的。因此,你可以出价的价格也应该是蓝色的。现在情况正好相反,你必须努力工作才能适应它,而且不太可能成功。这是一种心理上的细微差别。)))
根据帮助 中与价格堆栈 有关的信息,测试的布局将看起来像这样。
//---
然而,在进行交易时,专家顾问日志显示了一条信息,从中可以看出,虽然查询中存在一个价格,但它是市场深度中最接近的一个。
的结果是没有价格(0.000)。
并且交易函数返回错误。
//---
在日志中,我们可以看到有一次试图在零价位开仓。
但还是以当前价格开仓。
//---
如果这些信息不足以确定哪一方有问题,我将写信给服务台。
你能告诉我如何删除一个挂单吗?
trReq.order=order_ticket。
trReq.type=TRADE_ACTION_REMOVE。
OrderSend(trReq,trRez)。
我的编译器给我:TRADE_ACTION_REMOVE 不能转换枚举。
和2次关于同样的错误。
以前也试过用同样的方法调零。
trReq.symbol =Symbol(); //NULL
trReq.magic =MAGIC; //0
trReq.volume =0.0。
trReq.type =0。
trReq.price =0.0。
trReq.sl =0.0。
trReq.tp =0.0。
trReq.type_time =0。
trReq.expiration=0。
不起作用。建立597。
请给我一个完整的例子。预先感谢你。
...
请给出一个完整的例子。预先感谢你。
在标准库中有一个完整的例子。功能OrderDelete()。它有文件。你也可以把那里的功能用于所有交易操作。
当你把一个字符串设置为外部参数时,截断它的目的是什么?
输入字符串- 最多可以指定105个字符,如果超过这个数字,就会在右边被剪掉。
建立597
请告诉我为什么下面的代码找不到相应的窗口(我检查过了,有这个类的窗口存在)。
看上去好像有某种错误,在
在返回代码10008(已下订单)时,该方法返回false。
该订单最终被执行。
正因为如此,在模拟账户上开设的订单 数量超过了规定的数量。
和专家顾问日志
请告诉我,什么时候可能出现市场订单被放在服务器上但没有被执行(甚至部分执行)的情况?似乎有一个错误在
在返回代码10008(已下订单)时,该方法返回false。
该订单最终确实被执行了。
正因为如此,在模拟账户上开设的订单 数量超过了规定的数量。
和专家日志
告诉我什么时候可能会出现在服务器上下了市价订单但没有被执行(甚至部分执行)的情况?同样的问题在该页的最开始也有描述。这里描述了它:https://www.mql5.com/ru/forum/1111/page679#comment_164002。 目前还没有得到答复。
//---
你的模拟账户是在哪里开的?
同样的问题在该页的最开始也有描述。这里是:https://www.mql5.com/ru/forum/1111/page679#comment_164002。 目前还没有给出答案。
//---
你的模拟账户是在哪里开的?
1.很晚才看到这个主题。
2.在A*****i。
我在论坛4的幽默中发了这个帖子,但我认为它也应该在这里。
我正在解析专家顾问的航班(MT5),在日志中发现了这个问题
...在哪里...在DC?