新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 160

 

我不想做一个新的话题,我不明白EA是如何运作的,也许我的长辈们会告诉我一些东西。

我的专家顾问中使用了几个指标。

但在日志中我可以看到,其中一个不断被EA加载,然后又被卸载。我不理解这种行为。

它说uninit reason 1,这是什么意思?其他指标没有 被卸下,因为

2017.03.21 12:12:25.316 MTF_WPR USDRUR,H4: uninit reason 1
2017.03.21 12:09:06.551 MTF_WPR USDRUR,H4: initialized
2017.03.21 12:09:06.551 Custom indicator MTF_WPR USDRUR,H4: loaded successfully
2017.03.21 12:07:15.316 Custom indicator MTF_WPR USDRUR,H4: removed
2017.03.21 12:07:15.316 MTF_WPR USDRUR,H4: uninit reason 1
2017.03.21 12:04:12.957 MTF_WPR USDRUR,H4: initialized
2017.03.21 12:04:12.957 Custom indicator MTF_WPR USDRUR,H4: loaded successfully
2017.03.21 11:43:29.316 Custom indicator MTF_WPR USDRUR,H4: removed
2017.03.21 11:43:29.316 MTF_WPR USDRUR,H4: uninit reason 1
2017.03.21 11:38:04.097 MTF_WPR USDRUR,H4: initialized
2017.03.21 11:38:04.097 Custom indicator MTF_WPR USDRUR,H4: loaded successfully
2017.03.21 11:36:15.316 Custom indicator MTF_WPR USDRUR,H4: removed
2017.03.21 11:36:15.316 MTF_WPR USDRUR,H4: uninit reason 1
2017.03.21 11:30:11.582 MTF_WPR USDRUR,H4: initialized
2017.03.21 11:30:11.582 Custom indicator MTF_WPR USDRUR,H4: loaded successfully
2017.03.21 11:06:17.316 Custom indicator MTF_WPR USDRUR,H4: removed
2017.03.21 11:06:17.316 MTF_WPR USDRUR,H4: uninit reason 1
 
harbor:

我不想做一个新的话题,我不明白EA是如何运作的,也许我的长辈们会告诉我一些东西。

我的专家顾问中使用了几个指标。

但在日志中我可以看到,其中一个不断被EA加载,然后又被卸载。我不理解这种行为。

它说uninit reason 1,这是什么意思?其他指标没有 被卸下,因为

在iCustom()中不正确地设置指标参数
 
谢谢你,我想是的。
 
Artyom Trishkin:

在这个主题中,我想开始帮助那些真正想了解和学习新的MQL4的编程,并想轻松切换到MQL5的人--这些语言非常相似。

这将是一个讨论任务、其解决方案的算法和任何其他问题的好地方,无论如何,与MT编程有关。

我希望我们论坛的其他有经验的成员能加入我们,这个主题会引起大家的兴趣。


你好


我有这样一个问题。如何在MQL4m中编写代码?例如,我需要将价格相加,然后除以这些价格的数量。考虑一下:1,05000+1,06000+1,07000+1,08000:4= 1,06500



非常感谢您!

 
isiklik:


你好

我有一个问题。我如何在MQL4中编写代码?例如,我需要将价格相加,然后除以这些价格的数量。例如:1,05000+1,06000+1,07000+1,08000:4=106500。

非常感谢您!

double res=(1.05+1.06+1.07+1.08)/4.0;
 
Artyom Trishkin:

非常感谢你,Artyom!


变老并不是一件快乐的事!我忘记告诉你最重要的事情了。

假设我在MT4中以不同的价格在一个方向上有N个交易

如何编写代码,MT4会从图表中获取这些价格,将其相加,除以一个方向的未平仓交易数量。然后增加200点。

获得的价格将在TakeProfit中规定这些交易。

现在我希望这就是全部。:)


非常感谢您!

 
isiklik:

非常感谢你,Artyom!


变老并不是一件快乐的事!我忘了告诉你最重要的事情。

假设我在MT4中以不同的价格在一个方向上有N个交易

如何编写代码,MT4会从图表中获取这些价格,将其相加,除以一个方向的未平仓交易数量。然后增加200点。

获得的价格将在TakeProfit中规定这些交易。

现在我希望这就是全部。:)


非常感谢您!

你需要计算盈亏平衡价格,并在此基础上加上/减去N个点。查一查,或者看看如何计算收支平衡
 
Vitaly Muzichenko:
你需要计算盈亏平衡价格,并在此基础上增加或减少N个点。查一查,或者看看如何计算收支平衡

不,我没有,为什么我需要收支平衡?我需要计算未结订单的数量,给他们一个总的Take。
 
Maxim Kuznetsov:

你可以计算出 "多少个柱子后会有一个交叉点"(只是学校的几何学)。

而由此得出的日期只能是近似的,条形图只在市场开放时形成,也就是说,每个工具的条形图是不同的。

简化,如果你提前知道日历。

  • 在当前日期的基础上增加24小时,如果它变成了星期六/星期日,你就跳过它,如果它是一个普通的日历假日,你就跳过它,如果它是一个银行假日,你就跳过它。
  • 对于W1和更高版本,你应该考虑到每周的酒吧从周六开始到周日,M1--如日历所示。
  • 对于少于一天的TF,你还必须考虑到市场的开/关时间 和你的DC的时间表
  • 当你改变日期时(在早上,在第一个点),你必须重新进行以前的所有计算。

太乱了,这在MT中是个大问题 :-)


如果你有一个星期的时间,你应该把它考虑在内。

 
isiklik:

非常感谢你,Artyom!


变老并不是一件快乐的事!我忘了告诉你最重要的事情。

假设我在MT4中以不同的价格在一个方向上有大量的交易

如何编写代码,MT4会从图表中获取这些价格,将其相加,除以一个方向的未平仓交易数量。然后增加200点。

获得的价格将在TakeProfit中规定这些交易。

现在我希望这就是全部。:)


非常感谢您!

你在你的账户中循环查看所有未结头寸,并按魔法数字和类型过滤。
如果你得到了正确的头寸类型,你就把时间阵列的大小增加1,并把这个头寸的开盘价输入其中。
当循环完成后,你将得到一个包含所有必要头寸的开盘价的数组。
在循环中,将数组中的所有数值相加,在循环结束时,用所得数值除以数组的大小。
就是这样--你有一个计算好的价格。现在将所需的点数*Point()加入其中。
下一个有趣的事情是--如果获得的价格低于开仓价(买入),它将不是获利,而是止损。
原因: