K线开发之绘制蜡烛图

发布时间:2021-08-22 发表于话题:k线蜡烛图形大全 点击: 当前位置:龙发金融 > 文化 > K线开发之绘制蜡烛图 手机阅读

补充知识

K线虽然看上去复杂,但仔细观察就会知道几乎所有的k线无非由以下几种组成:

(1)蜡烛

蜡烛

(2)OHLC

OHLC

(3)线段

线段

(4)带状

带状

(5)圆形

圆形

除此之外还有其他的,都是比较少见的。

蜡烛绘制

补充了一点知识后,我们来进入主题。绘制上述所说的第一种,蜡烛。如果不懂什么是蜡烛,点这里补一下基础知识。

首先来分解蜡烛,其实它是由一个长方形加上两根线段(如果长方形是非空心的话,就是一根)。长方形是由开盘价坐标点、收盘价坐标点计算生成,线段是由最高价坐标点、最低价坐标点连接而成。

所以代码逻辑也就很简单了:

绘制一个长方形(实心) 然后再绘制一条线段

OK!上代码:

/** 生成蜡烛Layer @param model 蜡烛坐标模型 @return 返回layer */ + (CAShapeLayer *)getCandleLayerWithPointModel:(YKCandlePointModel *)model { //判断是否为涨跌 BOOL isRed = model.oPoint.y >= model.cPoint.y ? YES : NO; //生成柱子的rect CGRect candleFrame = CGRectMake(isRed ? model.cPoint.x - 6 : model.oPoint.x-6,isRed ? model.cPoint.y : model.oPoint.y,12,ABS(model.oPoint.y - model.cPoint.y)); UIBezierPath *path = [UIBezierPath bezierPathWithRect:candleFrame]; //绘制上下影线 [path moveToPoint:model.lPoint]; [path addLineToPoint:model.hPoint]; CAShapeLayer *layer = [CAShapeLayer layer]; layer.path = path.CGPath; //判断涨跌来设置颜色 if (isRed) { //涨,设置红色 layer.strokeColor = [UIColor redColor].CGColor; layer.fillColor = [UIColor redColor].CGColor; } else { //跌,设置绿色 layer.strokeColor = [UIColor greenColor].CGColor; layer.fillColor = [UIColor greenColor].CGColor; } return layer; }

代码效果如下:

蜡烛

剩下的几个图形,我们会再下一篇中进行介绍,点这里传送。

最后把Demo献上,点击下载。

本文来源:https://www.longfajr.com/info/297514.html

标签组:[蜡烛图

文化推荐文章