**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 | 
