使用环形缓冲区绘制分形的类 - MetaTrader 5脚本


CFractalsOnRingBuffer 设计用于计算分形技术指标 (分形) 使用以下算法环形缓冲区。
班级CFractalsOnRingBuffer标题
#include CFractalsOnRingBuffer.mqh 文件必须放置在需要在 MQL5\Include\ 中建立的 IncOnRingBuffer 文件夹中。描述中附加了两个文件,其中包含该文件夹中的类所使用的示例。类为的文件环形缓冲区 也必须在此文件夹中。
//--- 初始化方法: 布尔值初始化( // 如果出错则返回 false,如果成功则返回 true 整数 右栏=2, // 从极值向右的柱数 整数 左栏 =2, // 极值左侧的柱数 整数 缓冲区大小=256, // 环形缓冲区的大小 布尔值as_series =错误的 // true,如果是时间序列,否则 - false );
//--- 基于时间序列或指标缓冲区的计算方法: 整数MainOnArray( // 返回已处理元素的数量 常量 整数 费率_总计, // 数组的大小 常量 整数 先前计算的,// 上次调用时处理的元素 常量 双倍的& 高的[], // 最大的数组 常量 双倍的& 低的[], // 最小值的数组 );
//--- 基于数组 high[] 的单独系列元素计算分形的方法 双倍的MainOnHigh( // 返回 index-bars_right 元素 (bar) 的上分形值 常量 整数 费率_总计, // 数组的大小 常量 整数 先前计算的,// 处理后的数组元素 常量 整数 开始, // 从数组的重要数据开始的地方 常量 双倍的高的, // 当前柱的最大值 常量 整数 指数 // 当前元素(柱)索引 );
//--- 基于数组low[]的单独级数元素计算下分形的方法 双倍的主开低( // 返回index-bars_right元素(柱)的下分形值 常量 整数 费率_总计, // 数组的大小 常量 整数 先前计算的,// 处理后的数组元素 常量 整数 开始, // 从数组的重要数据开始的地方 常量 双倍的低的, // 当前柱最小值,当前数组元素最大值 常量 整数 指数 // 当前元素(柱)索引 );
//--- 访问数据的方法: 整数 酒吧要求(); // 返回绘制指标所需的柱数 细绳姓名(); // 返回指标的名称 细绳名称上层() // 返回上分形的名称 细绳名称Lower() // 返回下分形的名称 整数 右栏() // 返回极值右侧的柱数 整数 左栏() // 返回极值左侧的柱数 整数 尺寸(); // 返回环形缓冲区的大小
可以像从通常的数组中一样从环形缓冲区中获取指标的计算数据。例如:
//--- 具有分形指标计算方法的类: #includeCFractalsOnRingBuffer 分形; ...//+------------------------------------------------------------------+ //|自定义指标迭代函数 | //+------------------------------------------------------------------+ 整数 计算时(常量 整数费率_总计, 常量 整数先前计算的, 常量 日期时间& 时间[], 常量 双倍的& 打开[], 常量 双倍的& 高的[], 常量 双倍的& 低的[], 常量 双倍的& 关闭[], 常量 长的& 刻度量[], 常量 长的& 体积[], 常量 整数& 传播[]) {//--- 基于价格时间序列的指标计算: fractals.MainOnArray(rates_total,prev_calculated,high,low); ...//--- 使用环形缓冲区“分形”中的数据, // 例如,复制指标缓冲区中的数据: 为了(整数i=开始;i 已停止();i++) { UpperBuffer[i] = fractals.upper[rates_total-1-我];// 上分形 LowerBuffer[i] = fractals.lower[rates_total-1-我];// 下分形 } ...//--- 返回下一次调用的 prev_calculated 值: 返回(费率_总计); }
请注意,环形缓冲区中的索引与时间序列。
Test_Fractals_OnArrayRB.mq5 的工作结果,环形缓冲区大小为 256 个元素 编写代码时的发展MetaQuotes 软件公司, 整数 和 哥斯拉被使用。 📎 cfractalsonringbuffer.mqh (10.84 KB) 📎 carrayring.mqh (6.64 KB) 📎 test_fractals_onarrayrb.mq5 (3.8 KB) 📎 test_fractals_onvaluerb.mq5 (4.98 KB) Source: MQL5 #1422

Test_Fractals_OnValueRB.mq5 的工作结果,环形缓冲区大小为 256 个元素附件下载
💡 精彩内容推荐
✍️ 楼主最新发布
- •
- •
- •
- •
- •
- •
🔗 您可能感兴趣
- •
- •
- •
- •
- •
- •
🔐
请登录后参与评论
注册满12小时后评论,即可解锁附件下载
立即登录
