认识 K 线,从零开始

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了认识 K 线,从零开始相关的知识,希望对你有一定的参考价值。

参考技术A         一切物体在没有受到力时,总保持静止状态或匀速直线运动状态。股票市场同样遵循此定律。因此找出这些影响股票走势的外力,对于行情的表现分析判断十分有意义。
        K 线某一段时期的走势会形成一较鲜明的特征形态,通过其特征形态,可以在一定程度上判断多空双方力量,分析短期价格走势。如果想在股市上有所作为就要反复研究每一根 K 线的技术含义。
        K 线也称蜡烛线、日本线、阴阳线,以一条柱状线来表示一定时间的开盘价、收盘价、最高价、最低价,如图所示:

        一般来说,我们可以从K线的形态判断出交易时间内的多、空情况。所谓看“多”,就是看“涨”的意思,所谓看“空”,就是看“跌”的意思。具体方法为三步:一看阴阳,二看实体大小,三看影线长短。目前国内大盘多数是以红色代表涨,绿色代表跌,和国外相反。下面我介绍一下常见的几种 K 线图。

        上边两种图分别叫做实体红 K 图 和实体绿 K 图。实体红 K 图代表多头强劲,市场有强烈的做多欲望,此时可持股待涨。实体绿 K 图,代表市场完全进入恐惧状态,如果是从高位拉出这么一根黑K线,则一定要卖出,这往往意味着行情接下来往下走。

        这种带有上影线和下影线的红 K 线,代表着多方略胜一筹,从K线实体的收盘价距离最高价这一段是该股的阻力区,次日在这一价格区间一定要留意,如果你是短线客,在次日未能突破这一区域,加上量能萎缩,则应出局。

        这种带有长上下影的黑K线说明此时暂不宜进场,等拉回整理完毕出现买点时再介入,或是日后出现带量突破该 K 线的最高点时可进场。

        这种带上影线的红 K 线说明,多头在攻击时在收盘价以上的地方收阻,次日若能放量则攻下并覆盖今之的上影,若不能放量,则向上的方向不够确定,应当整理几日再选择方向。

        这种带下影线的红 K 线,称为光头阳。这种K线若出现在支撑位,可以重仓出击,90%情况下,代表调整结束,方向向上。如果出现的高价区,这里所说的高价区是高得离谱的价位,则不要盲目追进,有可能是庄家拉高骗技术派进场接货。

        炸弹线的参考价值很高,它传递一种市场已经转势的信号,在高位突然拉出炸弹线的话,正如这种图形给人的直观印象一下,方向坚定地往下,在很多时候,股价跌破支撑位,往往是以炸弹形式跌破,这时更应迅速离场,跟着别人跳水是没有错的,这种情况不能拖延,这是非常危险的信号,往往次日就跳空低开一路向下,再也没有接你下山的机会了。

        这种绿 K 线告诉你,虽然开盘后就受到猛烈的打压,但是在收盘至最低价这一区间有多头的反抗。收盘价至开盘价是空头的基地,收盘价至最低价是多头的阵营。这种图形往往在整理态势中出现,或者在巨量大长阳的第二天出现。

        出现在高档:股价拉回机会较大,暂时观望。
        出现在低档:多属清洗浮额的阶段,日后若遇突 破高点则可逢低介入,若突破后又逢跌破底 点则应出脱持股。

        出现在低档:安全性高,股价应是短期底部或是 接近底部。
        出现在高档:又逢爆大量且无法收高,变盘反转 的机会较大。

        十字星线无论出现在高点还是低点,都意味着市场将转势,即往相反的方向运行。

        跳空涨停,往往是特大利好消息首次公布,直接被大买单封涨停。这个时候一般散户是买不到筹码的,往往次日连续涨停。跳空跌停则说明该股处于利空之中,大家纷纷不计价格的抛售手中的股票,市场看淡。
        无数的 K 线组成了一幅连续的K线分析图,每根 K 线都有其自身的含义。但是K线图和K线图形态是不同的概念。前者泛指单根K线的形状和意义,而后者则是指由两根及两根以上的K线组合所形成的某种形态,而该形态通过K线之间的对比,预示着某种价格的运动轨迹,因而上升到了技术分析的层面。
        以最简单的两根K线来说,在分析它们的时候,要考虑两根K线的阴阳、高低、上下影线,然后把单根K线的意义与前一根K线的意义相比较,基本上就可以知晓过去价格发生的由来,及后一日后价格大致的运动空间。
        K线是初级股民学习技术分析首先要攻下的一道难题,但是学会与学精,差之千里。本篇只简单的教您如果看懂K线,至于能不能运用好,还要看您的悟性,K线其实就是一张股市战争图,K线的背后反应的是投资者的心理变化。
        K 线形态是历史重演重要的角色之一。掌握经典的特征形态能帮你看清市场阶段性状态,以及预测后市一定时期的表现。规律性形态必须既有上升也有下跌。

