关于插图。
没有插图,只有说明。
"这是 EA 的 MM(资金管理)的一种附加功能,可防止 EA 在账户上造成重大损失"。
Expression:
"// Lot limit from below:
if( lots < min_trade_volume )
{
lots = min_trade_volume;
}"
may allow.
See, for example, https://www.mql5.com/ru/forum/124281/page2#283533
- www.mql5.com
您可能需要阅读一下链接。
这是一个常见错误。
如果能提供一个链接供您阅读,将会很有帮助。
这是一个常见的错误。
当交易量因 "正常化 "或其他目的而发生变化时,总风险值也会发生变化。
这是一种态度。
此外,还规定:"本方法返回最接近底部的 手数价值"。
而在
"// Lot limit from below:
if( lots < min_trade_volume )
{
lots = min_trade_volume;
}"
返回的是最靠近顶部的 值,而且可能相差很多很多倍......
更简单、更可靠的交易量计算示例见 https://www.mql5.com/en/forum/112782。
尤其是
"if ( SizeLimit >= MinLots )
{ int Steps = MathFloor ( ( SizeLimit - MinLots ) / LotStep ) ;
LotSize = MinLots + Steps * LotStep ; }
否则 LotSize = 0 ;
if ( LotSize >= MaxLots )
LotSize = MaxLots ;
"
没有必要使用 NormalizeDouble() 函数。
该方法适用于最小交易量、步长和小数位的任何值。
我希望您最终修正后的方法也是如此。
- www.mql5.com
新文章 “EA 交易”运行期间平衡曲线斜率的控制已发布:
作者:Dmitriy Skub