**kwargs
: 关键字参数, 若kwargs.keys()包括data_source, 则data_source取传入的kwargs[‘data_source’], 否则从data_provider.env.DATA_SOURCE取
[1]:
from __future__ import print_function, unicode_literals
import pandas as pd
import datetime
from data_provider.datafeed.universe import Universe
[2]:
date_time = datetime.datetime(2017, 6, 14)
uni = Universe()
1、获取特定日期所有A股
[3]:
a_share = uni.get_a_share_by_date(date_time)
a_share[:5]
[3]:
['600879.SH', '601518.SH', '603368.SH', '601038.SH', '000961.SZ']
2、获得某一日A股中的全部ST股票
[4]:
st_share = uni.get_st_stock_by_date(date_time)
st_share[:3]
[4]:
['600091.SH', '600112.SH', '600121.SH']
3、获得某一日停牌的的A股
[5]:
suspend_share = uni.get_suspended_a_share_by_date(date_time)
suspend_share[:3]
[5]:
['002669.SZ', '601989.SH', '300312.SZ']
4、获得一段时间内上市全部A股
[6]:
end_dt = datetime.datetime(2017, 6, 30)
period_a_share = uni.get_a_share_in_period(date_time, end_dt)
period_a_share[:3]
[6]:
['600000.SH', '600004.SH', '600006.SH']
5、获取一段时间内A股有分红送股的的股票信息
[7]:
star_dt = datetime.datetime(2016, 1, 1)
end_dt = datetime.datetime(2016, 7, 1)
dividend_a_share = uni.get_a_share_dividend(star_dt, end_dt)
dividend_a_share[:10]
datetime | dividend_date | price_allotment | ratio_allotment | ratio_cash | ratio_dividend | ticker | |
---|---|---|---|---|---|---|---|
0 | 2017-10-09 | 20160107 | 8.19 | 0.287821 | 0.000 | 0.0 | 601377.SH |
1 | 2017-10-09 | 20160114 | 0.00 | 0.000000 | 0.086 | 0.0 | 600705.SH |
2 | 2017-10-09 | 20160125 | 4.24 | 0.287142 | 0.000 | 0.0 | 601099.SH |
3 | 2017-10-09 | 20160126 | 9.87 | 0.295106 | 0.000 | 0.0 | 002258.SZ |
4 | 2017-10-09 | 20160201 | 5.57 | 0.291411 | 0.000 | 0.0 | 002363.SZ |
5 | 2017-10-09 | 20160205 | 9.96 | 0.283335 | 0.000 | 0.0 | 000797.SZ |
6 | 2017-10-09 | 20160205 | 8.34 | 0.290185 | 0.000 | 0.0 | 300106.SZ |
7 | 2017-10-09 | 20160225 | 0.00 | 0.000000 | 0.000 | 2.0 | 000836.SZ |
8 | 2017-10-09 | 20160226 | 0.00 | 0.000000 | 0.075 | 0.0 | 600016.SH |
9 | 2017-10-09 | 20160301 | 0.00 | 0.000000 | 0.200 | 1.0 | 002099.SZ |
6、获取某日指数成分股的权重
[8]:
index_id = '000905.SH'
index_a_share_weight = uni.get_index_compose_weight_by_date(index_id, date_time)
index_a_share_weight[:10]
securityId | securityWeight | |
---|---|---|
0 | 300136.SZ | 0.006573 |
1 | 000656.SZ | 0.006511 |
2 | 002460.SZ | 0.005899 |
3 | 600643.SH | 0.005730 |
4 | 600201.SH | 0.005705 |
5 | 600487.SH | 0.005680 |
6 | 002572.SZ | 0.005679 |
7 | 600522.SH | 0.005535 |
8 | 002508.SZ | 0.005461 |
9 | 002271.SZ | 0.004952 |
7、获取系统支持的指数列表
[9]:
indexes = uni.get_all_indexes()
indexes
[9]:
['000001.SH',
'000002.SH',
'000003.SH',
'000004.SH',
'000005.SH',
'000006.SH',
'000007.SH',
'000008.SH',
'000009.SH',
'000010.SH',
'000011.SH',
'000012.SH',
'000013.SH',
'000015.SH',
'000016.SH',
'000017.SH',
'000018.SH',
'000019.SH',
'000020.SH',
'000021.SH',
'000022.SH',
'000023.SH',
'000025.SH',
'000026.SH',
'000027.SH',
'000028.SH',
'000029.SH',
'000030.SH',
'000031.SH',
'000032.SH',
'000033.SH',
'000034.SH',
'000035.SH',
'000036.SH',
'000037.SH',
'000038.SH',
'000039.SH',
'000040.SH',
'000041.SH',
'000042.SH',
'000043.SH',
'000044.SH',
'000045.SH',
'000046.SH',
'000047.SH',
'000048.SH',
'000049.SH',
'000050.SH',
'000051.SH',
'000052.SH',
'000053.SH',
'000054.SH',
'000055.SH',
'000056.SH',
'000057.SH',
'000058.SH',
'000059.SH',
'000060.SH',
'000061.SH',
'000062.SH',
'000063.SH',
'000064.SH',
'000065.SH',
'000066.SH',
'000067.SH',
'000068.SH',
'000069.SH',
'000070.SH',
'000071.SH',
'000072.SH',
'000073.SH',
'000074.SH',
'000075.SH',
'000076.SH',
'000077.SH',
'000078.SH',
'000079.SH',
'000090.SH',
'000091.SH',
'000092.SH',
'000093.SH',
'000094.SH',
'000095.SH',
'000096.SH',
'000097.SH',
'000098.SH',
'000099.SH',
'000100.SH',
'000102.SH',
'000103.SH',
'000104.SH',
'000105.SH',
'000106.SH',
'000107.SH',
'000108.SH',
'000109.SH',
'000110.SH',
'000111.SH',
'000112.SH',
'000113.SH',
'000114.SH',
'000115.SH',
'000117.SH',
'000118.SH',
'000119.SH',
'000120.SH',
'000121.SH',
'000122.SH',
'000123.SH',
'000125.SH',
'000126.SH',
'000128.SH',
'000129.SH',
'000130.SH',
'000131.SH',
'000132.SH',
'000133.SH',
'000134.SH',
'000135.SH',
'000136.SH',
'000137.SH',
'000138.SH',
'000139.SH',
'000141.SH',
'000142.SH',
'000145.SH',
'000146.SH',
'000147.SH',
'000148.SH',
'000149.SH',
'000150.SH',
'000151.SH',
'000152.SH',
'000153.SH',
'000155.SH',
'000158.SH',
'000159.SH',
'000160.SH',
'000161.SH',
'000162.SH',
'000171.SH',
'000300.SH',
'000801.SH',
'000802.SH',
'000803.SH',
'000804.SH',
'000805.SH',
'000806.SH',
'000807.SH',
'000808.SH',
'000809.SH',
'000810.SH',
'000811.SH',
'000812.SH',
'000813.SH',
'000814.SH',
'000815.SH',
'000816.SH',
'000817.SH',
'000818.SH',
'000819.SH',
'000820.SH',
'000821.SH',
'000822.SH',
'000824.SH',
'000825.SH',
'000826.SH',
'000827.SH',
'000828.SH',
'000829.SH',
'000830.SH',
'000831.SH',
'000832.SH',
'000838.SH',
'000839.SH',
'000840.SH',
'000841.SH',
'000842.SH',
'000843.SH',
'000844.SH',
'000846.SH',
'000852.SH',
'000855.SH',
'000901.SH',
'000902.SH',
'000903.SH',
'000904.SH',
'000905.SH',
'000906.SH',
'000907.SH',
'000908.SH',
'000909.SH',
'000910.SH',
'000911.SH',
'000912.SH',
'000913.SH',
'000914.SH',
'000915.SH',
'000916.SH',
'000917.SH',
'000918.SH',
'000919.SH',
'000920.SH',
'000921.SH',
'000922.SH',
'000923.SH',
'000924.SH',
'000925.SH',
'000926.SH',
'000927.SH',
'000928.SH',
'000929.SH',
'000930.SH',
'000931.SH',
'000932.SH',
'000933.SH',
'000934.SH',
'000935.SH',
'000936.SH',
'000937.SH',
'000938.SH',
'000939.SH',
'000940.SH',
'000941.SH',
'000942.SH',
'000943.SH',
'000944.SH',
'000945.SH',
'000946.SH',
'000947.SH',
'000948.SH',
'000949.SH',
'000950.SH',
'000951.SH',
'000952.SH',
'000953.SH',
'000954.SH',
'000955.SH',
'000956.SH',
'000957.SH',
'000958.SH',
'000959.SH',
'000960.SH',
'000961.SH',
'000962.SH',
'000963.SH',
'000964.SH',
'000965.SH',
'000966.SH',
'000967.SH',
'000968.SH',
'000969.SH',
'000970.SH',
'000971.SH',
'000972.SH',
'000973.SH',
'000975.SH',
'000976.SH',
'000977.SH',
'000978.SH',
'000979.SH',
'000980.SH',
'000981.SH',
'000982.SH',
'000983.SH',
'000984.SH',
'000985.SH',
'000986.SH',
'000987.SH',
'000988.SH',
'000989.SH',
'000990.SH',
'000991.SH',
'000992.SH',
'000993.SH',
'000994.SH',
'000995.SH',
'000996.SH',
'000997.SH',
'000998.SH',
'399701.SZ',
'399702.SZ',
'399703.SZ',
'399704.SZ',
'399705.SZ',
'399706.SZ',
'399707.SZ',
'399802.SZ',
'399803.SZ',
'399804.SZ',
'399805.SZ',
'399806.SZ',
'399807.SZ',
'399808.SZ',
'399809.SZ',
'399810.SZ',
'399811.SZ',
'399812.SZ',
'399813.SZ',
'399814.SZ',
'399817.SZ',
'399959.SZ',
'399965.SZ',
'399966.SZ',
'399967.SZ',
'399970.SZ',
'399971.SZ',
'399972.SZ',
'399973.SZ',
'399974.SZ',
'399975.SZ',
'399976.SZ',
'399983.SZ',
'399986.SZ',
'399987.SZ',
'399989.SZ',
'399990.SZ',
'399991.SZ',
'399992.SZ',
'399993.SZ',
'399994.SZ',
'399995.SZ',
'399996.SZ',
'399997.SZ',
'399998.SZ']
8、获取所有个股的申万行业分类
[10]:
sw_industry = uni.get_sw_industry('20170601')
sw_industry.head()
securityId | swIndustryLv1 | swIndustryLv2 | swIndustryLv3 | swIndustrycodeLv1 | swIndustrycodeLv2 | swIndustrycodeLv3 | time | |
---|---|---|---|---|---|---|---|---|
0 | 600000.SH | 申万银行 | 申万银行 | 申万银行 | SW801780 | SW801192 | SW851911 | 20170601 |
1 | 600004.SH | 申万交通运输 | 申万机场 | 申万机场 | SW801170 | SW801174 | SW851751 | 20170601 |
2 | 600006.SH | 申万汽车 | 申万汽车整车 | 申万商用载货车 | SW801880 | SW801094 | SW850912 | 20170601 |
3 | 600007.SH | 申万房地产 | 申万房地产开发 | 申万房地产开发 | SW801180 | SW801181 | SW851811 | 20170601 |
4 | 600008.SH | 申万公用事业 | 申万水务 | 申万水务 | SW801160 | SW801164 | SW851621 | 20170601 |
8.1 所有申万1级行业分类
[11]:
sw_industry['swIndustryLv1'].unique()
[11]:
array(['申万银行', '申万交通运输', '申万汽车', '申万房地产', '申万公用事业', '申万钢铁', '申万化工',
'申万非银金融', '申万机械设备', '申万传媒', '申万国防军工', '申万建筑装饰', '申万通信', '申万综合',
'申万休闲服务', '申万医药生物', '申万商业贸易', '申万食品饮料', '申万家用电器', '申万轻工制造',
'申万纺织服装', '申万电子', '申万电气设备', '申万农林牧渔', '申万计算机', '申万有色金属', '申万采掘',
'申万建筑材料'], dtype=object)
8.2 申万2级行业分类
[12]:
sw_industry['swIndustryLv2'].unique()
[12]:
array(['申万银行', '申万机场', '申万汽车整车', '申万房地产开发', '申万水务', '申万钢铁', '申万电力',
'申万高速公路', '申万港口', '申万航运', '申万石油化工', '申万航空运输', '申万证券', '申万专用设备',
'申万文化传媒', '申万航空装备', '申万基础建设', '申万通信运营', '申万综合', '申万景点', '申万医疗器械',
'申万医药商业', '申万物流', '申万贸易', '申万饮料制造', '申万视听器材', '申万化学制药', '申万化学纤维',
'申万园区开发', '申万造纸', '申万纺织制造', '申万光学光电子', '申万船舶制造', '申万食品加工', '申万其他电子',
'申万化学原料', '申万包装印刷', '申万化学制品', '申万生物制品', '申万汽车零部件', '申万中药', '申万家用轻工',
'申万高低压设备', '申万渔业', '申万其他交运设备', '申万计算机设备', '申万通信设备', '申万服装家纺',
'申万种植业', '申万稀有金属', '申万金属非金属新材料', '申万航天装备', '申万煤炭开采', '申万专业零售',
'申万铁路运输', '申万农产品加工', '申万旅游综合', '申万工业金属', '申万塑料', '申万其他建材', '申万电源设备',
'申万金属制品', '申万房屋建设', '申万半导体', '申万通用机械', '申万橡胶', '申万元件', '申万地面兵装',
'申万林业', '申万其他采掘', '申万动物保健', '申万装修装饰', '申万环保工程及服务', '申万专业工程', '申万酒店',
'申万运输设备', '申万电气自动化设备', '申万计算机应用', '申万一般零售', '申万保险', '申万玻璃制造',
'申万汽车服务', '申万黄金', '申万农业综合', '申万水泥制造', '申万燃气', '申万白色家电', '申万营销传播',
'申万商业物业经营', '申万饲料', '申万公交', '申万电机', '申万采掘服务', '申万园林工程', '申万多元金融',
'申万互联网传媒', '申万畜禽养殖', '申万医疗服务', '申万石油开采', '申万电子制造', '申万仪器仪表',
'申万其他轻工制造', '申万餐饮'], dtype=object)
8.3 申万3级行业分类
[13]:
sw_industry['swIndustryLv3'].unique()
[13]:
array(['申万银行', '申万机场', '申万商用载货车', '申万房地产开发', '申万水务', '申万普钢', '申万火电',
'申万高速公路', '申万港口', '申万航运', '申万石油加工', '申万航空运输', '申万证券', '申万工程机械',
'申万有线电视网络', '申万航空装备', '申万路桥施工', '申万通信运营', '申万综合', '申万自然景点',
'申万医疗器械', '申万医药商业', '申万物流', '申万贸易', '申万黄酒', '申万彩电', '申万化学制剂',
'申万维纶', '申万园区开发', '申万商用载客车', '申万水利工程', '申万造纸', '申万其他纺织', '申万光学元件',
'申万船舶制造', '申万食品综合', '申万其他电子', '申万氯碱', '申万包装印刷', '申万磷化工及磷酸盐',
'申万生物制品', '申万汽车零部件', '申万葡萄酒', '申万中药', '申万珠宝首饰', '申万影视动漫', '申万高压设备',
'申万啤酒', '申万氮肥', '申万海洋捕捞', '申万其他交运设备', '申万计算机设备', '申万水电', '申万乘用车',
'申万通信传输设备', '申万其他服装', '申万其他种植业', '申万线缆部件及其他', '申万稀土', '申万中压设备',
'申万金属新材料', '申万特钢', '申万航天装备', '申万煤炭开采', '申万专业连锁', '申万铁路运输', '申万粮油加工',
'申万终端设备', '申万其他家用轻工', '申万旅游综合', '申万铜', '申万改性塑料', '申万其他建材',
'申万其他塑料制品', '申万光伏设备', '申万棉纺', '申万其他文化传媒', '申万氟化工及制冷剂', '申万新能源发电',
'申万金属制品', '申万热电', '申万重型机械', '申万房屋建设', '申万集成电路', '申万磨具磨料', '申万玻纤',
'申万男装', '申万焦炭加工', '申万轮胎', '申万印制电路板', '申万地面兵装', '申万调味发酵品', '申万林业',
'申万其他农产品加工', '申万其他采掘', '申万动物保健', '申万白酒', '申万火电设备', '申万显示器件',
'申万非金属新材料', '申万装修装饰', '申万化学原料药', '申万环保工程及服务', '申万内燃机', '申万铝',
'申万毛纺', '申万其他化学制品', '申万平面媒体', '申万聚氨酯', '申万丝绸', '申万被动元件', '申万其他酒类',
'申万机床工具', '申万化学工程', '申万日用化学产品', '申万果蔬加工', '申万水产养殖', '申万酒店', '申万LED',
'申万铁路设备', '申万电网自动化', '申万IT服务', '申万百货', '申万通信配套服务', '申万风电设备', '申万保险',
'申万玻璃制造', '申万汽车服务', '申万软饮料', '申万纺织服装设备', '申万黄金', '申万农业综合', '申万水泥制造',
'申万多业态零售', '申万无机盐', '申万磁性材料', '申万铅锌', '申万燃气', '申万冰箱', '申万家具',
'申万其它专用机械', '申万纺织化学用品', '申万种子生产', '申万分立器件', '申万超市', '申万印染',
'申万机械基础件', '申万营销服务', '申万石油贸易', '申万环保设备', '申万农药', '申万储能设备', '申万纯碱',
'申万专业市场', '申万乳品', '申万饲料', '申万软件开发', '申万其他稀有小金属', '申万低压设备', '申万磷肥',
'申万其它电源设备', '申万钢结构', '申万制冷空调设备', '申万涤纶', '申万铁路建设', '申万其他基础建设',
'申万钨', '申万冶金矿采化工设备', '申万公交', '申万电机', '申万油气钻采服务', '申万人工景点', '申万粮食种植',
'申万园林工程', '申万家电零部件', '申万多元金融', '申万移动通讯增值服务', '申万畜禽养殖', '申万医疗服务',
'申万石油开采', '申万其他互联网服务', '申万其他纤维', '申万城轨建设', '申万一般物业经营', '申万楼宇设备',
'申万空调', '申万印刷包装机械', '申万综合电力设备商', '申万粘胶', '申万国际工程承包', '申万洗衣机',
'申万民爆用品', '申万农用机械', '申万计量仪表', '申万其他专业工程', '申万电子零部件制造', '申万其它通用机械',
'申万互联网信息服务', '申万鞋帽', '申万工控自动化', '申万其他橡胶制品', '申万小家电', '申万文娱用品',
'申万女装', '申万休闲服装', '申万仪器仪表', '申万管材', '申万涂料油漆油墨制造', '申万其他轻工制造',
'申万其他化学原料', '申万其他采掘服务', '申万餐饮', '申万电子系统组装', '申万燃机发电', '申万氨纶',
'申万半导体材料', '申万钾肥', '申万其它视听器材', '申万肉制品', '申万复合肥', '申万辅料', '申万耐火材料',
'申万炭黑', '申万家纺', '申万合成革', '申万锂'], dtype=object)
9、获取因子值
[14]:
help(uni.get_period_factor_data)
Help on method get_period_factor_data in module data_provider.datafeed.universe:
get_period_factor_data(factor_name, begin_day, end_day=None, is_public=True) method of data_provider.datafeed.universe.Universe instance
获取一段时间的因子值
Args:
begin_day: 开始日期.str类型, int或datetime.datetime,
如20170508, "201701014", datetime.datetime(2017, 6, 5)
end_day: 截止日期, 默认None,则取begin_day, str, int或datetime.datetime
factor_name: 因子名称, str
is_public: 是否是公共因子,默认是
Returns:
pandas.DataFrame 类型, columns: [tdate, security_code, factor_value]
[15]:
uni.get_period_factor_data('dailyReturn', begin_day=20171201, end_day=20171208)[:10]
tdate | security_code | factor_value | |
---|---|---|---|
index | |||
2017-12-01 | 20171201 | 000001.SZ | -0.028401 |
2017-12-01 | 20171201 | 000002.SZ | -0.015695 |
2017-12-01 | 20171201 | 000004.SZ | 0.025039 |
2017-12-01 | 20171201 | 000005.SZ | 0.004762 |
2017-12-01 | 20171201 | 000006.SZ | 0.000000 |
2017-12-01 | 20171201 | 000007.SZ | 0.000000 |
2017-12-01 | 20171201 | 000008.SZ | 0.012972 |
2017-12-01 | 20171201 | 000009.SZ | -0.002632 |
2017-12-01 | 20171201 | 000010.SZ | 0.015595 |
2017-12-01 | 20171201 | 000011.SZ | -0.004075 |
10、获取股票市值
[16]:
help(uni.get_market_value)
Help on method get_market_value in module data_provider.datafeed.universe:
get_market_value(begin_day, end_day, is_float=False) method of data_provider.datafeed.universe.Universe instance
获取市值
Args:
begin_day: 开始日期.str, datetime, int,
如"201701014", 20170808, datetime.datetime(2017, 5, 8)
end_day: 截止日期
is_float: 是否是流通市值, 默认取总市值。如果为True, 取流通市值
Returns:
pandas.DataFrame类型, 包含散列:ticker, date_time, market_value
[17]:
uni.get_market_value(begin_day=20171201, end_day=20171208, is_float=True)[:10]
float_market_value | date_time | ticker | |
---|---|---|---|
0 | 2.199339e+07 | 20171201 | 000001.SZ |
1 | 2.983626e+07 | 20171201 | 000002.SZ |
2 | 5.203493e+04 | 20171201 | 000003.SZ |
3 | 2.173649e+05 | 20171201 | 000004.SZ |
4 | 4.014159e+05 | 20171201 | 000005.SZ |
5 | 1.324992e+06 | 20171201 | 000006.SZ |
6 | 5.147074e+05 | 20171201 | 000007.SZ |
7 | 1.708297e+06 | 20171201 | 000008.SZ |
8 | 1.607028e+06 | 20171201 | 000009.SZ |
9 | 2.720514e+05 | 20171201 | 000010.SZ |
11、获取涨跌停信息
[18]:
help(uni.get_limit_up_down)
Help on method get_limit_up_down in module data_provider.datafeed.universe:
get_limit_up_down(begin_date, end_date) method of data_provider.datafeed.universe.Universe instance
获取一段时间内的股票涨跌停的信息
:param begin_date: python datetime 类型
:param end_date: python datetime 类型
:return:
[19]:
uni.get_limit_up_down(begin_date=20171201, end_date=20171208)[:10]
isdt | isdt2 | iszt | iszt2 | stockcode | time | |
---|---|---|---|---|---|---|
0 | 0 | 0 | 1 | 0 | 000677.SZ | 2017-12-01 |
1 | 0 | 0 | 1 | 0 | 000681.SZ | 2017-12-01 |
2 | 0 | 0 | 1 | 0 | 000916.SZ | 2017-12-01 |
3 | 1 | 1 | 0 | 0 | 000953.SZ | 2017-12-01 |
4 | 0 | 0 | 1 | 0 | 000982.SZ | 2017-12-01 |
5 | 0 | 0 | 1 | 0 | 002070.SZ | 2017-12-01 |
6 | 0 | 0 | 1 | 0 | 002129.SZ | 2017-12-01 |
7 | 0 | 0 | 1 | 0 | 002194.SZ | 2017-12-01 |
8 | 0 | 0 | 1 | 0 | 002214.SZ | 2017-12-01 |
9 | 0 | 0 | 1 | 0 | 002336.SZ | 2017-12-01 |
12、获取换手率信息
[20]:
help(uni.get_turnover_rate)
Help on method get_turnover_rate in module data_provider.datafeed.universe:
get_turnover_rate(begin_day, end_day) method of data_provider.datafeed.universe.Universe instance
获取换手率
Args:
begin_day: 开始日期.str类型, 如"201701014"
end_day: 截止日期
Returns:
pandas.DataFrame类型, 包含散列:ticker, date_time, turnover_rate
[21]:
uni.get_turnover_rate(begin_day=20171201, end_day=20171208)[:10]
turnover_rate | date_time | ticker | |
---|---|---|---|
0 | 1.055050 | 20171201 | 000001.SZ |
1 | 0.574136 | 20171201 | 000002.SZ |
2 | 0.000000 | 20171201 | 000003.SZ |
3 | 2.665093 | 20171201 | 000004.SZ |
4 | 0.248664 | 20171201 | 000005.SZ |
5 | 0.000000 | 20171201 | 000006.SZ |
6 | 0.000000 | 20171201 | 000007.SZ |
7 | 0.286068 | 20171201 | 000008.SZ |
8 | 0.431557 | 20171201 | 000009.SZ |
9 | 1.295662 | 20171201 | 000010.SZ |
13、获取股本信息
[22]:
help(uni.get_stock_share_by_date)
Help on method get_stock_share_by_date in module data_provider.datafeed.universe:
get_stock_share_by_date(dateTime) method of data_provider.datafeed.universe.Universe instance
获得某一日股本信息
Args:
dateTime: 含义:日期; 类型:python datetime, str, int
Returns:
DataFrame of stock share info, including columns of
'ticker', 'datetime', 'AShare',
'totall_share' and 'negotiable_AShare'
[23]:
uni.get_stock_share_by_date(dateTime=20180306)[:10]
ticker | datetime | totall_share | AShare | negotiable_AShare | |
---|---|---|---|---|---|
0 | 000001.SZ | 2017-12-31 | 1.717041e+10 | 1.717041e+10 | 1.691798e+10 |
1 | 000002.SZ | 2017-12-31 | 1.103915e+10 | 9.724197e+09 | 9.715170e+09 |
2 | 000003.SZ | 2004-01-16 | 3.334336e+08 | 2.591968e+08 | 1.920108e+08 |
3 | 000004.SZ | 2018-02-07 | 8.397668e+07 | 8.397668e+07 | 8.301318e+07 |
4 | 000005.SZ | 2017-01-03 | 1.058537e+09 | 1.058537e+09 | 9.512225e+08 |
5 | 000006.SZ | 2017-12-31 | 1.349995e+09 | 1.349995e+09 | 1.348267e+09 |
6 | 000007.SZ | 2017-05-22 | 3.464480e+08 | 3.464480e+08 | 3.089480e+08 |
7 | 000008.SZ | 2018-02-28 | 2.818330e+09 | 2.818330e+09 | 2.639098e+09 |
8 | 000009.SZ | 2017-12-31 | 2.149345e+09 | 2.149345e+09 | 2.119864e+09 |
9 | 000010.SZ | 2017-02-07 | 8.198547e+08 | 8.198547e+08 | 5.221715e+08 |
14、获取前复权因子
[24]:
help(uni.get_period_qfq_factors)
Help on method get_period_qfq_factors in module data_provider.datafeed.universe:
get_period_qfq_factors(begin_day, end_day, tickers=None) method of data_provider.datafeed.universe.Universe instance
获取一段时间的前复权因子值
Args:
begin_day: 开始日期.str类型, int或datetime.datetime,
如20170508, "201701014", datetime.datetime(2017, 6, 5)
end_day: 截止日期, str, int或datetime.datetime
tickers: list of ticker, 默认None, 则取时间段内所有股票
Returns:
pandas.DataFrame 类型, columns: [datetime, ticker, forwward_factor]
[25]:
uni.get_period_qfq_factors(begin_day=20170518, end_day=20170608)[:10]
datetime | qfq_factor | ticker | |
---|---|---|---|
0 | 2017-05-18 | 0.966323 | 000001.SZ |
1 | 2017-05-19 | 0.966168 | 000001.SZ |
2 | 2017-05-22 | 0.966129 | 000001.SZ |
3 | 2017-05-23 | 0.966553 | 000001.SZ |
4 | 2017-05-24 | 0.966629 | 000001.SZ |
5 | 2017-05-25 | 0.967692 | 000001.SZ |
6 | 2017-05-26 | 0.967692 | 000001.SZ |
7 | 2017-05-31 | 0.968043 | 000001.SZ |
8 | 2017-06-01 | 0.968009 | 000001.SZ |
9 | 2017-06-02 | 0.967939 | 000001.SZ |
15、获取上市日信息
[26]:
help(uni.get_all_ipo_info)
Help on method get_all_ipo_info in module data_provider.datafeed.universe:
get_all_ipo_info() method of data_provider.datafeed.universe.Universe instance
获取所有股票IPO信息
:return:
[27]:
uni.get_all_ipo_info()[:10]
delist_date | ipo_date | name | ticker | |
---|---|---|---|---|
0 | 99999999.0 | 19991110 | 浦发银行 | 600000.SH |
1 | 20091229.0 | 19980122 | 邯郸钢铁 | 600001.SH |
2 | 20060424.0 | 19980408 | 齐鲁石化 | 600002.SH |
3 | 20100226.0 | 19990810 | ST东北高 | 600003.SH |
4 | 99999999.0 | 20030428 | 白云机场 | 600004.SH |
5 | 20170214.0 | 19990803 | 武钢股份 | 600005.SH |
6 | 99999999.0 | 19990727 | 东风汽车 | 600006.SH |
7 | 99999999.0 | 19990312 | 中国国贸 | 600007.SH |
8 | 99999999.0 | 20000427 | 首创股份 | 600008.SH |
9 | 99999999.0 | 19980218 | 上海机场 | 600009.SH |
16、获取风险暴露
[28]:
help(uni.get_exposure)
Help on method get_exposure in module data_provider.datafeed.universe:
get_exposure(day) method of data_provider.datafeed.universe.Universe instance
获取风险暴露
Args:
day: 开始日期.str类型, int或datetime.datetime
Retruns:
pandas.DataFrame
[29]:
uni.get_exposure(date_time).head()
Beta | Size | Momentum | ResidualVolatility | NLSize | Value | Liquidity | EarningsYield | Growth | Leverage | … | SW801730 | SW801740 | SW801750 | SW801760 | SW801770 | SW801780 | SW801790 | SW801880 | SW801890 | country | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ticker | |||||||||||||||||||||
600097.SH | -1.232222 | -1.060490 | 0.014758 | 0.301174 | 0.888300 | -0.659659 | -0.112505 | 1.145909 | -1.250743 | 0.268749 | … | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
600108.SH | -0.289225 | -0.080569 | -0.927280 | -1.220146 | -0.851756 | 1.222665 | -0.679438 | -0.342991 | -1.216974 | 0.335309 | … | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
600127.SH | 0.106713 | -1.074752 | -0.132965 | -0.656834 | 0.926463 | -0.683098 | -0.845106 | -1.384410 | 0.353087 | -0.093629 | … | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
600189.SH | 0.083742 | -1.334371 | -0.872146 | -0.333578 | 1.684468 | 0.695511 | -1.652626 | -0.572593 | -1.530222 | 1.565576 | … | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
600191.SH | -0.128906 | -0.854737 | -0.953667 | 0.329592 | 0.378341 | 0.965913 | -0.045197 | -1.231617 | -1.743789 | -0.799903 | … | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
17、获取因子收益
[30]:
help(uni.get_factor_return)
Help on method get_factor_return in module data_provider.datafeed.universe:
get_factor_return(day) method of data_provider.datafeed.universe.Universe instance
获取因子收益
:param day: 开始日期.str类型, int或datetime.datetime
:return:
[31]:
uni.get_factor_return(date_time)
factor_return | |
---|---|
factor | |
Beta | 0.247850 |
Size | -0.181273 |
Momentum | -0.308781 |
ResidualVolatility | 0.215140 |
NLSize | -0.038747 |
Value | -0.031932 |
Liquidity | -0.170247 |
EarningsYield | -0.038983 |
Growth | 0.103162 |
Leverage | -0.050070 |
SW801010 | -0.200052 |
SW801020 | -0.011624 |
SW801030 | -0.005902 |
SW801040 | 0.326200 |
SW801050 | 0.316620 |
SW801080 | -0.476373 |
SW801110 | -1.111126 |
SW801120 | 0.045389 |
SW801130 | -0.322656 |
SW801140 | -0.196008 |
SW801150 | -0.456757 |
SW801160 | -0.427975 |
SW801170 | -0.049621 |
SW801180 | -0.884499 |
SW801200 | 0.183807 |
SW801210 | -0.108098 |
SW801230 | -0.107197 |
SW801710 | -0.033480 |
SW801720 | -0.347687 |
SW801730 | -0.165069 |
SW801740 | 0.684752 |
SW801750 | -0.947745 |
SW801760 | -0.912303 |
SW801770 | -0.170048 |
SW801780 | 1.178600 |
SW801790 | 0.037599 |
SW801880 | 0.205049 |
SW801890 | 0.001888 |
country | 0.373919 |
18、获取特质因子收益
[32]:
help(uni.get_specific_factor_return)
Help on method get_specific_factor_return in module data_provider.datafeed.universe:
get_specific_factor_return(day) method of data_provider.datafeed.universe.Universe instance
获取特质因子收益
:param day: 开始日期.str类型, int或datetime.datetime
:return:
[33]:
uni.get_specific_factor_return(date_time).head()
[33]:
ticker
000001.SZ -0.229239
000002.SZ -1.039067
000004.SZ -0.063860
000005.SZ -1.023790
000006.SZ -0.935557
Name: specific_return, dtype: float64
19、获取特质风险
[34]:
help(uni.get_srisk)
Help on method get_srisk in module data_provider.datafeed.universe:
get_srisk(day) method of data_provider.datafeed.universe.Universe instance
获取特质风险
:param day: 开始日期.str类型, int或datetime.datetime
:return:
[35]:
uni.get_srisk(date_time).head()
[35]:
ticker
000001.SZ 0.288600
000002.SZ 4.192499
000004.SZ 2.995252
000005.SZ 2.062170
000006.SZ 4.006724
Name: srisk, dtype: float64
20、获取协方差矩阵
[36]:
help(uni.get_covariance)
Help on method get_covariance in module data_provider.datafeed.universe:
get_covariance(day) method of data_provider.datafeed.universe.Universe instance
获取协方差矩阵
:param day:
:return:
[37]:
uni.get_covariance(date_time).head()
Beta | Size | Momentum | ResidualVolatility | NLSize | Value | Liquidity | EarningsYield | Growth | Leverage | … | SW801730 | SW801740 | SW801750 | SW801760 | SW801770 | SW801780 | SW801790 | SW801880 | SW801890 | country | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Beta | 0.049512 | 0.025217 | 0.006187 | -0.013167 | 0.012594 | 0.009478 | 0.008717 | 0.010254 | 0.009241 | 0.008648 | … | -0.018415 | -0.049263 | -0.020287 | -0.012577 | -0.021973 | 0.058847 | 0.045135 | -0.007285 | -0.010654 | 0.032849 |
Size | 0.025217 | 0.107107 | 0.024414 | -0.014580 | 0.025546 | 0.023108 | 0.019076 | 0.030737 | 0.022865 | 0.020195 | … | -0.021089 | -0.083405 | -0.034295 | -0.026829 | -0.035465 | 0.098658 | 0.078447 | -0.011059 | -0.008702 | -0.259096 |
Momentum | 0.006187 | 0.024414 | 0.046329 | -0.002708 | 0.015874 | 0.011222 | 0.015186 | 0.014867 | 0.016164 | 0.006948 | … | -0.003991 | -0.034555 | 0.009621 | 0.008139 | -0.001706 | 0.069330 | 0.037486 | -0.011223 | -0.006925 | -0.095304 |
ResidualVolatility | -0.013167 | -0.014580 | -0.002708 | 0.125513 | 0.010949 | 0.007789 | 0.012686 | 0.006159 | 0.011578 | 0.000137 | … | -0.006403 | -0.027125 | 0.027015 | 0.000339 | -0.000005 | 0.091510 | 0.048322 | -0.012513 | -0.008119 | 0.190512 |
NLSize | 0.012594 | 0.025546 | 0.015874 | 0.010949 | 0.027684 | 0.014852 | 0.015867 | 0.017665 | 0.015466 | 0.012005 | … | -0.011412 | -0.050531 | -0.006668 | -0.007941 | -0.008300 | 0.090192 | 0.046971 | -0.009627 | -0.010387 | -0.088501 |