• 18976542384

    工作时间

    周一至周五:9:00-21:00

    周末及节日:9:00-18:00

  • 手机版二维码

    手机快速找资源

  • 扫描二维码

    加入官方qq群

[源码] 通达信美国线(竹线)指标公式源码

0
回复
160
查看
[复制链接]

19

主题

8

回帖

121

积分

注册会员

Rank: 2

积分
121
发表于 2024-1-30 13:55:21 | 显示全部楼层 |阅读模式

今天看到有人问了一个有意思的问题,想把通达信的主图K线改变为美国线(也叫竹线),但是这个美国线需要实现没有开盘价,只有收盘价。每根K线收盘价的横线与下一个k线柱子之间有一点空隙分隔开。成交量也要和美国线柱子粗细差不多。(如下图)

彩虹桥-投资充电站

虽然通达信可以设置主图为美国线,但是美国线包含开盘价和收盘价,没办法只显示收盘价。

彩虹桥-投资充电站

解决这个问题,需要重新画线,主要使用通达信的画线函数。通达信的画线函数不多,也就那么几个能用的,画竖线和横线,涉及到两个函数STICKLINE、DRAWSL,之前已经讲过,这里简单介绍一下,不详细说了。

STICKLINE(COND,PRICE1,PRICE2,WIDTH,EMPTY);

当满足COND条件时,在PRICE1和PRICE2位置之间画柱线;

WIDTH表示柱线的宽度,如果WIDTH为4,就是标准间距;

EMPTY表示柱线是实心还是空心,如果EMPTY为0就是实心柱,为1就是实线空心柱。

DRAWSL(COND,PRICE,SLOPE,LEN,DIRECT);

当满足满足COND条件时,从PRICE位置起画斜线;

SLOPE表示斜率,SLOPE为0的时候,就表示画水平线;

LEN表示长度,当画的线为水平线时,长度为延伸的周期数;

DIRECT表示延伸方向,画水平线时,DIRECT为0向右画线。


先简单写一个公式,看看效果如何:

STICKLINE(O,H,L,0,0);DRAWSL(O,C,0,1,0);
彩虹桥-投资充电站

使用DRAWSL函数,以收盘价画横线,横线太长了。DRAWSL画线最短就是1个周期,没办法进一步缩短。可以用与背景颜色相同的颜色——黑色,把多余的横线覆盖,解决问题横线太长的问题(如下图)

彩虹桥-投资充电站

STICKLINE函数画柱线,WIDTH表示柱线的宽度,4表示标准间距,柱线宽度为4时如下图

彩虹桥-投资充电站

宽度大于4,柱线开始重叠(如下图,柱线宽度为5)

彩虹桥-投资充电站

利用这个特性,如果柱线是黑色实心,就可以用来覆盖多余的横线。


只有收盘价的通达信美国线(竹线)指标公式:

STICKLINE(O,H,L,3,1),COLORBLACK;{把图上原有K线涂黑覆盖}DRAWSL(O,C,0,1,0),COLORWHITE;{向右画长度为1个周期的白色横线}STICKLINE(O,REF(C,1),REF(C,1),6,0),COLORBLACK;{以前一根K线的收盘价为基准,画宽度为6的黑色实心柱线(实际是画的宽度为6的黑色横线),覆盖多余的白色横线}STICKLINE(O,H,L,0,0),COLORWHITE;{从最高价到最低价画宽度为0的白色柱线};
彩虹桥-投资充电站

成交量柱线:

STICKLINE(VOL,0,VOL,0,1);
彩虹桥-投资充电站

公式写完,发现有个Bug没法解决,当收盘价和前一天相同时,收盘价会被覆盖,不能显示。

彩虹桥-投资充电站

想了想没有特别好的解决方法,只能弃坑跑路了。

彩虹桥-投资充电站

友情提醒:本文仅供学习交流,不构成任何投资建议。投资有风险,入市需谨慎!

关注公众号技术Pie,学习更多通达信指标公式编写知识。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

全国统一客服电话
18976542384

24x7小时免费咨询

  • 官方在线客服

    QQ客服:股海浪子

    点击交谈

    QQ客服:beyond

    点击交谈

    QQ客服:明月

    点击交谈
  • 广东省深圳市福田区深南大道2012号

  • 添加客服微信

    可领取网站任一指标一个

  • 加入指标qq分享群

    免费领取资源

Powered by Discuz!X3.4 ©2001-2013 Comsenz Inc.彩虹桥投资充电站( 粤ICP备19084539号-1 )|网站地图