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

 
Maxim Kuznetsov:

你知道,对于这样的事情,https://www.mql5.com/ru/job

和这里--如果你开始自己做,但没有成功,或者你不理解。

至少有30个,我愿意去想办法,而且我愿意感谢提供解决方案的人。

对不起,我不在 https://www.mql5.com/ru/forum/347770/page6#comment_18190964
 

方法在哪里,它们是什么,它们是如何工作的?

输入ENUM_MA_METHOD Method=MODE_SMA。

Label1Buffer[i] = iMA(NULL,0,SMA1,0,Method,PRICE_CLOSE,i - SMA1/2);

我找不到关于这个奇迹的描述!

 
neverness:

方法在哪里,它们是什么,它们是如何工作的?

输入ENUM_MA_METHOD Method=MODE_SMA。

Label1Buffer[i] = iMA(NULL,0,SMA1,0,Method,PRICE_CLOSE,i - SMA1/2);

我找不到关于这个奇迹的描述!

把你的光标放在编辑器中的ENUM_MA_METHOD上,按F1,然后"...启蒙精神为我们准备了多少奇妙的发现啊...... "
 
Artyom Trishkin:
把你的光标放在编辑器中的ENUM_MA_METHOD处,按F1,然后"...哦,启蒙的精神为我们准备了多少奇妙的发现 ......"

那又怎样?变成了

如何在Windows 10中获得帮助

我为什么要在windows10中需要帮助?

如何在MQL中创建一个自定义的METHOD?

 
neverness:

那又怎样?变成了

如何在Windows 10中获得帮助

为什么我在windows10中需要帮助?

你能翻译这个信息吗?即使没有翻译,这也不是一个关于windows10帮助的问题,而是 "你想在windows10中如何获得帮助?"

事实证明,你没有设置任何东西来打开帮助文件

没有时间去猜测。

但对其他人来说,当你在MetaEditor中按下F1函数、枚举等时,它会打开MQL的主题帮助,即光标所在的代码。

 

你好 @Artyom Trishkin ,

我有一个问题。我希望你能帮助我。

我想知道如何计算已开仓的保证金。

我有这个: https://www.mql5.com/en/docs/constants/environment_state/marketinfoconstants#enum_symbol_info_double

在那里,它说了这样的话。

符号_计算_模式_外汇

Mode forex - 外汇的利润和保证金计算

保证金:手数 * 合同大小 / 杠杆 * 保证金

利润:(close_price - open_price) * Contract_Size * Lots


但我不知道该放什么值,也不知道如何获得显示在工具条上的字段值。

工具栏上显示的是所有货币,但我想单独获得符号的值。

你能帮助我吗?

Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация об инструменте
Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация об инструменте
  • www.mql5.com
Для получения текущей рыночной информации служат функции SymbolInfoInteger(), SymbolInfoDouble() и SymbolInfoString(). В качестве второго параметра этих функций допустимо передавать один из идентификаторов из перечислений ENUM_SYMBOL_INFO_INTEGER, ENUM_SYMBOL_INFO_DOUBLE и ENUM_SYMBOL_INFO_STRING соответственно. Некоторые символы (как правило...
 
jaffer wilson:

你好 @Artyom Trishkin ,

我有一个问题。我希望你能帮助我。

我想知道如何计算已开仓的保证金。

我有这个: https://www.mql5.com/en/docs/constants/environment_state/marketinfoconstants#enum_symbol_info_double

在那里,它说了这样的话。

符号_计算_模式_外汇

Mode forex - 外汇的利润和保证金计算

保证金:手数 * 合同大小 / 杠杆 * 保证金

利润:(close_price - open_price) * Contract_Size * Lots


但我不知道该放什么值,也不知道如何获得显示在工具条上的字段值。

工具栏上显示的是所有货币,但我想单独获得符号的值。

你能帮助我吗?

将位置符号、类型和批号传递给函数。 函数将返回保证金。

double  SymbolMargin(string aSymbol, ENUM_ORDER_TYPE aType = ORDER_TYPE_BUY, double aLot = 1.0)
  {

   double margin = 0;

   MqlTick m_tick;
   if(SymbolInfoTick(aSymbol , m_tick))
     {
      if(m_tick.ask != 0.0)
         if(OrderCalcMargin(aType, aSymbol , aLot, m_tick.ask, margin))
            return (margin * aLot);
      if(m_tick.bid != 0.0)
         if(OrderCalcMargin(aType, aSymbol , aLot, m_tick.bid, margin))
            return (margin * aLot);
     }

   return -1;
  }


 
Artyom Trishkin:

你能翻译这个信息吗?即使没有翻译,你也可以看到这个问题不是关于windows10的帮助,而是 "你想如何在windows10中获得帮助?"。

事实证明,你没有配置用什么打开帮助文件

没有时间去猜测。

然而,在MetaEditor中,在一个函数、枚举等上按下F1,就会在代码中光标所处的位置打开该主题的MQL帮助。

我可以在没有F1的情况下打开MQL帮助。

它已经开放了。因此,你的 "顽皮的孩子气的聪明",带着孩子气的惊讶色彩,是不合适的。

我在帮助中找不到一个简单问题的答案。

如何在MQL中创建一个自定义的METHOD?

还是说这在MQL中是不可能的?

 
neverness:

我可以在没有F1的情况下打开MQL帮助。

而且我已经打开了它,因为它是。所以你的 "顽皮的孩子气的聪明",孩子气的惊讶的颜色,是不合适的。

我在帮助中找不到一个简单问题的答案。

如何在MQL中创建一个自定义的METHOD?

还是在MQL中不可能?

我想了想,决定用24小时的时间来阅读有关良好礼仪规则的书籍,对你有好处。粗鲁从来没有使一个人变得美丽。

一个方法就是一个函数。方法通常被称为一个类的函数。也就是说,一个类的方法不过是一个普通的函数。但是一个类的方法只属于它的类,并且可以从外部访问,或者只在类本身或其后代中访问。方法的可访问性是由它的指定符 决定的--在类的哪个区域声明了一个方法,这样的访问将应用于该方法(public--公共方法,protected--受保护,private--私有,hidden,virtual--虚拟)。

但你最初的问题是关于常数ENUM_MA_METHOD,而不是关于方法。

一个恰当的问题是答案的一半(你从来没有得到过这个答案--你更喜欢无礼)。

 
Vladimir Pastushak :

将位置符号、类型和批号传递给函数。 函数将返回保证金。



@ Artyom Trishkin @ Vladimir Pastushak

在我的情况下不起作用。我不是在要求一个新的职位。我知道它为一种类型的交易计算并返回保证金。但如果交易已经开始,而我想知道某一特定符号的一笔交易所消耗的保证金,那就没有用了。

你能帮助我吗?如果你不理解我的情况,请告诉我。

简单解释一下这个场景。

你在ToolBox中看到这个字段。

这是符号的保证金:AUDJPY、EURUSD和EURTRY。

我知道我可以用AccountInfoDouble(ACCOUNT_MARGIN)得到这个值。但我无法得到一个特定符号的值。例如,我想知道EURUSD消耗了多少保证金。我不能履行任何职能。因此,我想知道如何才能计算出来。

我希望这个解释足够有意义。

原因: