关键功能
周选择:
SelectedWeek参数定义了本月的哪一周将被编号。
如果SelectedWeek = 0,所有周数都会被考虑,所有蜡烛都会被编号。
对于非零值,仅会编号指定周的蜡烛。
反向计数:
当NumberFirstCandle = false时,编号从当天最后一根蜡烛开始,向后进行。
动态过滤:
该指标根据所选周(SelectedWeek)过滤蜡烛,忽略其他蜡烛。
动态文本定位:
数字根据蜡烛是看涨还是看跌而定位在蜡烛的上方或下方。
文本与蜡烛之间的间距由PriceOffsetFactor参数控制。
视觉自定义:
可以调整颜色、字体、文本大小和定位类型,以增强外观。
优化性能:
该指标在创建新对象之前删除旧的图表对象,确保图表上没有不必要的负担。
输入参数
PriceOffsetFactor | 文本与蜡烛之间的动态间距因子。 | 0.5 |
InpTextColourAbove | 看涨蜡烛上方文本的颜色。 | clrSpringGreen |
InpTextColourBelow | 看跌蜡烛下方文本的颜色。 | clrMediumOrchid |
InpFont | 用于显示数字的字体类型。 | "Arial" |
InpFontSize | 字体大小。 | 8 |
Anchor | 文本定位的锚点类型(中心、顶部、底部等)。 | ANCHOR_CENTER |
NumberFirstCandle | 定义计数是否从当天第一根蜡烛开始(true)还是最后一根(false)。 | true |
SelectedWeek | 用于计数的选定周(0 = 每周)。 | 1 |
详细功能
1. 按周过滤
GetWeekOfMonth()函数计算每根蜡烛的月份周数。
条件if(SelectedWeek != 0 && currentWeek != SelectedWeek)确保仅处理选定周的蜡烛。
2. 顺序计数
每当更改日期时(candleDay != previousDay)计数会重新开始。
如果NumberFirstCandle = true,计数从当天第一根蜡烛开始。
如果NumberFirstCandle = false,计数从当天最后一根蜡烛开始,向后继续。
3. 文本定位
如果收盘价低于开盘价(看跌蜡烛),文本定位在蜡烛上方。
如果收盘价高于开盘价(看涨蜡烛),文本定位在蜡烛下方。
4. 创建和更新图表对象
CreateText()函数创建或更新图表上的对象。
对象使用ObjectPrefix前缀唯一命名,以避免冲突。
5. 自动清理
DeleteObjects()函数在指标被移除或重新初始化时,移除所有由指标创建的图形对象。


评论 0