In [1]:
import tushare as ts

In [3]:
cons = ts.get_apis()

1、获取股票行情


In [11]:
#股票日线行情
df = ts.bar('600000', conn=cons, freq='D', start_date='2016-01-01', end_date='')
df.head(5)


Out[11]:
code open close high low vol amount
datetime
2017-10-27 600000 12.85 12.85 12.94 12.82 326738.0 420972320.0
2017-10-26 600000 12.87 12.82 12.88 12.78 252751.0 324110144.0
2017-10-25 600000 12.86 12.90 12.94 12.82 207438.0 267109744.0
2017-10-24 600000 12.84 12.86 12.95 12.82 272360.0 350864960.0
2017-10-23 600000 13.02 12.84 13.03 12.83 315638.0 406941728.0

2、股票因子数据


In [9]:
#带因子的行情
df = ts.bar('600000', conn=cons, start_date='2016-01-01', end_date='', ma=[5, 10, 20], factors=['vr', 'tor'])
df.head(5)


Out[9]:
code open close high low vol amount tor vr ma5 ma10 ma20
datetime
2017-10-27 600000 12.85 12.85 12.94 12.82 326738.0 420972320.0 0.12 1.34 12.85 12.95 12.95
2017-10-26 600000 12.87 12.82 12.88 12.78 252751.0 324110144.0 0.09 0.84 12.89 12.96 12.95
2017-10-25 600000 12.86 12.90 12.94 12.82 207438.0 267109744.0 0.07 0.59 12.95 12.98 12.96
2017-10-24 600000 12.84 12.86 12.95 12.82 272360.0 350864960.0 0.10 0.84 12.98 13.00 12.96
2017-10-23 600000 13.02 12.84 13.03 12.83 315638.0 406941728.0 0.11 1.03 13.01 13.02 12.96

3、复权数据


In [13]:
#复权行情, adj=qfq(前复权), hfq(后复权),默认None不复权
df = ts.bar('600000', conn=cons, adj='qfq', start_date='2016-01-01', end_date='')
df.head(5)


Out[13]:
code open close high low vol amount
datetime
2017-10-27 600000 12.85 12.85 12.94 12.82 326738.0 420972320.0
2017-10-26 600000 12.87 12.82 12.88 12.78 252751.0 324110144.0
2017-10-25 600000 12.86 12.90 12.94 12.82 207438.0 267109744.0
2017-10-24 600000 12.84 12.86 12.95 12.82 272360.0 350864960.0
2017-10-23 600000 13.02 12.84 13.03 12.83 315638.0 406941728.0

4、分钟和其它频度数据


In [17]:
#分钟数据, 设置freq参数,分别为1min/5min/15min/30min/60min,D(日)/W(周)/M(月)/Q(季)/Y(年)
df = ts.bar('600000', conn=cons, freq='1min', start_date='2016-01-01', end_date='')
df.head(15)


Out[17]:
code open close high low vol amount
datetime
2017-10-27 15:00:00 600000 12.86 12.85 12.87 12.85 4622.0 5941414.0
2017-10-27 14:59:00 600000 12.86 12.87 12.87 12.85 7610.0 9782857.0
2017-10-27 14:58:00 600000 12.87 12.86 12.87 12.85 1603.0 2061478.0
2017-10-27 14:57:00 600000 12.86 12.86 12.88 12.85 2667.0 3432980.0
2017-10-27 14:56:00 600000 12.86 12.86 12.87 12.86 2712.0 3488104.0
2017-10-27 14:55:00 600000 12.86 12.86 12.87 12.86 689.0 886152.0
2017-10-27 14:54:00 600000 12.86 12.86 12.87 12.85 1613.0 2073555.0
2017-10-27 14:53:00 600000 12.86 12.88 12.88 12.86 1362.0 1753090.0
2017-10-27 14:52:00 600000 12.85 12.86 12.87 12.85 1847.0 2375993.0
2017-10-27 14:51:00 600000 12.86 12.85 12.87 12.85 502.0 645482.0
2017-10-27 14:50:00 600000 12.86 12.86 12.87 12.86 923.0 1187002.0
2017-10-27 14:49:00 600000 12.86 12.86 12.87 12.86 1123.0 1445024.0
2017-10-27 14:48:00 600000 12.86 12.86 12.87 12.86 649.0 834725.0
2017-10-27 14:47:00 600000 12.86 12.86 12.86 12.86 361.0 464246.0
2017-10-27 14:46:00 600000 12.86 12.86 12.87 12.86 193.0 248291.0

