文章 "创建一个在若干工具上交易的 EA 交易程序"

新文章 创建一个在若干工具上交易的 EA 交易程序已发布:

金融市场中资产的多样化是一个非常旧的概念,并且始终吸引着新入门的交易者。在本文中,作者提出了一个最简单的方法用以构建一个多货币 EA 交易程序,以便对这种方向的交易策略提供一个初步介绍。

图 9. 多重随机动量指标

作者:Nikolay Kositsin

  1. 非常感谢作者的文章。

  2. 在 Expert Advisor 参数和其他测试条件不变的情况下,为什么在测试仪中选择一种工具会影响测试结果?

欧元兑美元

英镑兑美元

美元兑日元

    3.在其他条件不变的情况下,Expert Advisor 的工作结果是否取决于图表的选择和 Expert Advisor 附件图表的周期?

    4.为什么在

    dtema2 = NormalizeDouble(TEMA[2] - TEMA[3], _Digits + 4); dtema1 = NormalizeDouble(TEMA[1] - TEMA[2], _Digits + 4);

    而不是

    _Digits

而不是

SymbolInfoInteger(Symbol_, SYMBOL_DIGITS)

为什么 _Digits 值增加了 +4?

ias:
  1. 在 EA 参数和其他测试条件不变的情况下,为什么在测试器中选择的工具会影响测试结果?

我只能认为这与 tick 生成算法有关。请阅读https://www.mql5.com/ru/forum/1031。

我在那里得出了一个结论:您只能相信开盘价测试模式,试试看,也许结果会一致。

Обсуждение статьи "Алгоритм генерации тиков в тестере стратегий терминала MetaTrader 5"
Обсуждение статьи "Алгоритм генерации тиков в тестере стратегий терминала MetaTrader 5"
  • www.mql5.com
Обсуждение статьи "Алгоритм генерации тиков в тестере стратегий терминала MetaTrader 5".
ias:

2. 很难说!我自己也很好奇!

3.由于显而易见的原因,它们将取决于图表的周期!但是,根据 Expert Advisor 所处的芯片不同,应该不会有严重差异。在现实生活中,所有芯片上的 ticks 对OnTick() 函数 的勾选方式都不一样,但在大的时间框架上,差别应该还是很小的。

4.感谢您检测到的错误,我们会修复的!精度提高了四位数,以消除 dtema1 和 dtema2 值可能等于零的情况。谁喜欢什么,这是个品味问题。

Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
Основы языка / Функции / Функции обработки событий - Документация по MQL5

5.是否允许使用

ENUM_TIMEFRAMES timeframe=0
в
if (IsNewBar(Number, Symbol_, 0) || Recount[Number])
进行测试?
ias:

是否允许用于

在测试中使用?
没问题!
ias:

为什么在测试仪中选择一个工具,在专家顾问参数和其他测试条件不变的情况下,会影响测试结果?

因为 MT5 存在故障!

例如,如果在欧元兑美元图表上叠加了另一种工具的曲线,那么测试结果就会发生变化。

#property indicator_separate_window ....

copied=CopyClose(InstrumentName,0,0,CountsBars,Buffer);

如果是 EURJPY - 一切正常,但如果是 EURCAD,数据有时会出错

如果是 EURCAD,一切正常。

在 Alpari 上为 90%,在其他平台上较少。

总之,有些工具没有合并!

对于多币种系统来说,更合理的做法是在定时器上处理主要算法,这样就不会依赖于主要交易工具(Expert Advisor "挂起 "的交易工具)上刻度线流动的强度。 只有在这种情况下,多币种测试的结果才会与测试期间选择的任何交易工具相同。
Kos:

对于多币种系统而言,通过计时器处理主算法更符合逻辑,这样就不会依赖于主工具(Expert Advisor "挂起 "的工具)上刻度流的强度。 只有在这种情况下,对于测试期间选择的任何工具,多币种测试的结果都是相同的。
在 MQL4 中,没有定时器时一切正常。
[删除]
Kos:

对于多币种系统来说,更合理的做法是在定时器上处理主算法,这样就不会依赖于主要交易工具(EA "挂起 "的工具)上的跳动强度。 只有在这种情况下,多币种测试的结果才会与测试期间选择的任何交易工具相同。

这一点我已经说了很久。:)

在现有的 Expert Advisor 中,定时器的作用甚至连其应有作用的 10%都达不到。

根据参数管理某些工具的交易可能性的想法很好(我自己从 MT4 开始就使用此类工具),但实施起来却很蹩脚。

在我看来,货币应该按某种属性分成若干组,并在参数中管理整个组,最后在变量或数组(取决于实现方式)的层面上对每个工具分别进行工作。

[删除]
gisip:
在没有定时器的 MQL4 中,一切运行正常。

MQL4 中不存在定时器,也没有结构和类,您建议在这里放弃它们吗?


我认为

使用或不使用标准库是 每个人的喜好问题(在最坏的情况下,您可以只使用自己的代码),但仅仅因为 MT4 中不存在这些 就放弃所有的优点是不太合理的.....。

要添加评论,请登录注册