分享聚宽量化交易执行选股策略的执行过程:
首先就是需要用不同的函数处理不同的数据,比如上市数据,要用run_query()函数处理,财务与估值数据要用get_fundamentals()函数处理。以及即使用同一个函数处理,参数也会相互影响。
其中securities为股票(单只或者列表),factors(单个或者列表),开始结束日期,count为截止日期前的数据数量,与start_date二选一
比如想选今天的估值数据,要用get_fundamentals(query, date=datetime.today())获取。
另外返回的数据量也有限制,如果要获取所有数据可能需要offset。
以下是代码示例:
security = list(get_all_securities(types=['stock'], date=None).index)
# 过滤去年亏损的股票以及估值过高超过100倍PE的股票
q = query(
valuation.code,
valuation.day,
valuation.pe_ratio,
valuation.ps_ratio,
valuation.pb_ratio,
valuation.market_cap
).filter(
valuation.code.in_(security),
valuation.pe_ratio > 5,
valuation.pe_ratio < 100,
valuation.market_cap >