蜡烛计数器 - MetaTrader 5脚本

周选择:
SelectedWeek 参数定义对每月的哪一周进行编号。
如果 SelectedWeek = 0,则考虑所有周,并且将对所有蜡烛进行编号。
对于非零值,仅对指定周的蜡烛进行编号。
当 NumberFirstCandle = false 时,编号从当天的最后一根蜡烛开始并向后进行。
动态过滤:
该指标根据所选周 ( SelectedWeek ) 过滤蜡烛并忽略其他周。
动态文本定位:
这些数字位于蜡烛的上方或下方,具体取决于蜡烛是看涨还是看跌。
文本和蜡烛图之间的间距由 PriceOffsetFactor 参数控制。
视觉定制:
可以调整颜色、字体、文本大小和锚点类型以增强外观。
优化性能:
该指标在创建新图表对象之前删除旧图表对象,确保图表上没有不必要的开销。
价格抵消系数
文本和蜡烛之间的动态间距因子。
上方输入文本颜色
蜡烛上方文本的颜色(对于看涨蜡烛)。
InpTextColourBelow
蜡烛下方文本的颜色(对于看跌蜡烛)。
clr中兰花
用于显示数字的字体类型。
用于定位文本的锚点类型(中心、顶部、底部等)。
数字第一支蜡烛
定义计数是从当天的第一根蜡烛 ( true ) 还是最后一根蜡烛 ( false ) 开始。
选择进行计数的周(0 = 每周)。
1. 按周过滤
GetWeekOfMonth() 函数计算每个蜡烛图所在月份的第几周。
条件 if(SelectedWeek != 0 && currentWeek != SelectedWeek) 确保仅处理所选周的蜡烛。
2. 顺序计数
只要日期发生变化(candleDay!= previousDay),计数就会重新开始。
如果 NumberFirstCandle = true ,则从当天的第一根蜡烛开始计数。
如果 NumberFirstCandle = false ,则计数从当天的最后一根蜡烛开始并向后继续。
3. 文字定位
如果收盘价低于开盘价(看跌蜡烛),则文本位于蜡烛上方。
如果收盘价高于开盘价(看涨蜡烛),则文本位于蜡烛下方。
4. 创建和更新图表对象
CreateText() 函数在图表上创建或更新图表对象。
这些对象使用 ObjectPrefix 前缀进行唯一命名,以避免冲突。
5、自动清洗
当删除或重新初始化指标时,DeleteObjects() 函数会删除指标创建的所有图形对象。

附件下载
📎 candle_counter.mq5 (19 KB)
Source: MQL5 #56432
💡 精彩内容推荐
✍️ 楼主最新发布
- •
- •
- •
- •
- •
- •
🔗 您可能感兴趣
- •
- •
- •
- •
- •
- •
