关于MQL4的问题 - 页 9

 
这样的假设是否正确呢?
1.在没有做市商干预的情况下,订单的相互平仓会自动发生?
2.未结订单的修改(如果接受的距离得到尊重)会自动发生,不需要做市商的干预?
3.删除和修改挂单(如果接受的距离得到尊重)自动进行,没有做市商的干预?
 
假设:<br / translate="no"> 1.是否正确?相互之间的订单关闭是自动的,没有做市商的干预?
2.订单修改(如果接受的距离得到尊重)会自动发生,不需要做市商的任何干预?
3.删除和修改挂单(如果接受的距离得到尊重)会自动发生,无需做市商的任何干预?

这是不正确的。你需要问你的经纪人如何处理订单。自动处理是允许的。但即使在我们的模拟服务器上,有时自动处理被禁用,手动确认被执行。
 
斯拉瓦
非常感谢您的明确答复。

我们是否应该认为自动跟踪止损(TrailingStop)的拉升也适用于此?
对于做市商来说,在控制性影响形成的来源方面(EA或MT)是否有任何差异?
 
是的,因为经纪人不知道谁在移动止损--交易员手动、专家(或脚本)或带有跟踪止损机制的客户终端。
 
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; }
 
斯拉瓦
,再次感谢。这就更清楚了。

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分支中,有一个如何使用信号灯处理情况的例子
 
Slawa,
谢谢你的回答。非常重要的信息。有些事情被澄清了。

但仍有一些问题。
事实上,
只有一个线程用于执行EA和脚本的交易
......
,按照以下方案在一个EA或脚本中执行订单?:
a=OrderModify(.number1); c=OrderModify(.number2)


OrderModify(.number1); OrderModify(.number2)。


这样的假设是否正确呢?- 在第一个例子中,OrderModify(...number2)在收到服务器对OrderModify(...number1)的响应后,在执行
赋值运算符 a= 之前不会开始执行?- 在第二个例子中,OrderModify(...number2)将立即开始执行,而无需等待服务器响应OrderModify(...number1)?

 
在这两种情况下,函数的启动将是连续的。与三合一不同,所有的 函数(主要指交易函数)现在是同步的。