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

 
Seric29:
谁能帮助解决这个问题的家伙。我想声明一个 未定义类型或任意类型的全局变量。然后这个变量将在应用模板的函数中使用。换句话说,我调用函数并采取任何类型的数组,然后将进行计算,结果将由函数返回,同时也将分配给这个变量。我想把这些参数的计算结果存储在一个变量中,这样我就不必两次调用这个函数了。我怎样才能找到检查最少的通用解决方案,我能否转换变量类型或用宏声明它为变量,我可以做什么?

如果我理解正确,那么

https://www.mql5.com/ru/docs/basis/oop/templates

Документация по MQL5: Основы языка / Объектно-ориентированное программирование / Шаблоны функций
Документация по MQL5: Основы языка / Объектно-ориентированное программирование / Шаблоны функций
  • www.mql5.com
Перегруженные функции обычно используются для выполнения похожих операций над различными типами данных. Простой пример такой функции в MQL5 - ArraySize(), которая возвращает размер массива любого типа. На самом деле эта системная функция является перегруженной, и вся реализация такой перегрузки спрятана от разработчика программ на MQL5: То есть...
 
leonerd:

我不太理解这个评论。您可以开设一个锁定头寸(与开仓头寸相反),其自由保证金低于新开仓订单的保证金(不在锁定中)。那么100%在哪里呢?

例子。

美元兑日元货币,杠杆率1:100。批量0.1,保证金为100

根据规范,套期保值保证金为50000,这意味着50%的

为了建立锁定头寸,账户中必须有100个以上的资金。否则,将出现一个错误......不记得数字了,一般来说,资金不足。

而只有在开仓后,实际保证金才会根据规范中给出的数值进行修正。

但是,如果账户中只有50个可用资金,那么你可以以0.05的价格开设两次

 
Alekseu Fedotov:

如果我理解正确,那么

https://www.mql5.com/ru/docs/basis/oop/templates

我已经知道了模板技术的使用。这个方法允许你返回一个变量的类型,但它不会将一个变量的类型转换为另一个。这可能是不可能的。

 
Alexey Viktorov:

例子。

美元兑日元货币,杠杆率1:100。批量0.1,保证金为100

根据规范,套期保值的保证金是50,000,也就是50%。

要开立锁定头寸,账户中必须有100以上的资金。否则,将出现一个错误......不记得数字了,一般来说,资金不足。

而只有在开仓后,实际保证金才会根据规范中的数值进行修正。

但是,如果账户中只有50个免费资金,那么你可以以0.05的价格开立两次

好吧,也许是这样的情况。我们应该去看看。

我们应该检查一个订单的价格。那么,MQL5函数https://www.mql5.com/ru/docs/trading/ordercalcmargin

订单的开盘价在参数中。它对十字架的作用如何?跨越率是如何运作的?MT5知道如何预测价格吗?

Документация по MQL5: Торговые функции / OrderCalcMargin
Документация по MQL5: Торговые функции / OrderCalcMargin
  • www.mql5.com
Вычисляет размер маржи, необходимой для указанного типа ордера на текущем счете и при текущем рыночном окружении без учета текущих отложенных ордеров и открытых позиций. Позволяет оценить размер маржи для планируемой торговой операции. Значение возвращается в валюте счета. [out]  Переменная, в которую...
 
我下载了mt5的freeNumFractals指标,但fractals在图表上没有更新。

自由数分形

 
Pavel5554:
我已经重新安装了MT5和这个指标,但它没有任何效果。

自由数分形

这个指标是什么?我没有效果,它的链接在哪里?

 
leonerd:

好吧,也许就是这样。我们得去看看。

关于订单的价格。MQL5函数https://www.mql5.com/ru/docs/trading/ordercalcmargin

订单的开盘价在参数中。它对十字架的作用如何?跨越率是如何运作的?MT5能预测价格吗?

好吧,你必须仔细阅读所有内容。引自文件。

该计算是在当前账户中没有挂单和未结头寸的情况下进行的。保证金的价值取决于许多因素,并可能在市场环境变化时发生变化

计算过程是这样进行的...即获得的数值将不考虑打开的位置,只有当相反的位置被打开时,才会根据规格进行修正。这就是我所说的。

保证金价值...悬而未决的订单是 "从后台 "计算出来的,可能与真实值不一致。

 
Sergey Voytsekhovsky:

伟大的建议和对未来的伟大科学!!!。甚至比这更进一步。下面是结果。

因此,它是。

所以就变成了,这个方法的有效性是显而易见的!!!。谢谢你。

感谢Sergei和Alexey提供的彩色随机指标。你是非常好的。尊重!

 
如何使我的指标出现在主窗口而不是主图表中(我的指标是以条形形式 建立的)。

这样,我的指标数据将取代图表数据。

而且,客户终端的所有标准指标都可以在这个新的图表上抛出。并让这些指标在我的指标数据上工作,而不是在价格条上。
 

有一个这样的问题。因此,有一个循环

     for(...........)              
     {if(.........){ что-то делаем}else
      if(.........){ break}else{ break;}} 

第1个断点 不是位于循环的第一个小括号内,而是位于嵌套在小括号内的小括号内。 第2个断点 嵌套在小括号内,甚至更深。正如我所理解的,在这种情况下,break 根本不起作用,说实话,我不明白它是否起作用,但程序挂起了,并进行了不必要的反复。为了退出一个有很多条件的循环,我给循环添加了一个退出标志。也许在我看来,它不起作用,谁在这个问题上想过?

原因: