在通达信软件中编程画线可以通过以下步骤实现:
使用DRAWLINE函数
DRAWLINE函数用于在图表上绘制直线。如果参数PRICE1和PRICE2是同一个,则表现为一条线段;如果不同,则表现为由多根K线连接起来的虚线段。
定义变量和获取均线值
例如,定义5日均线和10日均线的值,使用MA函数,如MA5:MA(C,5)和MA10:MA(C,10)。
确认均线死叉点
使用CROSS函数来检测5日均线和10日均线的死叉点,例如:VAR1:=CROSS(MA10,MA5)。
过滤和确定画线条件
过滤掉不满足条件的死叉点,确保只保留最新的死叉点。确定画线条件和画线值,例如,画线起点在死叉点之后。
画线
根据确定的条件和值,使用DRAWLINE或其他相关函数在图表上绘制直线。例如,可以根据KD指标的K值变化来画趋势线。
使用STICKLINE函数
STICKLINE函数用于在主图上绘制线段,可以设置线段的颜色和样式。例如:
```
A1:=V/CAPITAL>=REF(V/CAPITAL,1)*2;
STICKLINE(A1 AND C>REF(C,1),O,C,-1,0),COLORMAGENTA;
STICKLINE(A1 AND C ```
这段代码表示当成交量是流通盘的2倍且股价高于前一天时,在O点(开盘价)和C点(当前价)之间绘制一条红色线段,当股价低于前一天时,绘制一条绿色线段。
编写自定义公式
通过编写自定义公式来实现更复杂的画线逻辑。例如,根据KD指标的K值变化来画趋势线,需要找到KD指标的K值,并根据K值与参数的关系来确定AB点。
示例代码
```
{参数}
N:=9;
M1:=3;
{KD指标}
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,M1,1);
{获取AB点的值及其对应的位置}
A点:CROSS(K, M1);
B点:CROSS(K, 20);
{画线}
DRAWLINE(A点, 低点, B点, 高点, 0);
```
在这个示例中,我们定义了KD指标的参数N和M1,计算RSV和K值,然后使用CROSS函数找到A点和B点(分别对应金叉和死叉点)。最后,使用DRAWLINE函数在A点和B点之间绘制趋势线。
通过以上步骤和示例代码,你可以在通达信软件中实现自动画线功能,并根据具体需求进行自定义设置。