【转载】事件驱动的选股小工具(JQData)
作者:互联网
转自(https://blog.csdn.net/kingking2888/article/details/86226208)
昨天发改委下发了《关于积极推进风电、光伏发电无补贴平价上网有关工作的通知》,也不知道对股市是利空还是利多。连夜做了一个搜索公司经营范围的小工具,看看那些股票受到影响。
以后还可以增加筛选条件,比如财务指标,剔除ST股票,技术指标…以后再遇到这种类似的事件,就可以很快查找股票了。
数据来源
聚宽JQData (https://www.joinquant.com/)
数据接口
聚宽JQData (https://www.joinquant.com/)
源码如下:
```python
from jqdatasdk import *
import pandas as pd
import datetime
import numpy as np
import time as time
from datetime import datetime
#认证,如果没有帐号请到聚宽JQData去注册!!!
auth('帐号','密码')
#获取股票列表
st_basics = get_all_securities(types=['stock'], date='2019-01-09')
codes = list(st_basics.index)
st_list = []
#按每只股票代码进行查询
for code in codes:
q = query(finance.STK_COMPANY_INFO).filter(finance.STK_COMPANY_INFO.code == code).limit(100)
df = finance.run_query(q)
if(len(df.index) == 0):
continue
if ( (df['business_scope'].loc[0].find('风能') < 0) &
(df['business_scope'].loc[0].find('光伏') < 0) &
(df['business_scope'].loc[0].find('太阳能') < 0) &
(df['business_scope'].loc[0].find('风力发电') < 0) &
(df['business_scope'].loc[0].find('光伏发电') < 0) ):
continue
else:
print((df['code'].loc[0],df['short_name'].loc[0]))
st_list.append(df['code'].loc[0])
print(st_list)
#选择市值大于50亿小于100亿,PE大于0小于50的股票,按市值降序排列
# 当然你也可以根据其他条件排序
df = get_fundamentals(query(
valuation.code, valuation.market_cap, valuation.pe_ratio, income.total_operating_revenue
).filter(
valuation.code.in_(st_list),
valuation.market_cap > 50,
valuation.market_cap < 100,
valuation.pe_ratio < 50,
valuation.pe_ratio > 0,
#income.total_operating_revenue > 2e10
).order_by(
# 按市值降序排列
valuation.market_cap.desc()
).limit(
# 最多返回100个
100
), date='2019-01-09')
print(df)
强调:不是推荐股票,仅仅是为了学习研究
感谢聚宽小编 JQData01 给我开放了更多的数据访问资源
标签:loc,code,df,JQData,st,事件驱动,选股,import,valuation 来源: https://blog.csdn.net/yefengchuiyu/article/details/104693779