指数行情


In [27]:
#指数日行情, 设置asset='INDEX'
df = ts.bar('000300', conn=cons, asset='INDEX', start_date='2016-01-01', end_date='')
df.head(5)


Out[27]:
code open close high low vol amount
datetime
2017-10-27 000300 3992.55 4021.97 4024.46 3991.35 1266728.0 1.529748e+11
2017-10-26 000300 3980.05 3993.58 4013.60 3973.55 1298954.0 1.704886e+11
2017-10-25 000300 3958.17 3976.95 3978.09 3954.00 882054.0 1.068203e+11
2017-10-24 000300 3926.23 3959.40 3959.50 3922.03 930581.0 1.201921e+11
2017-10-23 000300 3930.89 3930.80 3936.27 3920.66 814849.0 1.002809e+11

5、港股数据


In [14]:
#港股数据, 设置asset='X'
df = ts.bar('00981', conn=cons, asset='X', start_date='2016-01-01', end_date='')
df.head(5)


Out[14]:
code open close high low vol
datetime
2017-10-27 00981 10.800000 11.040001 11.200001 10.780001 613583
2017-10-26 00981 10.840000 10.760000 11.140000 10.700001 387966
2017-10-25 00981 10.820001 10.840000 10.980000 10.680000 258851
2017-10-24 00981 10.680000 10.700001 11.080001 10.620001 485034
2017-10-23 00981 10.500001 10.800000 11.160001 10.500001 1361470

6、期货数据


In [18]:
#期货数据, 设置asset='X'
df = ts.bar('CU1801', conn=cons, asset='X', start_date='2016-01-01', end_date='')
df.head(5)


Out[18]:
code open close high low vol avg_price position
datetime
2017-10-30 CU1801 53600.0 53730.0 53770.0 53250.0 57106 53463.21875 132312
2017-10-27 CU1801 54700.0 53970.0 54880.0 53850.0 120542 54340.00000 129300
2017-10-26 CU1801 54880.0 54780.0 55130.0 54650.0 90966 54870.00000 129132
2017-10-25 CU1801 55570.0 54570.0 55650.0 54200.0 125144 54880.00000 128514
2017-10-24 CU1801 54700.0 55520.0 55880.0 54630.0 108282 55360.00000 133424

7、美股数据


In [20]:
#美股数据, 设置asset='X'
df = ts.bar('BABA', conn=cons, asset='X', start_date='2016-01-01', end_date='')
df.head(5)


Out[20]:
code open close high low vol
datetime
2017-10-27 BABA 173.190002 176.149994 177.000000 171.110001 19676631
2017-10-26 BABA 170.619995 170.320007 171.449997 168.580002 13447225
2017-10-25 BABA 174.690002 170.220001 175.440002 169.300003 18093552
2017-10-24 BABA 174.000000 173.699997 175.979996 173.259995 11937219
2017-10-23 BABA 177.800003 173.130005 178.009995 173.050003 17590402

8,股票tick


In [23]:
#股票tick,type:买卖方向,0-买入 1-卖出 2-集合竞价成交
df = ts.tick('600000', conn=cons, date='2017-10-26')
df.head(20)


