股票量化合約系統開發(方案設計)| 股票量化合約系統開發原始碼

v_ch3nguang發表於2023-04-04

合約量化系統 實行 根據設定,自動進行買賣交易,上漲到一定點數則賣出平倉,下跌至相應點數則進行加倉操作,等待價格回撥則賣出 達到自動化交易 。可以 投資 交易者不用時時刻刻緊盯市場, 設定號 自動化交易 條件 忽略 了使用者的個人主觀情緒, 使得 交易變得更為 “理智”。


股票 量化 合約系統開發方案

1、 制定交易策略:智慧機器人嵌入了各種型別的交易策略,從 “保守”到“激進”,考慮不同型別的風險。設定策略後,軟體將智慧地為每個訂單分配倉位和標準,嚴格遵循交易策略。

 

2、 多筆交易的聯合監管:可以使用數百筆交易一起操作交易策略,每種型別都有自己的獨立流程,並對報價深度進行全自動監控。實時監控系統的買賣標準確保了買賣交易的及時性。

 

3、 智慧跟蹤、止盈止損:設定啟動標準,利潤比例超過標準後,智慧機器人自動啟動跟蹤、止利止損。當價格繼續上漲時,利潤的比例繼續達到其最大值。當價格下降時,執行強制性的收盤標準以停止盈利和虧損。

 

股票量化合約系統原始碼:

def load_data(ts_code, start_date='20160101', end_date= ''):

     # 判斷檔案是否存在 , 不存在則透過網路介面獲得

     data_dir = './data/'

     name = get_code_name(ts_code)

     name = name.replace('*', ' ')

     file = data_dir + ts_code + name + '.csv'

     if not os.path.exists(file):

 

         # 初始化 pro 介面

         # pro = ts.pro_api('********************************')

         # 獲取前復權資料

         #df = ts.pro_bar(ts_code=ts_code,start_date=start_date, end_date=end_date, ma=[5, 10, 20, 30, 50, 120, 200])

         df = ts.pro_bar(ts_code=ts_code, ma=[5, 10, 20, 30, 50, 120, 200])

         # 儲存資料到檔案

         if df is None:

             print('can not get data')

             return

         df.to_csv(file, index=False, encoding="utf_8_sig")

         print('new file', file)

     df = pd.read_csv(file)

     # ts_code, trade_date, open, high, low, close, pre_close, change, pct_chg, vol, amount, adj_factor

     # 股票程式碼 , 交易日期 , 開盤價 , 最高價 , , 收盤價 , 昨收價 , 漲跌額 , 漲跌幅 , 成交量 , 成交額 ( 千元 )

     # 去空

     df.dropna(inplace=True)

     # 正序

     df = df.sort_index(ascending=False)

     # 索引重排序

     df.reset_index(drop=True, inplace=True)

     return df

 

 

# 載入股票列表

def load_code_list(market='SZSE', sel=False):    # 交易所 SSE 上交所 SZSE 深交所 HKEX 港交所 ( 未上線 )

     path = './data/'

     faceDir = Path(path)

     if faceDir.exists():

         file_dir = path + 'code_list_' + market + '.csv'

     else:

         os.mkdir(faceDir)

         file_dir = path + 'code_list_' + market + '.csv'

     # 判斷檔案是否存在 , 不存在則透過網路介面獲得

     if os.path.exists(file_dir):

         code_list = pd.read_csv(file_dir)

     else:

         # 初始化 pro 介面

         pro = ts.pro_api('ee5c0e991e17949cdafbcf8ec42321ef4bac94e9ca3474e4d62313a3')

         # 查詢某交易所所有上市公司

         #code_list = pro.stock_basic(exchange=market, list_status='L', fields='ts_code')  # ,symbol,name,market,list_date

         #code_list = pro.stock_basic(exchange=market, list_status='L')  # ,symbol,name,market,list_date

         code_list = pro.stock_basic(exchange=market, list_status='L')  # ,symbol,name,market,list_date

 

         # 儲存資料到檔案

         code_list.to_csv(file_dir, index=False, encoding="utf_8_sig")

 

     #code_list = code_list[['ts_code']].values.flatten()

     return code_list


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70028290/viewspace-2943717/,如需轉載,請註明出處,否則將追究法律責任。

相關文章