[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要路过。没有你就无处可去 - 3. - 页 644 1...637638639640641642643644645646647648649650651652 新评论 TarasBY 2012.03.19 17:05 #6431 Myth63: 问题是,我不太擅长MQL编程,我的EA是基于BASIC原则=)一个变量被分配给一个开放的订单。终端说我已经被重新登录了,而且这个变量的值在订单打开时消失了。我想,如果订单被重新登录,应该怎么做? 如果发生这种情况,终端应该检查未结头寸,并将这些值分配给机器人已经分配的变量。而专家顾问在测试中显示出良好的读数。 根据你想存储的内容(什么信息),可以使用不同的选项。 关于订单的信息可以存储在其注释中,然后从注释中读取。 你想要的信息可以被写入文件--一个缓慢的过程。 最常用的变体是将其写入终端的全局变量 中。 TarasBY 2012.03.19 17:08 #6432 FelixFX: 如果你不介意的话,这里有一个例子。据我所知,在执行循环之前,数据不会被更新?int start() { //---- while (!IsStopped() && IsExpertEnabled()) {fMineFunction();} //---- return (0); } FelixFX 2012.03.19 17:13 #6433 TarasBY: 在这个无休止的循环中,是否只能使用相同的数据?数据是否会随着新的刻度线而更新? Alexey Subbotin 2012.03.19 17:16 #6434 Myth63: 问题是,我不太擅长MQL编程,我的EA是基于Bacyca原则的=)一个变量被分配给一个开放的订单。终端说我已经被重新登录了,而且这个变量的值在订单打开时消失了。我想知道如何让它在有超额记录的情况下检查未结头寸,并将这些值分配给机器人已经分配的变量。 你说的是神奇的数字吗?没有足够的信息来帮助你......变量是什么,如何分配的--这就是你需要的出发点。 但我的专家顾问在测试中显示出良好的结果。 100个交易不是阅读,而是一段美好的历史。2-3年内的几千次交易是可以信任的。 Vadim Zhunko 2012.03.19 17:19 #6435 FelixFX: 在这个无休止的循环中,是否只能使用相同的数据?数据是否会随着新的打勾而更新? 不,要想更新,必须是这样。关于循环的问题,由网站搜索引擎回答,它返回多少页。阅读它。 TarasBY 2012.03.19 17:19 #6436 FelixFX: 在这个无休止的循环中,是否只能使用相同的数据?数据是否会随着新的勾号而更新? 循环允许你在一个 "循环 "中运行你的函数,而不需要等待下一个刻度的到来。你问的是什么数据? Иван 2012.03.19 19:51 #6437 请告知是否有一个内置的函数可以让我在每个柱状体开盘时运行我写的函数,而不是在每个刻度 上运行。 用手写似乎很容易,但当一部分代码按刻度执行,一部分按柱状体执行时,程序会变得非常混乱。 非常感谢) --- 2012.03.19 20:06 #6438 Qwertee: 请告诉我是否有一个内置的功能,我可以在每个条形的开盘时运行我写的一些功能,而不是在每个点上。 用手写并不难,但当一些代码按点执行,一些按条形执行时,程序会变得非常混乱。 非常感谢) 所以你只需确定什么时候有一个新栏打开并执行你的功能。 你可以通过记忆条形图的开盘时间 来确定新条形图的出现,然后将其与条形图0的当前时间进行比较。如果新的时间比之前的时间长,那么我们就有了一个新的柱子。 Иван 2012.03.19 22:01 #6439 sergeev 谢谢你的建议,它似乎是有效的) 好吧,还有一件事。 在我的EA中,我有这个分支。 if(period=="M15") { //检查打开买入 Alert(buyysell); if(buysell=="buy") 警报(1)。 ............. } 基本上,嵌套的if。但是,条件if(period=="M15")得到满足,Alert给出了一个结果,并且买入,但是条件if(buysell=="buy")没有得到满足,Alert(1)命令甚至没有启动。 [Deleted] 2012.03.19 22:03 #6440 sergeev: 所以你只需确定什么时候有一个新栏打开并执行你的功能。 你可以通过记忆条形图的开盘时间来确定新条形图的出现,然后将其与条形图0的当前时间进行比较。如果新的时间比以前的时间长,那么你就有一个新的条形图。 我将把它写下来。 int time.marker; void start() { if(time.marker!=Time[0]) { time.marker=Time[0]; // тут то что буде исполнятся только на открытии бара } // тут то что буде исполнятся на каждом тике } 1...637638639640641642643644645646647648649650651652 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
问题是,我不太擅长MQL编程,我的EA是基于BASIC原则=)一个变量被分配给一个开放的订单。终端说我已经被重新登录了,而且这个变量的值在订单打开时消失了。我想,如果订单被重新登录,应该怎么做? 如果发生这种情况,终端应该检查未结头寸,并将这些值分配给机器人已经分配的变量。而专家顾问在测试中显示出良好的读数。
根据你想存储的内容(什么信息),可以使用不同的选项。
如果你不介意的话,这里有一个例子。据我所知,在执行循环之前,数据不会被更新?
在这个无休止的循环中,是否只能使用相同的数据?数据是否会随着新的刻度线而更新?
问题是,我不太擅长MQL编程,我的EA是基于Bacyca原则的=)一个变量被分配给一个开放的订单。终端说我已经被重新登录了,而且这个变量的值在订单打开时消失了。我想知道如何让它在有超额记录的情况下检查未结头寸,并将这些值分配给机器人已经分配的变量。
你说的是神奇的数字吗?没有足够的信息来帮助你......变量是什么,如何分配的--这就是你需要的出发点。
但我的专家顾问在测试中显示出良好的结果。
在这个无休止的循环中,是否只能使用相同的数据?数据是否会随着新的打勾而更新?
在这个无休止的循环中,是否只能使用相同的数据?数据是否会随着新的勾号而更新?
请告诉我是否有一个内置的功能,我可以在每个条形的开盘时运行我写的一些功能,而不是在每个点上。 用手写并不难,但当一些代码按点执行,一些按条形执行时,程序会变得非常混乱。 非常感谢)
所以你只需确定什么时候有一个新栏打开并执行你的功能。
你可以通过记忆条形图的开盘时间 来确定新条形图的出现,然后将其与条形图0的当前时间进行比较。如果新的时间比之前的时间长,那么我们就有了一个新的柱子。
sergeev 谢谢你的建议,它似乎是有效的)
好吧,还有一件事。
在我的EA中,我有这个分支。
if(period=="M15")
{
//检查打开买入
Alert(buyysell);
if(buysell=="buy")
警报(1)。
.............
}
基本上,嵌套的if。但是,条件if(period=="M15")得到满足,Alert给出了一个结果,并且买入,但是条件if(buysell=="buy")没有得到满足,Alert(1)命令甚至没有启动。
所以你只需确定什么时候有一个新栏打开并执行你的功能。
你可以通过记忆条形图的开盘时间来确定新条形图的出现,然后将其与条形图0的当前时间进行比较。如果新的时间比以前的时间长,那么你就有一个新的条形图。
我将把它写下来。