欢迎访问 外汇EA下载与MT4/MT5自动交易资源 - 聚合外汇EA、黄金EA、量化交易工具与自动化交易实战内容。
登录 注册

使用环形缓冲区绘制 TEMA 的类 - MetaTrader 5脚本 | 外汇指标下载 - MT4/MT5资源

author emer | 1049 人阅读 | 0 人评论 |

The class for drawing the TEMA using the ring buffer - indicator for MetaTrader 5

The class for drawing the TEMA using the ring buffer - indicator for MetaTrader 5

CTEMAOnRingBuffer 类设计用于计算技术指标三重指数移动平均线 (三重指数移动平均线,TEMA)使用算法环形缓冲区。  

班级CTEMAOnRingBuffer :民众CArrayRing

标题

#include 

CTEMAOnRingBuffer.mqh 类的文件必须放置在需要在 MQL5\Include\ 中建立的 IncOnRingBuffer 文件夹中。描述中附加了两个文件,其中包含该文件夹中的类所使用的示例。具有以下类别的文件环形缓冲区德玛 和 移动平均线  也必须在此文件夹中。

//--- 初始化方法:
布尔值初始化(                                // 如果出错则返回 false,如果成功则返回 true  整数            期间      =12,      // TEMA 周期  ENUM_MA_METHOD方法      =模式_EMA,// 平滑方法  整数            缓冲区大小=256,      // 环形缓冲区的大小  布尔值           as_series   =错误的    // true,如果是时间序列,否则 - false   );
//--- 基于时间序列或指标缓冲区的计算方法:          
整数MainOnArray(                  // 返回已处理元素的数量    常量 整数     费率_总计,    // 数组的大小  常量 整数     先前计算的,// 上次调用时处理的元素  常量 双倍的& 价格[],        // 用于计算的数组   );
//--- 基于数组的单独系列元素进行计算的方法          
双倍的主要值(              // 返回集合元素(柱)的 TEMA 值  常量 整数    费率_总计,    // 数组的大小  常量 整数    先前计算的,// 处理后的数组元素  常量 整数    开始,          // 从数组的重要数据开始的地方
  c昂斯特 双倍的价值,          // 元素(柱)值
  c昂斯特 整数    指数            // 元素(柱)索引
   );
//--- 访问数据的方法:
整数                 酒吧要求();  // 返回绘制指标所需的柱数
细绳              姓名();          // 返回指标的名称
整数                时期();        // 返回周期
整数                 尺寸();          // 返回环形缓冲区的大小
双倍的              MA(整数指数);  // 返回移动平均值,索引就像时间序列一样
双倍的              德玛(整数指数);// 返回DEMA值,索引就像时间序列

可以像从通常的数组中一样从环形缓冲区中获取指标的计算数据。例如:

//--- 具有 TEMA 指标计算方法的类:
#include CTEMAOnRingBuffer 主题;

...//+------------------------------------------------------------------+
//|自定义指标迭代函数                              |
//+------------------------------------------------------------------+
整数 计算时常量 整数费率_总计,      // 数组价格[]的大小                常量 整数先前计算的,  // 上次调用时处理的柱                常量 整数开始,            // 从重要数据开始的地方                常量 双倍的& 价格[])      // 用于计算的数组  {//--- 基于时间序列的指标计算:    tema.MainOnArray(rates_total,prev_calculated,price);

...//--- 使用“tema”环形缓冲区中的数据,
//    例如,复制指标缓冲区中的数据:  为了整数i=开始;i已停止();i++)
      TEMA_Buffer[i] = tema[rates_total-1-我];// TEMA 指标线...//--- 返回下一次调用的 prev_calculated 值:  返回(费率_总计);
  }

计算 TEMA 时还计算移动平均线 和德玛执行相同的参数。我们可以使用MA方法从MA环形缓冲区和DEMA中获取数据(整数 指数)和 DEMA(整数 索引)分别为:

//--- 使用移动平均线和 DEMA 环形缓冲区中的数据,
//    例如,将它们复制到指标缓冲区中:  为了整数i=开始;i已停止();i++)
     {
      MA_Buffer[i]   = dema.MA(rates_total-1-我);  // 移动平均线指标      DEMA_Buffer[i] = dema.DEMA(rates_total-1-我);// DEMA 指标线     }

请注意,环形缓冲区中的索引与时间序列

The class for drawing the TEMA using the ring buffer - indicator for MetaTrader 5

Test_TEMA_OnArrayRB.mq5 的工作结果,环形缓冲区大小为 256 个元素

The class for drawing the TEMA using the ring buffer - indicator for MetaTrader 5
Test_TEMA_OnValueRB.mq5 的工作结果,环形缓冲区大小为 256 个元素

编写代码时的发展MetaQuotes 软件公司整数 和 哥斯拉被使用。


附件下载

📎 cdemaonringbuffer.mqh (7.98 KB)

📎 cmaonringbuffer.mqh (14.9 KB)

📎 ctemaonringbuffer.mqh (8.44 KB)

📎 carrayring.mqh (6.64 KB)

📎 test_tema_onarrayrb.mq5 (3.03 KB)

📎 test_tema_onvaluerb.mq5 (3.44 KB)

Source: MQL5 #1417

使用环形缓冲区绘制 TEMA 的类 - MetaTrader 5脚本 使用前要点

这篇页面已经补充结构化说明,重点整理交易脚本的用途、MT4/MT5平台兼容性、测试流程和风险控制。下载或部署前,建议先判断它是否符合自己的品种、周期和账户环境。

适合谁使用

  • 想快速筛选交易脚本,并愿意先做模拟盘验证的用户。
  • 需要比较 MT4/MT5 EA、指标、脚本或源码项目的人。
  • 希望在实盘前记录回测、参数和风险边界的交易者。

测试与风控建议

  • 先在策略测试器或模拟账户中验证默认参数,再逐项调整品种、周期、点差和交易时段。
  • 剥头皮、网格、马丁和高频策略要重点观察最大回撤、连续亏损、滑点和交易频率。
  • 任何文件都不建议直接实盘运行,至少先观察 2-4 周模拟盘表现。

常见问题

MT4 和 MT5 可以通用吗?
通常不能直接通用。EX4/MQ4 对应 MT4,EX5/MQ5 对应 MT5,源码需要在对应 MetaEditor 中编译。

这个资源能保证盈利吗?
不能。EA、指标和脚本只能作为交易工具,结果取决于参数、市场环境、点差、滑点和风险控制。

还可以继续看哪些内容?
Forex EA 下载外汇指标下载EA测评MQL5 CodeBase

English Search Notes

This page is also optimized for English search intent around 使用环形缓冲区绘制 TEMA 的类 - MetaTrader 5脚本. Related search terms include: trading script, MT4 script, MT5 script. Test any Forex EA, Expert Advisor, MT4/MT5 indicator, script or MQL source code with historical data and a demo account before live trading.

🔐
请登录后参与评论
注册满12小时后评论,即可解锁附件下载
立即登录