quantOS有三大核心組件:DataCore、JAQS和TradeSim,分別對應量化交易的數據、策略和交易。強烈建議初學者直接從JAQS入手,先不要管DataCore和TradeSim。JAQS默認已經集成了數據和交易接口,從這裏入手可以大大降低上手的難度。
1、Pycharm新建項目quantOS,併爲該項目創建虛擬環境Virtualenv:C:\Users\santiren\PycharmProjects\quantOS\venv。
2、運行cmd,cd到目錄:C:\Users\santiren\PycharmProjects\quantOS\venv\Scripts
3、通過pip安裝依賴包python-snappy:pip install python-snappy
注:截圖所示是因爲筆者已安裝過……
4、通過pip安裝jaqs:pip install jaqs
5、驗證安裝成功:
python
import jaqs
jaqa.__version__
6、建立數據api的連接
from jaqs.data.dataapi import DataApi
api = DataApi(addr='tcp://data.quantos.org:8910')
api.login("13912345678", "eyJhbGciOiJIUzI1NiJ9.eyJjcmVhdGVfdGltZSI6IjE1NTEzNDcwMDkxMTIiLCJpc3MiOiJhdXRoMCIsImlkIjoiMTc3MjExMzA4MzAifQ.EQ6OCJvZ83MtxC6jotIPed8WF4pbV5L6wh0UbAmJlfE“)
注意:記得將手機號和令牌換成自己的。
7、查詢數據,以查詢平安銀行2017年12月4日至2017年12月8日的日線數據爲例,運行以下代碼:
df, msg = api.daily( symbol="000001.SZ", start_date=20171204, end_date=20171208, fields="", adjust_mode="post")
print(df)
8、交易連接
from jaqs.trade.tradeapi import TradeApi
tapi = TradeApi(addr="tcp://gw.quantos.org:8901")
user_info, msg = tapi.login("手機號", "令牌”)
9、綁定策略號
sid, msg = tapi.use_strategy(1556)
print("msg: ", msg)
print("sid: ", sid)
10、下單
task_id, msg = tapi.place_order("000001.SZ", "Buy", 12.8, 100)
print("msg:", msg)
print("task_id:", task_id)
11、接下來的,再進一步探索吧,我也只進行到這兒了。。