如何编码? - 页 143 1...136137138139140141142143144145146147148149150...347 新评论 Professor of channel trading 2008.11.07 03:02 #1421 wolfe: 你必须包括标准库。EX: #include Error=GetLastError(); Print("ERROR = ", ErrorDescription(Error)); ErrorDescription()如果是标准库中返回一个字符串的函数。 希望这有帮助。 感谢Wolfe的帮助 它的工作~~ 我发现这个代码可以在本地脚本样本 "trade.mq4 "中找到。 wolfe 2008.11.07 03:06 #1422 chiwing: 当打开/关闭/修改订单发生错误时,它有一个代码。error=GetLastError()。 Print("LastError = ",error) 但是我想打印error_string~~。 这句话是什么意思? 谢谢你 你必须包括标准库。 EX: #include Error=GetLastError(); Print("ERROR = ", ErrorDescription(Error));[/PHP] ErrorDescription() is a function that returns a string in the standard library. [PHP]string ErrorDescription(int error_code) { string error_string; //---- switch(error_code) { //---- codes returned from trade server case 0: case 1: error_string="no error"; break; case 2: error_string="common error"; break; case 3: error_string="invalid trade parameters"; break; case 4: error_string="trade server is busy"; break; case 5: error_string="old version of the client terminal"; break; case 6: error_string="no connection with trade server"; break; case 7: error_string="not enough rights"; break; case 8: error_string="too frequent requests"; break; case 9: error_string="malfunctional trade operation (never returned error)"; break; case 64: error_string="account disabled"; break; case 65: error_string="invalid account"; break; case 128: error_string="trade timeout"; break; case 129: error_string="invalid price"; break; case 130: error_string="invalid stops"; break; case 131: error_string="invalid trade volume"; break; case 132: error_string="market is closed"; break; case 133: error_string="trade is disabled"; break; case 134: error_string="not enough money"; break; case 135: error_string="price changed"; break; case 136: error_string="off quotes"; break; case 137: error_string="broker is busy (never returned error)"; break; case 138: error_string="requote"; break; case 139: error_string="order is locked"; break; case 140: error_string="long positions only allowed"; break; case 141: error_string="too many requests"; break; case 145: error_string="modification denied because order too close to market"; break; case 146: error_string="trade context is busy"; break; case 147: error_string="expirations are denied by broker"; break; case 148: error_string="amount of open and pending orders has reached the limit"; break; //---- mql4 errors case 4000: error_string="no error (never generated code)"; break; case 4001: error_string="wrong function pointer"; break; case 4002: error_string="array index is out of range"; break; case 4003: error_string="no memory for function call stack"; break; case 4004: error_string="recursive stack overflow"; break; case 4005: error_string="not enough stack for parameter"; break; case 4006: error_string="no memory for parameter string"; break; case 4007: error_string="no memory for temp string"; break; case 4008: error_string="not initialized string"; break; case 4009: error_string="not initialized string in array"; break; case 4010: error_string="no memory for array\' string"; break; case 4011: error_string="too long string"; break; case 4012: error_string="remainder from zero divide"; break; case 4013: error_string="zero divide"; break; case 4014: error_string="unknown command"; break; case 4015: error_string="wrong jump (never generated error)"; break; case 4016: error_string="not initialized array"; break; case 4017: error_string="dll calls are not allowed"; break; case 4018: error_string="cannot load library"; break; case 4019: error_string="cannot call function"; break; case 4020: error_string="expert function calls are not allowed"; break; case 4021: error_string="not enough memory for temp string returned from function"; break; case 4022: error_string="system is busy (never generated error)"; break; case 4050: error_string="invalid function parameters count"; break; case 4051: error_string="invalid function parameter value"; break; case 4052: error_string="string function internal error"; break; case 4053: error_string="some array error"; break; case 4054: error_string="incorrect series array using"; break; case 4055: error_string="custom indicator error"; break; case 4056: error_string="arrays are incompatible"; break; case 4057: error_string="global variables processing error"; break; case 4058: error_string="global variable not found"; break; case 4059: error_string="function is not allowed in testing mode"; break; case 4060: error_string="function is not confirmed"; break; case 4061: error_string="send mail error"; break; case 4062: error_string="string parameter expected"; break; case 4063: error_string="integer parameter expected"; break; case 4064: error_string="double parameter expected"; break; case 4065: error_string="array as parameter expected"; break; case 4066: error_string="requested history data in update state"; break; case 4099: error_string="end of file"; break; case 4100: error_string="some file error"; break; case 4101: error_string="wrong file name"; break; case 4102: error_string="too many opened files"; break; case 4103: error_string="cannot open file"; break; case 4104: error_string="incompatible access to a file"; break; case 4105: error_string="no order selected"; break; case 4106: error_string="unknown symbol"; break; case 4107: error_string="invalid price parameter for trade function"; break; case 4108: error_string="invalid ticket"; break; case 4109: error_string="trade is not allowed in the expert properties"; break; case 4110: error_string="longs are not allowed in the expert properties"; break; case 4111: error_string="shorts are not allowed in the expert properties"; break; case 4200: error_string="object is already exist"; break; case 4201: error_string="unknown object property"; break; case 4202: error_string="object is not exist"; break; case 4203: error_string="unknown object type"; break; case 4204: error_string="no object name"; break; case 4205: error_string="object coordinates error"; break; case 4206: error_string="no specified subwindow"; break; default: error_string="unknown error"; } //---- return(error_string); } 希望这对你有帮助。 How to code? 被错误困扰的是没有交易业务 求助:发布EA时,提示错误 no trading operations EBK 2008.11.10 12:05 #1423 需要帮助 - 公平检查 我需要一个编码的帮助。 我需要一个公平检查,以便将来在不同的EA上实施。 比如说。 检查ema交叉并根据 "ea交叉 "规则开立订单,只有当权益不低于-x$ 时才可以开立。 EBK 2008.11.10 15:56 #1424 哦,下次我就不举例了。 我不想做一个EMA交叉EA。 我需要看看我如何在metatrader上写出股票检查。 Roger09 2008.11.10 17:38 #1425 EBK: 哦,下次我就不举例了。我不想做ema交叉ea 我需要看看我如何在metatrader上写出权益检查。 不如这样 Comment("My Equity = "AccountEquity())。 kmitchner 2008.11.10 20:21 #1426 有人能回答我一个MQL4的问题吗? 我在想,在MQL4中是否有办法拥有像eval()这样的功能,你可以拥有一个包含MQL4代码的字符串,并将其作为代码而不是字符串进行评估? EBK 2008.11.10 20:24 #1427 哦,对不起,我错误地表达了我的观点。 我想编写一些代码(但我无法做到),以便在净值低于某个值时停止EA交易(或EA交易的一部分)。 谢谢你的帮助Roger09,但我不需要在图表上显示净值。 Ingvar Engelbrecht 2008.11.11 21:23 #1428 关于时间框架的问题 在一个EA中,我使用iCCI的1小时时间框架,如 cci = iCCI(NULL,PERIOD_H1,CCIPeriod,PRICE_TYPICAL,1)。 如果我在1H中运行EA,我将得到一个特定的值。如果我在15M中运行该EA,我希望得到相同的值。 在IBFX上我得到相同的值。在Alpari上则不然。 似乎很奇怪 英瓦尔 wolfe 2008.11.12 01:49 #1429 ingvar_e: 在一个EA中,我使用iCCI的1小时时间框架,例如cci = iCCI(NULL,PERIOD_H1,CCIPeriod,PRICE_TYPICAL,1)。 如果我在1H中运行EA,我将得到一个特定的值。如果我在15M中运行该EA,我希望得到相同的值。 在IBFX上我得到相同的值。在Alpari上则不然。 似乎很奇怪 英华 通过在你的指标调用中调用PERIOD_H1,你应该只得到H1的数据。 这很奇怪。 Stephen Wilson 2008.11.12 14:10 #1430 请帮助。试图从已关闭的交易中获取数据。 我正试图从已关闭的交易中获取数据。只要我只交易一个交易对,我的代码就能正常工作,但如果是多个交易对,就会莫名其妙地搞砸。 for(i=OrdersHistoryTotal(); i>0; i--) { if(totalOrders==0 &&Magic==OrderMagicNumber() && OrderSelect(i-1 , SELECT_BY_POS,MODE_HISTORY) ==true) { CloseTime = OrderCloseTime()。 OpenTime = OrderOpenTime(); OrderLots = OrderLots(); Ticket=OrderTicket()。 } 谁能帮我解决这个问题? 如果Magic匹配,它给出的最后一笔交易关闭的数值是正确的,但如果最后一笔关闭的交易是不同的货币对,那么它给我的票据数据是错误的。 谢谢。 邓小平 1...136137138139140141142143144145146147148149150...347 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你必须包括标准库。
EX:
Error=GetLastError();
Print("ERROR = ", ErrorDescription(Error));ErrorDescription()如果是标准库中返回一个字符串的函数。
希望这有帮助。感谢Wolfe的帮助
它的工作~~
我发现这个代码可以在本地脚本样本 "trade.mq4 "中找到。
当打开/关闭/修改订单发生错误时,它有一个代码。
error=GetLastError()。
Print("LastError = ",error)
但是我想打印error_string~~。
这句话是什么意思?
谢谢你你必须包括标准库。
EX:
Error=GetLastError();
Print("ERROR = ", ErrorDescription(Error));[/PHP]
ErrorDescription() is a function that returns a string in the standard library.
[PHP]string ErrorDescription(int error_code)
{
string error_string;
//----
switch(error_code)
{
//---- codes returned from trade server
case 0:
case 1: error_string="no error"; break;
case 2: error_string="common error"; break;
case 3: error_string="invalid trade parameters"; break;
case 4: error_string="trade server is busy"; break;
case 5: error_string="old version of the client terminal"; break;
case 6: error_string="no connection with trade server"; break;
case 7: error_string="not enough rights"; break;
case 8: error_string="too frequent requests"; break;
case 9: error_string="malfunctional trade operation (never returned error)"; break;
case 64: error_string="account disabled"; break;
case 65: error_string="invalid account"; break;
case 128: error_string="trade timeout"; break;
case 129: error_string="invalid price"; break;
case 130: error_string="invalid stops"; break;
case 131: error_string="invalid trade volume"; break;
case 132: error_string="market is closed"; break;
case 133: error_string="trade is disabled"; break;
case 134: error_string="not enough money"; break;
case 135: error_string="price changed"; break;
case 136: error_string="off quotes"; break;
case 137: error_string="broker is busy (never returned error)"; break;
case 138: error_string="requote"; break;
case 139: error_string="order is locked"; break;
case 140: error_string="long positions only allowed"; break;
case 141: error_string="too many requests"; break;
case 145: error_string="modification denied because order too close to market"; break;
case 146: error_string="trade context is busy"; break;
case 147: error_string="expirations are denied by broker"; break;
case 148: error_string="amount of open and pending orders has reached the limit"; break;
//---- mql4 errors
case 4000: error_string="no error (never generated code)"; break;
case 4001: error_string="wrong function pointer"; break;
case 4002: error_string="array index is out of range"; break;
case 4003: error_string="no memory for function call stack"; break;
case 4004: error_string="recursive stack overflow"; break;
case 4005: error_string="not enough stack for parameter"; break;
case 4006: error_string="no memory for parameter string"; break;
case 4007: error_string="no memory for temp string"; break;
case 4008: error_string="not initialized string"; break;
case 4009: error_string="not initialized string in array"; break;
case 4010: error_string="no memory for array\' string"; break;
case 4011: error_string="too long string"; break;
case 4012: error_string="remainder from zero divide"; break;
case 4013: error_string="zero divide"; break;
case 4014: error_string="unknown command"; break;
case 4015: error_string="wrong jump (never generated error)"; break;
case 4016: error_string="not initialized array"; break;
case 4017: error_string="dll calls are not allowed"; break;
case 4018: error_string="cannot load library"; break;
case 4019: error_string="cannot call function"; break;
case 4020: error_string="expert function calls are not allowed"; break;
case 4021: error_string="not enough memory for temp string returned from function"; break;
case 4022: error_string="system is busy (never generated error)"; break;
case 4050: error_string="invalid function parameters count"; break;
case 4051: error_string="invalid function parameter value"; break;
case 4052: error_string="string function internal error"; break;
case 4053: error_string="some array error"; break;
case 4054: error_string="incorrect series array using"; break;
case 4055: error_string="custom indicator error"; break;
case 4056: error_string="arrays are incompatible"; break;
case 4057: error_string="global variables processing error"; break;
case 4058: error_string="global variable not found"; break;
case 4059: error_string="function is not allowed in testing mode"; break;
case 4060: error_string="function is not confirmed"; break;
case 4061: error_string="send mail error"; break;
case 4062: error_string="string parameter expected"; break;
case 4063: error_string="integer parameter expected"; break;
case 4064: error_string="double parameter expected"; break;
case 4065: error_string="array as parameter expected"; break;
case 4066: error_string="requested history data in update state"; break;
case 4099: error_string="end of file"; break;
case 4100: error_string="some file error"; break;
case 4101: error_string="wrong file name"; break;
case 4102: error_string="too many opened files"; break;
case 4103: error_string="cannot open file"; break;
case 4104: error_string="incompatible access to a file"; break;
case 4105: error_string="no order selected"; break;
case 4106: error_string="unknown symbol"; break;
case 4107: error_string="invalid price parameter for trade function"; break;
case 4108: error_string="invalid ticket"; break;
case 4109: error_string="trade is not allowed in the expert properties"; break;
case 4110: error_string="longs are not allowed in the expert properties"; break;
case 4111: error_string="shorts are not allowed in the expert properties"; break;
case 4200: error_string="object is already exist"; break;
case 4201: error_string="unknown object property"; break;
case 4202: error_string="object is not exist"; break;
case 4203: error_string="unknown object type"; break;
case 4204: error_string="no object name"; break;
case 4205: error_string="object coordinates error"; break;
case 4206: error_string="no specified subwindow"; break;
default: error_string="unknown error";
}
//----
return(error_string);
}
希望这对你有帮助。![](https://c.mql5.com/forextsd/smiles/regular_smile.png)
需要帮助 - 公平检查
我需要一个编码的帮助。
我需要一个公平检查,以便将来在不同的EA上实施。
比如说。
检查ema交叉并根据 "ea交叉 "规则开立订单,只有当权益不低于-x$ 时才可以开立。
哦,下次我就不举例了。
我不想做一个EMA交叉EA。![](https://c.mql5.com/forextsd/smiles/embaressed_smile.png)
我需要看看我如何在metatrader上写出股票检查。
哦,下次我就不举例了。
我不想做ema交叉ea![](https://c.mql5.com/forextsd/smiles/embaressed_smile.png)
我需要看看我如何在metatrader上写出权益检查。不如这样
Comment("My Equity = "AccountEquity())。
有人能回答我一个MQL4的问题吗?
我在想,在MQL4中是否有办法拥有像eval()这样的功能,你可以拥有一个包含MQL4代码的字符串,并将其作为代码而不是字符串进行评估?
哦,对不起,我错误地表达了我的观点。
我想编写一些代码(但我无法做到),以便在净值低于某个值时停止EA交易(或EA交易的一部分)。
谢谢你的帮助Roger09,但我不需要在图表上显示净值。
关于时间框架的问题
在一个EA中,我使用iCCI的1小时时间框架,如
cci = iCCI(NULL,PERIOD_H1,CCIPeriod,PRICE_TYPICAL,1)。
如果我在1H中运行EA,我将得到一个特定的值。如果我在15M中运行该EA,我希望得到相同的值。
在IBFX上我得到相同的值。在Alpari上则不然。
似乎很奇怪
英瓦尔
在一个EA中,我使用iCCI的1小时时间框架,例如
cci = iCCI(NULL,PERIOD_H1,CCIPeriod,PRICE_TYPICAL,1)。
如果我在1H中运行EA,我将得到一个特定的值。如果我在15M中运行该EA,我希望得到相同的值。
在IBFX上我得到相同的值。在Alpari上则不然。
似乎很奇怪
英华通过在你的指标调用中调用PERIOD_H1,你应该只得到H1的数据。 这很奇怪。
请帮助。试图从已关闭的交易中获取数据。
我正试图从已关闭的交易中获取数据。只要我只交易一个交易对,我的代码就能正常工作,但如果是多个交易对,就会莫名其妙地搞砸。
for(i=OrdersHistoryTotal(); i>0; i--)
{
if(totalOrders==0 &&Magic==OrderMagicNumber() &&
OrderSelect(i-1 , SELECT_BY_POS,MODE_HISTORY) ==true)
{
CloseTime = OrderCloseTime()。
OpenTime = OrderOpenTime();
OrderLots = OrderLots();
Ticket=OrderTicket()。
}
谁能帮我解决这个问题? 如果Magic匹配,它给出的最后一笔交易关闭的数值是正确的,但如果最后一笔关闭的交易是不同的货币对,那么它给我的票据数据是错误的。
谢谢。
邓小平