Out[23]:
datetime price vol type
0 2017-10-26 09:30 12.87 1108 2
1 2017-10-26 09:30 12.88 302 0
2 2017-10-26 09:30 12.86 1759 1
3 2017-10-26 09:30 12.86 24 1
4 2017-10-26 09:30 12.86 26 1
5 2017-10-26 09:30 12.85 60 1
6 2017-10-26 09:30 12.85 141 1
7 2017-10-26 09:30 12.84 405 1
8 2017-10-26 09:30 12.84 148 1
9 2017-10-26 09:30 12.84 60 1
10 2017-10-26 09:30 12.85 76 1
11 2017-10-26 09:30 12.84 303 1
12 2017-10-26 09:30 12.85 10 1
13 2017-10-26 09:30 12.84 60 1
14 2017-10-26 09:30 12.85 5 1
15 2017-10-26 09:30 12.84 11 1
16 2017-10-26 09:30 12.84 58 1
17 2017-10-26 09:30 12.84 120 1
18 2017-10-26 09:31 12.84 7 1
19 2017-10-26 09:31 12.84 10 1

9,期货tick


In [26]:
#期货tick,type:买卖方向,0:开仓  1:多开   -1:空开
df = ts.tick('CU1801', conn=cons, asset='X', date='2017-10-25')
df.head(20)


Out[26]:
date price vol oi_change type
0 2017-10-25 20:59:00 55570.0 26 18 开仓
1 2017-10-25 21:00:00 55600.0 28 6 多开
2 2017-10-25 21:00:01 55620.0 26 -6 空平
3 2017-10-25 21:00:01 55610.0 78 0 空换
4 2017-10-25 21:00:02 55610.0 50 0 多换
5 2017-10-25 21:00:02 55580.0 2 0 空换
6 2017-10-25 21:00:03 55580.0 10 0 空换
7 2017-10-25 21:00:03 55600.0 20 12 多开
8 2017-10-25 21:00:04 55600.0 12 10 空开
9 2017-10-25 21:00:04 55600.0 4 0 空换
10 2017-10-25 21:00:05 55590.0 6 0 空换
11 2017-10-25 21:00:05 55590.0 2 2 双开
12 2017-10-25 21:00:06 55580.0 10 2 空开
13 2017-10-25 21:00:07 55580.0 2 0 空换
14 2017-10-25 21:00:08 55580.0 2 0 多换
15 2017-10-25 21:00:09 55580.0 4 -2 多平
16 2017-10-25 21:00:09 55590.0 8 0 多换
17 2017-10-25 21:00:10 55580.0 10 0 多换
18 2017-10-25 21:00:10 55580.0 4 4 双开
19 2017-10-25 21:00:11 55580.0 10 0 空换

沪深港通资金流向


In [32]:
#沪/深港通每日资金流向(南向/北向资金)
df = ts.moneyflow_hsgt()
df.sort_values('date', ascending=False)


