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、接下来的,再进一步探索吧,我也只进行到这儿了。。