初学者的问题 MQL5 MT5 MetaTrader 5 - 页 1154

 
SEM:

试图将卖出的获利点正常化

SYMBOL_DIGITS也是一个常数。它不会返回" 符号引号中的小数位数"。它告诉SymbolInfoInteger() 要返回哪个整数字符属性的值。
Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация об инструменте
Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация об инструменте
  • www.mql5.com
Для получения текущей рыночной информации служат функции SymbolInfoInteger(), SymbolInfoDouble() и SymbolInfoString(). В качестве второго параметра этих функций допустимо передавать один из идентификаторов из перечислений ENUM_SYMBOL_INFO_INTEGER, ENUM_SYMBOL_INFO_DOUBLE и ENUM_SYMBOL_INFO_STRING соответственно. Некоторые символы (как...
 
Artyom Trishkin:
SYMBOL_DIGITS也是一个常数。 它不返回" 符号引号中的小数位数"值。它告诉SymbolInfoInteger() 要返回哪个整数字符属性的值。

好吧,那么你如何使卖出的TP正常化?

  Print(NormalizeDouble(SymbolInfoDouble(Symbol(),SYMBOL_POINT),(int)SymbolInfoInteger(Symbol(),SYMBOL_DIGITS)));

还返回不清楚 = (EURUSD,M15) 1e-05

 
SEM:

好吧,那么如何使卖出的TP正常化?

还返回不清楚 = (EURUSD,M15) 1e-05

1e-05是1的负五次方,即0.00001。他们在高中时都教了你什么?

 
SEM:

好吧,那么如何使卖出的TP正常化?

还返回一个难以理解的=(EURUSD,M15)1e-05

你已经为机器人规范化了。

你需要使用DoubleToString 来输出到打印纸上

 Print(DoubleToString(SymbolInfoDouble(Symbol(),SYMBOL_POINT),(int)SymbolInfoInteger(Symbol(),SYMBOL_DIGITS)));
 
Vitaly Muzichenko:

对于你已经规范化的机器人。

你需要使用DoubleToString 来输出到打印纸上

谢谢你的帮助!一句话。

double _SYMBOL_POINT_ = SymbolInfoDouble(Symbol(),SYMBOL_POINT);
int _SYMBOL_DIGITS_   = (int)SymbolInfoInteger(Symbol(),SYMBOL_DIGITS);


{
  double _PriceCurrent_TakeProfit =NormalizeDouble(m_position.PriceOpen()-(TakeProfit*_SYMBOL_POINT_),_SYMBOL_DIGITS_) ;
  double _PriceCurrent=NormalizeDouble(m_position.PriceCurrent()-(TakeProfit*_SYMBOL_POINT_),_SYMBOL_DIGITS_);
}
 
Franklins100:

这是个想法,但在我看来,交叉测试不会产生准确的结果。测试,同样在我没有经验的意见中,应该在一个最终的、完整的版本中进行。而这里的问题是--如何以及通过什么计算机参数可以尽可能地加快测试速度,而不诉诸于使用第三方力量。GPU还是CPU?

交叉测试与直接测试一样准确。如果你了解所有的变量,你在把变量分成组的时候,为变量指定一个可接受的步骤。然后,根据三维图像,你可以为每组变量选择一组或多组数值作为测试运行的结果。最后你运行一个参数范围窄、离散性高的全面测试。

我每周六都会运行一个这样的专家顾问。超过300个变量。在白天,我进行交叉测试。然后我在夜间运行主要的那台。周日,我分析了结果。我分析了与上周的节目相比有什么变化。然后,根据情况,我有时会进行额外的测试。我在两台电脑上运行一切。

最后,它需要大约30个机器小时。如果我直接运行它,我想电脑会冻结:)两个星期。你知道,你必须做你能做的事情来使其发挥作用。

测试的速度会影响到核心处理器(确切地说,是MT5)。

我花了很长时间来进行最开始的测试。现在我已经运行了一个星期。我认为每个EA都有自己的微妙之处。我只是简单地引入了系数,基本参数的变化非常少。事实证明,我主要是针对波动性进行调整。另外,我有一个严肃的新闻模块,按新闻类型进行单独分类,而不仅仅是三颗星:)一般来说,我认为 "新闻 "是所有EA中最薄弱的地方。此外,还有 "合同变更"、"期权到期 "的时期。他们也是值得合作的。

 
Franklins100:

这是个想法,但在我看来,交叉测试不会产生准确的结果。测试,同样在我没有经验的意见中,应该在一个最终的、完整的版本中进行。而这里的问题是--如何以及通过什么计算机参数可以尽可能地加快测试速度,而不诉诸于使用第三方力量。GPU还是CPU?

有一个关于测试的主题:评估CPU核心的优化 情况

Оцениваем ядра CPU для оптимизации
Оцениваем ядра CPU для оптимизации
  • 2019.08.09
  • www.mql5.com
Предлагаю собрать статистику по производительности разных процессоров с целью оценки их эффективности для работы тестера стратегий в режиме оптимиз...
 
Vladimir Karputov:

有一个关于测试的话题:评估CPU核心的优化情况

BenditO:

交叉验证与直接测试一样准确。如果你了解所有的变量,你在分组时为变量指定一个可接受的步骤。根据三维视图,你可以根据结果为每组变量选择一组或多组数值。最后你运行一个参数范围窄、离散性高的全面测试。

我每周六都会运行一个这样的专家顾问。超过300个变量。在白天,我进行交叉测试。然后我在晚上运行主要的那台。周日,我分析了结果。我分析了与上周的节目相比有什么变化。然后,根据情况,我有时会进行额外的测试。我在两台电脑上运行一切。

最后,它需要大约30个机器小时。如果我直接运行它,我想电脑会冻结:)大约两个星期。你知道,你必须做你能做的事情来使其发挥作用。

测试的速度会影响到核心处理器(确切地说,是MT5)。

我花了很长时间来进行最开始的测试。现在我已经运行了一个星期。我认为每个EA都有自己的微妙之处。我只是简单地引入了系数,基本参数的变化非常少。事实证明,我主要是针对波动性进行调整。另外,我有一个严肃的新闻模块,按新闻类型进行单独分类,而不仅仅是三颗星:)一般来说,我认为 "新闻 "是所有EA中最薄弱的地方。此外,还有 "合同变更 "和 "期权到期 "的时期。我也有他们的工作。

非常感谢你。

 

大家好!

我正在努力学习MQL5的基本知识,但我在编译从MQL5参考资料 中复制的代码时,突然遇到了附图中显示的警告信息。

我想知道在MQL5参考 中是否也有一些错误。请你告诉我,在代码中应该如何修正(MQL5参考文献 本身也会很有用),以避免这样的警告?

真诚的,弗拉基米尔。




Документация по MQL5 - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
Документация по MQL5 - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
  • www.mql5.com
MetaQuotes Language 5 (MQL5) - язык программирования технических индикаторов, торговых роботов и вспомогательных приложений для автоматизации торговли на финансовых рынках. MQL5 является современным языком высокого уровня и разработан MetaQuotes Software Corp. для собственной торгово-информационной платформы. Синтаксис языка максимально близок...
 
MrBrooklin:

大家好!

我正在努力学习MQL5的基本知识,但我在编译从MQL5参考资料 中复制的代码时,突然遇到了附图中显示的警告信息。

我想知道在MQL5参考 中是否也有一些错误。请你告诉我,在代码中应该如何修正(MQL5参考文献 本身也会很有用),以避免这样的警告?

真诚的,弗拉基米尔。

是的,《帮助》中存在一些不准确的地方。