将python选出的代码导入通达信tdx自选股文件的方法 及通达信自选股代码编码规则

在进行量化选股过程中,为了方便人工对相应股票进行复核检测,一个一个人工敲股票代码肯定不是我们的选项,费时费力,又容易出错。这时就需要将选出的股票导入自选股,在终端打开自选板块直接查看选出的股票,方便快捷。

本文调试所用 通达信版本为:通达信金融终端 V7.6,不同版本可能文件位置不同,使用时请注意。

一、自选股及自定义板块文件所在位置

D:\new_tdx\T0002\blocknew

将python选出的代码导入通达信tdx自选股文件的方法 及通达信自选股代码编码规则_第1张图片

文件类型为通达信自定义的.blk,其实就是一个纯文本文件(.txt)。

 二、 自选股文件数据结构

用记事本打开ZXG.blk,会发现股票代码上面有一个前缀

将python选出的代码导入通达信tdx自选股文件的方法 及通达信自选股代码编码规则_第2张图片

 经分析,这些前缀的规律为:

                                        深证为0,

                                        沪市为1,

                                        北交所为2。

三、用python进行验证

技术路线:将选出的股票代码,区分不同交易所,分别在前缀处加上0,1和2.然后将股票代码列表写入文件,文件位置为自选股所在目录。

程序如下:

symbols = []
for symbol in all_symbols:
    if (df1.loc[symbol,'虚拟成交量'] < df1.loc[symbol,'100日均量'] and
        (df1.loc[symbol,'100日内大于7%天数']>=13 or 
        df1.loc[symbol,'100日内涨停板数']>=15)):
        if symbol[0] == '0' or symbol[0] =='3':
            symbol = '0' + symbol
        if symbol[0] == '6':
            symbol = '1' + symbol
        if symbol[0] == '8' or symbol[0] == '4':
            symbol = '2' + symbol

        symbols.append(symbol)
    else:
        df_out = df_out[~df_out.index.str.contains(str(symbol))]
        #df = df[~df['名称'].str.contains('ST',na=False)] 
df_out2 = pd.DataFrame(symbols)
out_file_name = '选股结果' + str(dt.date.today().strftime('%Y%m%d')) + '.xlsx'
out_file_name2 = 'LXXG.blk'
zxg_path = 'D:\\new_tdx\\T0002\\blocknew'

print(df_out)
df_out.to_excel(out_file_name)
df_out2.to_csv(zxg_path+out_file_name2,sep= '\t',index=False,header=None)
print(symbols)

运行完上述程序后,打开通达信金融终端,打开自选股,即可看到选出的所有自选股了。

将python选出的代码导入通达信tdx自选股文件的方法 及通达信自选股代码编码规则_第3张图片

你可能感兴趣的:(python量化金融,python,金融)