Обычно в названии функции стремятся отобразить ее основное назначение. Читабельные программы, как правило, содержат разнообразные и грамотно подобранные идентификаторы. Иногда различные функции используются для одних и тех же целей. Например, рассмотрим функцию, которая вычисляет среднее значение массива чисел двойной точности, и такую же...
В настоящее время мультивалютных торговых систем, индикаторов и экспертов разработано огромное количество. Тем не менее, до сих пор создатели этого "огромного количества" сталкивались со специфическими для мультивалютных систем трудностями. С выпуском в свет терминала MetaTrader 5 и языка программирования MQL5 появилась возможность реализации...
I'm sure all of you use the crosshair tool on MetaTrader's charts. It's very useful to measure distance in bars or points between 2 spots. Yet I was always wondering, why it does not provide an option to show profit value, margin level, drawdown or gain percentage in addition to points. To remedy this problem I've developed a MQL program, which...
不要告诉我,发现了一个功能,主持人仍然没有固定的一个主要功能,花了很多时间阅读和搜索它
https://www.mql5.com/ru/docs/basis/function/functionoverload
https://www.mql5.com/ru/docs/basis/function/functionoverload
明白了,谢谢。
Konstantin Gruzdev,特别感谢
在MetaTrader 5中实施多币种模式应用
结果
应用
结果
如果有可能使用MQL来描述一个函数,其参数的数量没有被定义,例如
Print(arg1,arg.......)或StringConcatenate(string_var,void argument1,void argument2, .......)
如果可以用MQL来描述一个具有未定义参数数量的函数,比如说
Print(arg1,arg.......)或StringConcatenate(string_var,void argument1,void argument2, .......)
有可能想出一些基于宏的东西,但它是拐杖式的。
模板+传递数组/结构可以实现许多想法。
有可能想出一些基于宏的东西,但这是一个拐杖。
模板+传递数组/结构使许多想法得以实现。
谢谢,我也是这么想的,原则上没有必要,但看着你的代码,我想,如果你能做到这一点呢?
关于交易、自动交易系统和交易策略测试的论坛
mql5语言的特点、技巧和窍门
fxsaber, 2017.02.27 18:40
bool MyOrderCalcMargin( const ENUM_ORDER_TYPE action, const string symbol, const double volume, const double price, double &margin )
这里有 一个跨平台的教授实现。
想象一下,如果你写"=="而不是"=",要花多长时间才能在大段代码中找到一个错误。另一方面,在这里,由于const的存在,编译器本身会一次性告诉你一切。
fxsaber:
想象一下,如果把"=="写成"=",而不是"=",要花多长时间才能在一大段代码中找到一个错误。另一方面,在这里,由于const的存在,编译器本身会一次性告诉你一切。
在这种情况下,你可以用一个常数开始比较,这就更好了。
在这种情况下,你可以用一个常数开始比较--那就更好了。
是的,我刚刚为这种情况创建了一个例子
if (Trans.type = Variable)