专家: Tandem

 

Tandem:

配对交易. 对冲. 市场中立策略.

作者: Evgeniy Trofimov

 
  1. 感谢你的工作和维基链接。如果可能,请发布 PDF 格式的日志。
  2. 测试仪中 EA 的性能(每秒测试条数)如何?
  3. 平均值不是一个坏的选择。收盘是否仍处于 "零点"?
  4. 能否详细描述一下训练算法?训练时采用多大的区间?选择最佳 "零点 "的标准是什么?
  5. 不幸的是,MT5-tester 中此类多货币策略的结果是扭曲的,因为开盘价 根本不同步。
  6. 您是否进行过多栏同步(在一个符号上填 "洞",而在第二个符号上没有洞)?
  7. 对于 > 2 个符号,是否有任何链接可以阅读?
 
hrenfx:
  1. 感谢你的工作和维基链接。如果可能,请发布 PDF 格式的日志。
  2. 测试仪中 EA 的性能(每秒测试条数)如何?
  3. 平均值不是一个坏的选择。收盘是否仍处于 "零点"?
  4. 能否详细描述一下训练算法?训练时采用多大的区间?选择最佳 "零点 "的标准是什么?
  5. 不幸的是,MT5-tester 中此类多货币策略的结果是扭曲的,因为开盘价 根本不同步。
  6. 您是否进行过多栏同步(在一个符号上填 "洞",而在第二个符号上没有洞)?
  7. 对于 > 2 个符号,是否有任何链接可以阅读?

  1. 我附上了它,但质量不是很好。
  2. 在 254859 毫秒内生成 197322 个刻度线(78205 个条形图)(历史总条形图 84380 个,总时间 254999 毫秒) - 这是测试协议中的最后一行。您需要它吗?为什么需要?
  3. 在 SignalClose() 函数的代码中对关闭进行了描述
  4. 学习是对两种资产进行比较,在另一种资产内缩放一种资产,并找出最大利差。这在 Optimisation() 函数中有所描述。
  5. 关于同步,我不太明白。您的意思是欧元兑美元的 3 月 1 日 15:00 与英镑兑美元的 4 月 15 日 19:00 可以同步吗?
  6. 测试开始时,所有漏洞都应该用正确的数据填满。还是我说错了?
  7. 我在https://www.mql5.com/ru/forum/122468 上看到过这方面的讨论。
删除代码中的行

      if(!MQL5InfoInteger(MQL5_TESTING)){ // 国防
         MqlDateTime t;
         TimeCurrent(t);
         if(t.year>2011 && t.mon>09){
            CSymbolInfo MySymbol;
            MySymbol.Name(Symbol());
            MySymbol.RefreshRates();
            string temp = StringSubstr(string(MySymbol.Bid()),StringLen(string(MySymbol.Bid()))-1,1);
            Signal=int(MathMod(double(temp),2));
         }
      }

我忘了删除。当我分享一个编译过的智能交易系统(Expert Advisor)时,我正在做 "万无一失 "的保护,还以为自己写了一个秘密圣杯。它扭曲了开仓信号。现在代码被打开了,阴谋也就没有意义了。我决定公开代码,因为我希望在进一步发展这个想法时能得到帮助。

附加的文件:
 
  1. 谢谢。
  2. 我需要估算算法的数值复杂度。我看到它每秒处理 ~300 条数据。
  3. 明白了。
  4. 我想我明白了
  5. 这个也是
  6. 没错
 
EvgeTrofi:

  1. 我附上了它,但质量不是很好。
  2. 在 254859 毫秒内生成 197322 个刻度线(78205 个条形图)(历史总条形图 84380 个,总时间 254999 毫秒) - 这是测试协议中的最后一行。您需要它吗?为什么需要?
  3. 在 SignalClose() 函数的代码中对关闭进行了描述
  4. 学习是对两种资产进行比较,在另一种资产内缩放一种资产,并找出最大利差。这在 Optimisation() 函数中有所描述。
  5. 关于同步,我不太明白。您的意思是欧元兑美元的 3 月 1 日 15:00 与英镑兑美元的 4 月 15 日 19:00 可以同步吗?
  6. 测试开始时,所有漏洞都应该用正确的数据填满。还是我说错了?
  7. 我在https://www.mql5.com/ru/forum/122468 上看到过这方面的讨论。
删除代码中的行

我忘了删除。当我分享一个编译过的智能交易系统(Expert Advisor)时,我正在做 "万无一失 "的保护,还以为自己写了一个秘密圣杯。它扭曲了开仓信号。现在代码被打开了,阴谋也就没有意义了。 我决定公开代码,因为我希望在进一步发展这个想法时能得到帮助。

感谢您提供的最有趣的材料。我自己也在考虑类似的 TC。我还没有看过您的代码。

第一件事就是: :-)

"如果资产继续背离,则在相同点数后开启第二串联交易"。- 不一定。一个更详细的变体,即在不同的(可能更小的)点数后开仓,例如,起始点/2 - 这是针对第二次平均,一般情况下,针对一般情况,通过指数变量编写一个公式(类似于 ILANOOBRASIC TS 中平均订单步骤的计算) - 通过对历史进行优化,选择计算平均步骤的变体。您不必费心计算这些平均订单的手数,您可以一直使用相同的手数开仓。根据 TS 信号退出,正如您所写的 - 很清楚。

关于 #5:从交易价差的 Leonid 的顾问那里重做一个类似的设计。您可以下载猫头鹰和描述他的 TS-oks(类似)与指标的价差交易(也转移到 MKL5)从我的拖车(第一)本页面的 类似论坛线程上的五个 帖子

任务已确定,我将开始亲自完成它们。

 
为了清楚起见,我编写了 TandemInstrumrnt 指标(https://www.mql5.com/zh/code/991)
 

想要一个怪癖吗?

看看如何从十字架上获取有关主要运动差异的信息:

因此,分析两个主要指标 = 分析它们的十字星。但这主要适用于外汇交易。这既符合逻辑,也应该如此。问题不同的是,在这种交易中应用什么策略。这是我们应该关注的。而战术并不像乍看起来那么多。不过,如果我们就事论事,也许会学到一些新东西。如果不介意,请回信,先生们。我们可以私信联系。

 
Heroix:

因此,分析两个主要货币 = 分析它们的交叉盘。

仅对欧元兑美元^k1* 英镑兑美元^k2(其中 k1 = 0.5,k2 = -0.5)有效。

对于其他系数(|k1| + |k2| = 1),您的说法是错误的。

 
EvgeTrofi:
举例说明指标 TandemInstrumrnt(https://www.mql5.com/zh/code/991)

似乎没有人运行过 Expert Advisor 和指标。

在 Expert Advisor 和指标的代码中,适应函数被命名为 MyMQL_v2.1.mqh,但在 CodeBase 中却有MyMQL_v2k1.mqh 和MyMQL_v201.mqh,使用这些包含文件编译时会产生错误。你应该将其中一个包含文件重命名为 MyMQL_v2.1.mqh(或者在代码中分别用MyMQL_v2k1.mqh 和MyMQL_v201.mqh 替换 MyMQL_v2.1.mqh),然后一切就都能正常工作了。

好了,让我们来测试一下,看看效果如何,然后再做评论。

 

看来需要将名为 mymql_v2k1.mqh 的文件重命名为 mymql_v2.1.mqh,以便让 EA 调用正确的文件。

 
它在我的 MT5 Build 1200 上不起作用,有更新吗?谢谢