今天有空,,看到啟發(fā),把通達(dá)信自選股讀取進(jìn)行交易,,支持公式選股 通達(dá)信讀取源代碼 def read_tdx_trader_stock_buy(path=r'D:\新建文件夾\T0002\blocknew\TRADER_STOCK.blk'): ''' 讀取通達(dá)信自選股交易,買入模塊 ''' try: stock_list=[] with open('{}'.format(path),'r+') as f: com=f.readlines() for i in com: i=i.strip() if len(i)>0: stock_list.append(i) df=pd.DataFrame() df['證券代碼']=stock_list df['證券代碼']=df['證券代碼'].apply(lambda x:str(x)[-6:]) df['交易狀態(tài)']='未買' return df except: print('路徑有問題{}'.format(path)) df=pd.DataFrame() df['證券代碼']=None df['交易狀態(tài)']=None return df def read_tdx_trader_stock_sell(path=r'D:\新建文件夾\T0002\blocknew\TRADER_STOCK.blk'): ''' 讀取通達(dá)信自選股交易,賣出模塊 ''' try: stock_list=[] with open('{}'.format(path),'r+') as f: com=f.readlines() for i in com: i=i.strip() if len(i)>0: stock_list.append(i) df=pd.DataFrame() df['證券代碼']=stock_list df['證券代碼']=df['證券代碼'].apply(lambda x:str(x)[-6:]) df['交易狀態(tài)']='未賣' return df except: print('路徑有問題{}'.format(path)) df=pd.DataFrame() df['證券代碼']=None df['交易狀態(tài)']=None return df 第一步建立通達(dá)信自選股模塊,,我們把買入模塊和賣出自選股分開 點(diǎn)擊自選自定義選模塊 新建模塊,比如我建立的buy_stock,sell_stock模塊 我們可用添加自選股到模塊,,支持公式選股 這里通達(dá)信就弄完了 第二部獲取文件路徑,,點(diǎn)擊文件在的位置 直接搜索模塊名稱 點(diǎn)擊屬性,復(fù)制文件路徑 把文件路徑放在程序分析.json里面 賣出模塊也是一樣的搜索模塊名稱sell_stock 這里就完成了路徑,,下一步設(shè)置交易系統(tǒng)交易系統(tǒng)可用選同花順,,qmt 比如我們選擇qmt
第二部選擇交易品種,比如選擇全部 '交易品種':'全部', '交易品種說明':['stock','fund','bond','全部'], 第三步設(shè)置交易函數(shù),,自定義函數(shù)比如通達(dá)信自選股
第四步運(yùn)行update_all_data更新數(shù)據(jù) 運(yùn)行實(shí)盤交易運(yùn)行trader_st開頭的 效果 通達(dá)信數(shù)據(jù)連接成功 0 qmt成功 持倉數(shù)量: 25 賬戶數(shù)據(jù)獲取成功 賬號類型 資金賬號 證券代碼 股票余額 可用余額 成本價 市值 標(biāo)的類型 0 2 55009640 113591 10 10 129.992 1332.20 bond 1 2 55009640 113648 10 10 139.335 1391.55 bond 2 2 55009640 118004 20 20 136.652 2568.06 bond 3 2 55009640 600137 200 200 18.660 3794.00 stock 4 2 55009640 600455 100 100 23.950 2447.00 stock 5 2 55009640 600561 300 300 6.403 1893.00 stock 6 2 55009640 600689 300 300 10.993 3591.00 stock 7 2 55009640 600768 100 100 11.000 1115.00 stock 8 2 55009640 600889 100 100 5.510 563.00 stock 9 2 55009640 603316 200 200 6.695 1366.00 stock 10 2 55009640 603389 200 200 6.170 1252.00 stock 11 2 55009640 603813 300 300 16.610 5022.00 stock 12 2 55009640 000622 100 100 4.680 475.00 stock 13 2 55009640 000668 100 100 11.900 1191.00 stock 14 2 55009640 001211 100 100 24.320 2450.00 stock 15 2 55009640 002058 300 300 11.977 3669.00 stock 16 2 55009640 002295 100 100 7.820 777.00 stock 17 2 55009640 002633 100 100 10.940 1089.00 stock 18 2 55009640 002830 300 300 14.363 4347.00 stock 19 2 55009640 002856 100 100 11.020 1124.00 stock 20 2 55009640 123059 10 10 138.912 1358.80 bond 21 2 55009640 123147 10 10 133.735 1327.76 bond 22 2 55009640 123177 10 10 141.912 1538.60 bond 23 2 55009640 370938 10 10 100.000 1000.00 stock 24 2 55009640 371133 10 10 100.000 1000.00 stock 開啟自定義函數(shù)模塊 定時運(yùn)行自定義分析模型run_tdx_trader_stock_buy函數(shù)在09:30 下單的結(jié)果
qmt下單結(jié)果,周末不能交易 全部源代碼,,實(shí)盤交易模型上傳,,可用直接下載 源代碼 def read_tdx_trader_stock_buy(path=r'D:\新建文件夾\T0002\blocknew\TRADER_STOCK.blk'): ''' 讀取通達(dá)信自選股交易,買入模塊 ''' try: stock_list=[] with open('{}'.format(path),'r+') as f: com=f.readlines() for i in com: i=i.strip() if len(i)>0: stock_list.append(i) df=pd.DataFrame() df['證券代碼']=stock_list df['證券代碼']=df['證券代碼'].apply(lambda x:str(x)[-6:]) df['交易狀態(tài)']='未買' return df except: print('路徑有問題{}'.format(path)) df=pd.DataFrame() df['證券代碼']=None df['交易狀態(tài)']=None return df def read_tdx_trader_stock_sell(path=r'D:\新建文件夾\T0002\blocknew\TRADER_STOCK.blk'): ''' 讀取通達(dá)信自選股交易,賣出模塊 ''' try: stock_list=[] with open('{}'.format(path),'r+') as f: com=f.readlines() for i in com: i=i.strip() if len(i)>0: stock_list.append(i) df=pd.DataFrame() df['證券代碼']=stock_list df['證券代碼']=df['證券代碼'].apply(lambda x:str(x)[-6:]) df['交易狀態(tài)']='未賣' return df except: print('路徑有問題{}'.format(path)) df=pd.DataFrame() df['證券代碼']=None df['交易狀態(tài)']=None return df |
|