从零开始人工智能AI-k-nn-矩阵

参考资料:

https://baike.baidu.com/item/%E7%9F%A9%E9%98%B5/18069?fr=aladdin

http://blog.csdn.net/c406495762/article/details/75172850

基础概念:

#0取行数,1取得列数

import numpy as np

dataSetSize = dataSet.shape[0]

 

 

diffMat = np.tile(inX, (dataSetSize, 1)) - dataSet

tile第二个参数为元组,元组第一个参数代表复制的个数,纵(list的个数), 第二个参数为横向(单个list中的元素复制的份数)

例如:

>>> a=[0,1,2] 
>>> b=tile(a,9)
>>> b
array([0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1,
       2, 0, 1, 2])
>>> 
>>> b=tile(a,(9,2))
>>> b
array([[0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2]])
>>> b=tile(a,(9,1))
>>> b
array([[0, 1, 2],
       [0, 1, 2],
       [0, 1, 2],
       [0, 1, 2],
       [0, 1, 2],
       [0, 1, 2],
       [0, 1, 2],
       [0, 1, 2],
       [0, 1, 2]])
>>> b=tile(a,(9,12))
>>> b
array([[0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0,
        1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0,
        1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0,
        1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0,
        1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0,
        1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0,
        1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0,
        1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0,
        1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0,
        1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2]])

 

矩阵减法

>>> a
array([[101,  20],
       [101,  20],
       [101,  20],
       [101,  20]])
>>> b
array([[  1, 101],
       [  5,  89],
       [108,   5],
       [115,   8]])
>>> a-b
array([[100, -81],
       [ 96, -69],
       [ -7,  15],
       [-14,  12]])

 

#二维特征相减后平方
sqDiffMat = diffMat**2

>>> c
array([[100, -81],
       [ 96, -69],
       [ -7,  15],
       [-14,  12]])
>>> c**2
array([[10000,  6561],
       [ 9216,  4761],
       [   49,   225],
       [  196,   144]])

#sum()所有元素相加,sum(0)列相加,sum(1)行相加
sqDistances = sqDiffMat.sum(axis=1)

>>> d=c**2
>>> d.sum(axis=1)
array([16561, 13977,   274,   340])
 
>>> d.sum(axis=0)
array([19461, 11691])

#开方,计算出距离
distances = sqDistances**0.5

>>> f=e**0.5
>>> f
array([ 128.68954892,  118.22436297,   16.55294536,   18.43908891])

sortedDistIndices = distances.argsort()
#定一个记录类别次数的字典 ,按大小排序,打印index

 
>>> f
array([ 128.68954892,  118.22436297,   16.55294536,   18.43908891])
>>> g=f.argsort()
>>> g
array([2, 3, 1, 0])

取出前k个元素的类别

>>> for i  in range(3):
...     print(i) 
...     labels[sortedDistIndices[i]]
... 
0
动作片
1
动作片
2
爱情片

 

>>> for i  in range(3):
...     voteIlabel = labels[sortedDistIndices[i]]
...     classCount.get(voteIlabel,0) 
... 
0
0
0
>>> for i  in range(3):
...     voteIlabel = labels[sortedDistIndices[i]]
...     classCount.get(voteIlabel,0) + 1
... 
1
1
1
 #key=operator.itemgetter(1)根据字典的值进行排序
    #key=operator.itemgetter(0)根据字典的键进行排序
    #reverse降序排序字典
    sortedClassCount = sorted(classCount.items(),key=operator.itemgetter(1),reverse=True)

    print(#######,sortedClassCount)
classCount~~~~~~ {}
classCount~~~~~~ {动作片: 2, 爱情片: 1}
####### [(‘动作片‘, 2), (‘爱情片‘, 1)]
动作片

 

第一段代码总算跑通了,虽然到现在为止还不理解什么事人工智能,哈哈,

以上是关于认识 K 线,从零开始的主要内容,如果未能解决你的问题,请参考以下文章

从零开始认识Dubbo

从零开始认识Dubbo

从零开始认识并操纵Mybatis

从零开始认识iptables

从零开始认识堆排序

从零开始的 Java 学习类和对象的认识