加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

KDJ计算代码——Python

(2011-03-30 16:19:44)
标签:

杂谈

import numpy as np

def KDJ(date,N=9,M1=3,M2=3):
    datelen=len(date)
    array=np.array(date)
    kdjarr=[]
    for i in range(datelen):
        if i-N<0:
            b=0
        else:
            b=i-N+1
        rsvarr=array[b:i+1,0:5]
        rsv=(float(rsvarr[-1,-1])-float(min(rsvarr[:,3])))/(float(max(rsvarr[:,2]))-float(min(rsvarr[:,3])))*100
        if i==0:
            k=rsv
            d=rsv
        else:
            k=1/float(M1)*rsv+(float(M1)-1)/M1*float(kdjarr[-1][2])
            d=1/float(M2)*k+(float(M2)-1)/M2*float(kdjarr[-1][3])
        j=3*k-2*d
        kdjarr.append(list((rsvarr[-1,0],rsv,k,d,j)))
    return kdjarr
   
   

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有