Out[32]:
date ggt_ss ggt_sz hgt sgt north_money south_money
697 2017-10-27 2949.0 1147.0 127.00 215.00 342.00 4096.0
696 2017-10-26 2057.0 1170.0 1445.83 241.66 1687.49 3227.0
695 2017-10-25 1202.0 614.0 287.37 328.13 615.50 1816.0
694 2017-10-24 1039.0 682.0 -2207.21 -943.46 -3150.67 1721.0
693 2017-10-23 1233.0 1051.0 -1183.63 -190.19 -1373.82 2284.0
692 2017-10-20 833.0 504.0 -126.00 91.00 -35.00 1337.0
691 2017-10-19 1809.0 673.0 -94.61 167.70 73.09 2482.0
690 2017-10-18 1464.0 736.0 -650.93 223.47 -427.46 2200.0
689 2017-10-17 867.0 762.0 218.55 1592.31 1810.86 1629.0
688 2017-10-16 1518.0 860.0 363.99 1208.51 1572.50 2378.0
687 2017-10-13 2170.0 1079.0 -674.00 1084.00 410.00 3249.0
686 2017-10-12 1400.0 1126.0 -407.39 893.54 486.15 2526.0
685 2017-10-11 1775.0 1225.0 597.67 1147.25 1744.92 3000.0
684 2017-10-10 1518.0 777.0 2465.29 1754.27 4219.56 2295.0
683 2017-10-09 1240.0 813.0 4714.84 2968.41 7683.25 2053.0
682 2017-09-29 NaN NaN 455.00 778.00 1233.00 0.0
681 2017-09-28 NaN NaN -158.17 -138.14 -296.31 0.0
680 2017-09-27 903.0 732.0 -142.22 876.26 734.04 1635.0
679 2017-09-26 780.0 1026.0 -101.16 211.66 110.50 1806.0
678 2017-09-25 948.0 595.0 -1834.49 157.41 -1677.08 1543.0
677 2017-09-22 1165.0 804.0 -440.00 1050.00 610.00 1969.0
676 2017-09-21 1597.0 821.0 878.64 405.50 1284.14 2418.0
675 2017-09-20 1074.0 1036.0 985.18 1157.62 2142.80 2110.0
674 2017-09-19 1432.0 560.0 -88.11 330.59 242.48 1992.0
673 2017-09-18 574.0 786.0 2588.74 1905.98 4494.72 1360.0
672 2017-09-15 -157.0 801.0 203.00 -99.00 104.00 644.0
671 2017-09-14 1138.0 706.0 -235.47 387.50 152.03 1844.0
670 2017-09-13 1057.0 1241.0 -281.86 634.62 352.76 2298.0
669 2017-09-12 1472.0 692.0 1821.45 750.05 2571.50 2164.0
668 2017-09-11 752.0 291.0 1818.64 309.94 2128.58 1043.0
... ... ... ... ... ... ... ...
29 2014-12-30 NaN NaN -630.00 NaN -630.00 0.0
28 2014-12-29 NaN NaN 750.00 NaN 750.00 0.0
27 2014-12-24 292.0 NaN NaN NaN 0.00 292.0
26 2014-12-23 516.0 NaN 653.00 NaN 653.00 516.0
25 2014-12-22 368.0 NaN 1428.00 NaN 1428.00 368.0
24 2014-12-19 248.0 NaN 1071.00 NaN 1071.00 248.0
23 2014-12-18 398.0 NaN 1908.00 NaN 1908.00 398.0
22 2014-12-17 330.0 NaN 648.00 NaN 648.00 330.0
21 2014-12-16 393.0 NaN 1318.00 NaN 1318.00 393.0
20 2014-12-15 196.0 NaN 1068.00 NaN 1068.00 196.0
19 2014-12-12 311.0 NaN 1862.00 NaN 1862.00 311.0
18 2014-12-11 483.0 NaN 1074.00 NaN 1074.00 483.0
17 2014-12-10 391.0 NaN 1941.00 NaN 1941.00 391.0
16 2014-12-09 763.0 NaN 1159.00 NaN 1159.00 763.0
15 2014-12-08 525.0 NaN 1677.00 NaN 1677.00 525.0
14 2014-12-05 1431.0 NaN 2567.00 NaN 2567.00 1431.0
13 2014-12-04 415.0 NaN 3521.00 NaN 3521.00 415.0
12 2014-12-03 457.0 NaN 3861.00 NaN 3861.00 457.0
11 2014-12-02 299.0 NaN 3311.00 NaN 3311.00 299.0
10 2014-12-01 281.0 NaN 1398.00 NaN 1398.00 281.0
9 2014-11-28 293.0 NaN 2345.00 NaN 2345.00 293.0
8 2014-11-27 175.0 NaN 2990.00 NaN 2990.00 175.0
7 2014-11-26 213.0 NaN 3295.00 NaN 3295.00 213.0
6 2014-11-25 155.0 NaN 2853.00 NaN 2853.00 155.0
5 2014-11-24 141.0 NaN 6956.00 NaN 6956.00 141.0
4 2014-11-21 186.0 NaN 2341.00 NaN 2341.00 186.0
3 2014-11-20 196.0 NaN 2276.00 NaN 2276.00 196.0
2 2014-11-19 253.0 NaN 2612.00 NaN 2612.00 253.0
1 2014-11-18 800.0 NaN 4845.00 NaN 4845.00 800.0
0 2014-11-17 1768.0 NaN 13000.00 NaN 13000.00 1768.0

698 rows × 7 columns