自己做量化交易软件(21)通达信自选股文件的读写程序

自己做量化交易软件(21)通达信自选股文件的读写程序

我以前做过各种股票软件的自选股文件和板块数据的转换程序,见下图。
自己做量化交易软件(21)通达信自选股文件的读写程序_第1张图片
我们本篇文章介绍用Python实现通达信软件的自选股文件的读取和写入操作。
我们在做量化程序时,可以结合通达信软件共同使用。
1、我们用量化程序盘后选取股票池,存放到通达信软件的自选股板块中进行监控。
2、我们用通达信软件选出自选股。用Python来实现盘中监控和自动下单。
通达信软件的自选股文件的目录为:C:\tdx目录\T0002\blocknew
自选股文件名为:‘ZXG.blk’。
在通达信软件中使用快捷命令数字‘06’加回车,出现自选股板块行情列表。自选股文件名为:‘ZXG.blk’。
在通达信软件中,股票代码格式为:(市场,代码)
例如:深圳指数(0, ‘399001’),上海大盘 (1, ‘999999’)。
数据在’ZXG.blk’中以8个字节来存放。
深圳指数(0, ‘399001’),存放格式为chr(10)+‘0399001’。
上海大盘 (1, ‘999999’),存放格式为chr(10)+‘1999999’。
因此我们可以很容易写出python代码。
下图是通达信自选股列表。
自己做量化交易软件(21)通达信自选股文件的读写程序_第2张图片
下面给出程序代码:

#自选股数据转通达信股票列表
def getzxg(z):
    z2=z.split(chr(10))
    l=[]
    for i in range(1,len(z2)):
        z3=z2[i]
        l.append((int(z3[0:1]),z3[1:9]))
    return l

def getzxgfile(file='ZXG.blk'):
    f = open(file,'r')
    z=f.read()
    f.close()
    return getzxg(z)

#通达信股票列表转自选股数据转
def putzxg(l):
    s=''
    for i in range(len(l)):
        l2,l3=l[i]
        s=s+chr(10)+str(l2)+l3
    return s

def putzxgfile(l,file='ZXG2.blk'):
    f = open(file,'w')
    s=putzxg(l)
    f.write(s)
    f.close()
    return s


#测试
if __name__ == '__main__':
    zxg=getzxgfile('ZXG.blk')
    print(zxg)
    putzxgfile(zxg,'ZXG2.blk')
    zxg3=getzxgfile('ZXG2.blk')
    print(zxg3)

程序运行结果:

[(1, '600519'), (0, '399001'), (1, '999999'), (1, '600030'), (0, '000776')]
[(1, '600519'), (0, '399001'), (1, '999999'), (1, '600030'), (0, '000776')]

#独狼荷蒲qq:2775205
#通通小白python量化群:524949939
#电话微信:18578755056
#微信公众号:独狼股票分析

你可能感兴趣的:(软件开发,量化软件,python)