通达信是一款在中国广受欢迎的股票分析软件,其强大的功能之一就是支持用户自定义技术指标公式。本篇将深入解析“通达信指标公式源码 撑压互换 主图源码.doc”中的源码,帮助理解如何通过编程来绘制具有支撑和压力线的主图。
源码中使用了`DRAWGBK`函数来设置背景颜色,它根据收盘价(C)的正负值来改变颜色,以提供视觉上的区分。`DRAWGBK`函数用于在图表上填充颜色,参数依次为:条件、填充色、边框色、透明度、线条类型、线条宽度。在这里,它用来区分涨跌背景,使得图表更易阅读。
接着,源码中使用了`STICKLINE`函数绘制K线,这个函数的参数包括:条件、高点坐标、低点坐标、宽度、是否实心、颜色。例如,`STICKLINE(C>=O,H,L,0,1),COLOR0000FF;`表示当收盘价大于开盘价时,绘制蓝色的阳线,而`STICKLINE(C<O,H,L,0,1),COLORCYAN;`则表示绘制收盘价小于开盘价的阴线。
`ZT`和`DT`两个变量分别用于判断今日收盘价与昨日收盘价之间的涨跌幅是否达到10%或以上,如果满足条件,则用特殊颜色标出。`ZT`表示向上突破,`DT`表示向下突破,通过`STICKLINE`绘制出特殊K线,便于识别关键价格变动。
接下来是计算支撑和压力的代码。源码中使用了对数函数和指数函数来确定支撑和压力位。`SP:=IF((C<100),C,(C/100));`这行代码将价格转换为适合计算的值,如果价格小于100,则保持不变,否则除以100。然后,通过`DS:=INTPART(((4*(LOG(SP)/LOG(2)))+1));`计算出支撑和压力线的步进值。`H1:=((DS-1)/4);`进一步调整步进值,使得支撑和压力线的间距更均匀。
`支撑`和`压力`变量通过`IF`语句和指数运算来计算实际的支撑和压力价位,最后用`POINTDOT`和`LINETHICK4`设定点状标记和线的粗细,`DRAWTEXT`函数则用于在图上标注出支撑和压力的文字提示。
这份源码通过自定义公式实现了在通达信主图上动态显示支撑和压力线的功能,结合颜色变化和特殊K线,提供了直观的市场分析工具。使用者可以根据自身需求调整源码,以适应不同的市场分析策略。这种自定义指标的编写方法对于深化对股市走势的理解和提高交易决策的准确性有着积极的作用。