关于MQL4的问题 - 页 9 12345678910111213 新评论 Forex Trader 2005.12.11 21:41 #81 这样的假设是否正确呢? 1.在没有做市商干预的情况下,订单的相互平仓会自动发生? 2.未结订单的修改(如果接受的距离得到尊重)会自动发生,不需要做市商的干预? 3.删除和修改挂单(如果接受的距离得到尊重)自动进行,没有做市商的干预? Forex Trader 2005.12.12 15:47 #82 假设:<br / translate="no"> 1.是否正确?相互之间的订单关闭是自动的,没有做市商的干预? 2.订单修改(如果接受的距离得到尊重)会自动发生,不需要做市商的任何干预? 3.删除和修改挂单(如果接受的距离得到尊重)会自动发生,无需做市商的任何干预? 这是不正确的。你需要问你的经纪人如何处理订单。自动处理是允许的。但即使在我们的模拟服务器上,有时自动处理被禁用,手动确认被执行。 Forex Trader 2005.12.12 19:12 #83 斯拉瓦。 非常感谢您的明确答复。 我们是否应该认为自动跟踪止损(TrailingStop)的拉升也适用于此? 对于做市商来说,在控制性影响形成的来源方面(EA或MT)是否有任何差异? Forex Trader 2005.12.12 19:15 #84 是的,因为经纪人不知道谁在移动止损--交易员手动、专家(或脚本)或带有跟踪止损机制的客户终端。 Forex Trader 2005.12.13 03:38 #85 1)为什么重新编译后,指标在init()中得到Bars==0? 2)访问数组元素 的速度相对较慢。是否只能通过繁琐的结构或其他方式来加速? static int know; static double caa,bbb,ccc,cdd,cee,cff,cgg; if(b-know!=0){ if(b-know==1){ caa=cbb; cbb=ccc; ccc=cdd; cdd=cee; cee=cff; cff=cgg; cgg=Close[b+6]; /*vzad po istorii*/ }else if (b-know==1){ cgg=cff; cff=cee;cee=cdd; cdd=ccc; ccc=cbb; cbb=caa; caa=Close[b]; /*vperjod*/ }else{ caa=Close[b]; cbb=Close[b+1]; ccc=Close[b+2]; cdd=Close[b+3]; cee=Close[b+4]; cff=Close[b+5]; cgg=Close[b+6]; } know=b; } Questions about MQL4 How to code? [Archive!] Any rookie question, Forex Trader 2005.12.13 10:27 #86 斯拉瓦, ,再次感谢。这就更清楚了。 Myxu, 尝试使用ArrayCopy()。 Forex Trader 2005.12.13 12:20 #87 斯拉瓦,你经常在重要的细节上帮助我,所以我将亲自向你讲话。 如果在一个窗口中,专家顾问和脚本同时工作,万一他们大约在同一时间向服务器发出订单进行修改。 - EA在时间t_o修改Buy,Sovet=OrderModify(...) -脚本在时间t_o+1ms修改BuyLimit,Script=OrderModify(...) 进一步的事件: -服务器在成功执行修改(我不知道是哪个)命令时返回TRUE, (哪个变量获得TRUE值- Sovet还是脚本?) ,1ms后... -服务器在成功执行订单的修改(我不知道是哪个)时返回FALSE 问题。 1.假设对服务器的请求是以这样的方式配置的,即它们被命名,服务器的响应不会被混在一起,但它们中的每一个都会被返回到自己的OrderModify(),这是否正确? 2.如果没有,是否有任何常规方法来区分服务器的响应?(除了在收到前一个订单的回复后再创建另一个订单的做法) ? (我还有一些类似的问题;如果不是很关键,请在MQL4论坛上回答,这个问题在那里是重复的,如果可能的话,可以在那里进行讨论,因为在那里展示代码更方便)。 Forex Trader 2005.12.13 14:17 #88 引自新华字典 === 只有一个线程用于专家和脚本的交易操作,该线程在程序交易背景下启动。因此,如果这个上下文被一个EA的交易操作所占据,另一个EA或脚本在那一刻由于错误146(ERR_TRADE_CONTEXT_BUSY)而不能调用交易功能。必须使用IsTradeAllowed()函数来检测进行交易操作的可能性。为了明确分离对交易环境的访问,你可以使用基于全局变量的信号灯,其值必须使用GlobalVariableSetOnCondition()函数 来改变。 === 你不能同时交易几个EA(或一个EA和一个脚本)。 在错误#6分支中,有一个如何使用信号灯处理情况的例子 Forex Trader 2005.12.13 15:39 #89 Slawa, 谢谢你的回答。非常重要的信息。有些事情被澄清了。 但仍有一些问题。 事实上, 只有一个线程用于执行EA和脚本的交易...... ,按照以下方案在一个EA或脚本中执行订单?: a=OrderModify(.number1); c=OrderModify(.number2)。 OrderModify(.number1); OrderModify(.number2)。 这样的假设是否正确呢?- 在第一个例子中,OrderModify(...number2)在收到服务器对OrderModify(...number1)的响应后,在执行 赋值运算符 a= 之前不会开始执行?- 在第二个例子中,OrderModify(...number2)将立即开始执行,而无需等待服务器响应OrderModify(...number1)? Forex Trader 2005.12.13 16:29 #90 在这两种情况下,函数的启动将是连续的。与三合一不同,所有的 函数(主要指交易函数)现在是同步的。 12345678910111213 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
1.在没有做市商干预的情况下,订单的相互平仓会自动发生?
2.未结订单的修改(如果接受的距离得到尊重)会自动发生,不需要做市商的干预?
3.删除和修改挂单(如果接受的距离得到尊重)自动进行,没有做市商的干预?
2.订单修改(如果接受的距离得到尊重)会自动发生,不需要做市商的任何干预?
3.删除和修改挂单(如果接受的距离得到尊重)会自动发生,无需做市商的任何干预?
这是不正确的。你需要问你的经纪人如何处理订单。自动处理是允许的。但即使在我们的模拟服务器上,有时自动处理被禁用,手动确认被执行。
非常感谢您的明确答复。
我们是否应该认为自动跟踪止损(TrailingStop)的拉升也适用于此?
对于做市商来说,在控制性影响形成的来源方面(EA或MT)是否有任何差异?
2)访问数组元素 的速度相对较慢。是否只能通过繁琐的结构或其他方式来加速?
static int know; static double caa,bbb,ccc,cdd,cee,cff,cgg; if(b-know!=0){ if(b-know==1){ caa=cbb; cbb=ccc; ccc=cdd; cdd=cee; cee=cff; cff=cgg; cgg=Close[b+6]; /*vzad po istorii*/ }else if (b-know==1){ cgg=cff; cff=cee;cee=cdd; cdd=ccc; ccc=cbb; cbb=caa; caa=Close[b]; /*vperjod*/ }else{ caa=Close[b]; cbb=Close[b+1]; ccc=Close[b+2]; cdd=Close[b+3]; cee=Close[b+4]; cff=Close[b+5]; cgg=Close[b+6]; } know=b; },再次感谢。这就更清楚了。
Myxu,
尝试使用ArrayCopy()。
如果在一个窗口中,专家顾问和脚本同时工作,万一他们大约在同一时间向服务器发出订单进行修改。
- EA在时间t_o修改Buy,Sovet=OrderModify(...)
-脚本在时间t_o+1ms修改BuyLimit,Script=OrderModify(...)
进一步的事件:
-服务器在成功执行修改(我不知道是哪个)命令时返回TRUE,
(哪个变量获得TRUE值- Sovet还是脚本?)
,1ms后...
-服务器在成功执行订单的修改(我不知道是哪个)时返回FALSE
问题。
1.假设对服务器的请求是以这样的方式配置的,即它们被命名,服务器的响应不会被混在一起,但它们中的每一个都会被返回到自己的OrderModify(),这是否正确?
2.如果没有,是否有任何常规方法来区分服务器的响应?(除了在收到前一个订单的回复后再创建另一个订单的做法) ?
(我还有一些类似的问题;如果不是很关键,请在MQL4论坛上回答,这个问题在那里是重复的,如果可能的话,可以在那里进行讨论,因为在那里展示代码更方便)。
===
只有一个线程用于专家和脚本的交易操作,该线程在程序交易背景下启动。因此,如果这个上下文被一个EA的交易操作所占据,另一个EA或脚本在那一刻由于错误146(ERR_TRADE_CONTEXT_BUSY)而不能调用交易功能。必须使用IsTradeAllowed()函数来检测进行交易操作的可能性。为了明确分离对交易环境的访问,你可以使用基于全局变量的信号灯,其值必须使用GlobalVariableSetOnCondition()函数 来改变。
===
你不能同时交易几个EA(或一个EA和一个脚本)。 在错误#6分支中,有一个如何使用信号灯处理情况的例子
谢谢你的回答。非常重要的信息。有些事情被澄清了。
但仍有一些问题。
事实上,
,按照以下方案在一个EA或脚本中执行订单?:
。
这样的假设是否正确呢?- 在第一个例子中,OrderModify(...number2)在收到服务器对OrderModify(...number1)的响应后,在执行
赋值运算符 a= 之前不会开始执行?- 在第二个例子中,OrderModify(...number2)将立即开始执行,而无需等待服务器响应OrderModify(...number1)?