1
0
This repository has been archived on 2025-01-12. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
stock_learning/1_基本操作/1_数据基本操作.ipynb
2025-01-09 18:10:42 +08:00

680 lines
22 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"cells": [
{
"cell_type": "code",
"id": "initial_id",
"metadata": {
"collapsed": true,
"ExecuteTime": {
"end_time": "2024-12-27T01:42:12.436371Z",
"start_time": "2024-12-27T01:42:12.431194Z"
}
},
"source": [
"import tushare as ts\n",
"\n",
"ts.set_token(\"64ebff4fa679167600b905ee45dd88e76f3963c0ff39157f3f085f0e\")\n",
"ts_pro = ts.pro_api()"
],
"outputs": [],
"execution_count": 10
},
{
"metadata": {},
"cell_type": "markdown",
"source": [
"|名称|类型|描述|\n",
"|---|---|---|\n",
"|ts_code|str|股票代码|\n",
"|trade_date|str|交易日期|\n",
"|open|float|开盘价|\n",
"|high|float|最高价|\n",
"|low|float|最低价|\n",
"|close|float|收盘价|\n",
"|pre_close|float|昨收价【除权价,前复权】|\n",
"|change|float|涨跌额|\n",
"|pct_chg|float|涨跌幅 【基于除权后的昨收计算的涨跌幅:(今收-除权昨收)/除权昨收 】|\n",
"|vol|float|成交量 (手)|\n",
"|amount|float|成交额 (千元)|"
],
"id": "95526cc287534e7"
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2024-12-27T01:42:15.384732Z",
"start_time": "2024-12-27T01:42:14.380287Z"
}
},
"cell_type": "code",
"source": [
"# 获取所有股票单日日线数据\n",
"ts_pro.daily(trade_date='20241225')"
],
"id": "84315ee9b0442519",
"outputs": [
{
"data": {
"text/plain": [
" ts_code trade_date open high low close pre_close change \\\n",
"0 000001.SZ 20241225 11.86 12.02 11.84 11.92 11.86 0.06 \n",
"1 000002.SZ 20241225 7.71 7.73 7.47 7.54 7.73 -0.19 \n",
"2 000004.SZ 20241225 14.63 14.63 14.63 14.63 16.25 -1.62 \n",
"3 000006.SZ 20241225 8.25 8.27 7.56 7.73 8.24 -0.51 \n",
"4 000007.SZ 20241225 6.79 6.89 6.52 6.63 6.81 -0.18 \n",
"... ... ... ... ... ... ... ... ... \n",
"5362 920099.BJ 20241225 27.99 28.49 27.73 27.83 28.35 -0.52 \n",
"5363 920106.BJ 20241225 58.01 58.33 55.21 55.21 59.17 -3.96 \n",
"5364 920111.BJ 20241225 24.10 24.10 22.89 22.89 24.25 -1.36 \n",
"5365 920118.BJ 20241225 25.84 25.85 24.71 24.80 25.97 -1.17 \n",
"5366 920128.BJ 20241225 31.70 31.70 29.66 29.72 31.40 -1.68 \n",
"\n",
" pct_chg vol amount \n",
"0 0.5059 1475282.94 1759956.630 \n",
"1 -2.4580 1517662.88 1146549.840 \n",
"2 -9.9692 35453.00 51867.739 \n",
"3 -6.1893 400716.66 311517.827 \n",
"4 -2.6432 47701.48 31825.919 \n",
"... ... ... ... \n",
"5362 -1.8342 4630.64 12955.140 \n",
"5363 -6.6926 18318.91 104234.473 \n",
"5364 -5.6082 23130.27 53748.005 \n",
"5365 -4.5052 4895.01 12293.827 \n",
"5366 -5.3503 13844.08 42048.224 \n",
"\n",
"[5367 rows x 11 columns]"
],
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>ts_code</th>\n",
" <th>trade_date</th>\n",
" <th>open</th>\n",
" <th>high</th>\n",
" <th>low</th>\n",
" <th>close</th>\n",
" <th>pre_close</th>\n",
" <th>change</th>\n",
" <th>pct_chg</th>\n",
" <th>vol</th>\n",
" <th>amount</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241225</td>\n",
" <td>11.86</td>\n",
" <td>12.02</td>\n",
" <td>11.84</td>\n",
" <td>11.92</td>\n",
" <td>11.86</td>\n",
" <td>0.06</td>\n",
" <td>0.5059</td>\n",
" <td>1475282.94</td>\n",
" <td>1759956.630</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>000002.SZ</td>\n",
" <td>20241225</td>\n",
" <td>7.71</td>\n",
" <td>7.73</td>\n",
" <td>7.47</td>\n",
" <td>7.54</td>\n",
" <td>7.73</td>\n",
" <td>-0.19</td>\n",
" <td>-2.4580</td>\n",
" <td>1517662.88</td>\n",
" <td>1146549.840</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>000004.SZ</td>\n",
" <td>20241225</td>\n",
" <td>14.63</td>\n",
" <td>14.63</td>\n",
" <td>14.63</td>\n",
" <td>14.63</td>\n",
" <td>16.25</td>\n",
" <td>-1.62</td>\n",
" <td>-9.9692</td>\n",
" <td>35453.00</td>\n",
" <td>51867.739</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>000006.SZ</td>\n",
" <td>20241225</td>\n",
" <td>8.25</td>\n",
" <td>8.27</td>\n",
" <td>7.56</td>\n",
" <td>7.73</td>\n",
" <td>8.24</td>\n",
" <td>-0.51</td>\n",
" <td>-6.1893</td>\n",
" <td>400716.66</td>\n",
" <td>311517.827</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>000007.SZ</td>\n",
" <td>20241225</td>\n",
" <td>6.79</td>\n",
" <td>6.89</td>\n",
" <td>6.52</td>\n",
" <td>6.63</td>\n",
" <td>6.81</td>\n",
" <td>-0.18</td>\n",
" <td>-2.6432</td>\n",
" <td>47701.48</td>\n",
" <td>31825.919</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5362</th>\n",
" <td>920099.BJ</td>\n",
" <td>20241225</td>\n",
" <td>27.99</td>\n",
" <td>28.49</td>\n",
" <td>27.73</td>\n",
" <td>27.83</td>\n",
" <td>28.35</td>\n",
" <td>-0.52</td>\n",
" <td>-1.8342</td>\n",
" <td>4630.64</td>\n",
" <td>12955.140</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5363</th>\n",
" <td>920106.BJ</td>\n",
" <td>20241225</td>\n",
" <td>58.01</td>\n",
" <td>58.33</td>\n",
" <td>55.21</td>\n",
" <td>55.21</td>\n",
" <td>59.17</td>\n",
" <td>-3.96</td>\n",
" <td>-6.6926</td>\n",
" <td>18318.91</td>\n",
" <td>104234.473</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5364</th>\n",
" <td>920111.BJ</td>\n",
" <td>20241225</td>\n",
" <td>24.10</td>\n",
" <td>24.10</td>\n",
" <td>22.89</td>\n",
" <td>22.89</td>\n",
" <td>24.25</td>\n",
" <td>-1.36</td>\n",
" <td>-5.6082</td>\n",
" <td>23130.27</td>\n",
" <td>53748.005</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5365</th>\n",
" <td>920118.BJ</td>\n",
" <td>20241225</td>\n",
" <td>25.84</td>\n",
" <td>25.85</td>\n",
" <td>24.71</td>\n",
" <td>24.80</td>\n",
" <td>25.97</td>\n",
" <td>-1.17</td>\n",
" <td>-4.5052</td>\n",
" <td>4895.01</td>\n",
" <td>12293.827</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5366</th>\n",
" <td>920128.BJ</td>\n",
" <td>20241225</td>\n",
" <td>31.70</td>\n",
" <td>31.70</td>\n",
" <td>29.66</td>\n",
" <td>29.72</td>\n",
" <td>31.40</td>\n",
" <td>-1.68</td>\n",
" <td>-5.3503</td>\n",
" <td>13844.08</td>\n",
" <td>42048.224</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5367 rows × 11 columns</p>\n",
"</div>"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 11
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2024-12-27T01:44:05.408162Z",
"start_time": "2024-12-27T01:44:04.754839Z"
}
},
"cell_type": "code",
"source": [
"# 获取单个股票指定日期数据\n",
"ts_pro.daily(ts_code='000001.SZ', start_date='20241201', end_date='20241231')"
],
"id": "fc3299561f70084c",
"outputs": [
{
"data": {
"text/plain": [
" ts_code trade_date open high low close pre_close change \\\n",
"0 000001.SZ 20241226 11.92 11.93 11.78 11.86 11.92 -0.06 \n",
"1 000001.SZ 20241225 11.86 12.02 11.84 11.92 11.86 0.06 \n",
"2 000001.SZ 20241224 11.72 11.87 11.72 11.86 11.73 0.13 \n",
"3 000001.SZ 20241223 11.64 11.84 11.64 11.73 11.62 0.11 \n",
"4 000001.SZ 20241220 11.59 11.70 11.58 11.62 11.59 0.03 \n",
"5 000001.SZ 20241219 11.59 11.64 11.54 11.59 11.65 -0.06 \n",
"6 000001.SZ 20241218 11.58 11.74 11.57 11.65 11.53 0.12 \n",
"7 000001.SZ 20241217 11.57 11.65 11.52 11.53 11.57 -0.04 \n",
"8 000001.SZ 20241216 11.56 11.66 11.53 11.57 11.56 0.01 \n",
"9 000001.SZ 20241213 11.79 11.80 11.56 11.56 11.85 -0.29 \n",
"10 000001.SZ 20241212 11.73 11.87 11.71 11.85 11.73 0.12 \n",
"11 000001.SZ 20241211 11.79 11.83 11.72 11.73 11.79 -0.06 \n",
"12 000001.SZ 20241210 11.90 11.95 11.75 11.79 11.67 0.12 \n",
"13 000001.SZ 20241209 11.63 11.72 11.59 11.67 11.66 0.01 \n",
"14 000001.SZ 20241206 11.44 11.70 11.43 11.66 11.44 0.22 \n",
"15 000001.SZ 20241205 11.44 11.50 11.41 11.44 11.46 -0.02 \n",
"16 000001.SZ 20241204 11.44 11.53 11.37 11.46 11.49 -0.03 \n",
"17 000001.SZ 20241203 11.37 11.50 11.35 11.49 11.39 0.10 \n",
"18 000001.SZ 20241202 11.39 11.40 11.31 11.39 11.38 0.01 \n",
"\n",
" pct_chg vol amount \n",
"0 -0.5034 1000074.70 1183745.519 \n",
"1 0.5059 1475282.94 1759956.630 \n",
"2 1.1083 1350836.91 1595698.790 \n",
"3 0.9466 1659404.76 1953519.499 \n",
"4 0.2588 714646.27 831437.460 \n",
"5 -0.5150 697379.04 808465.664 \n",
"6 1.0408 1016589.66 1186285.805 \n",
"7 -0.3457 802119.95 929225.455 \n",
"8 0.0865 805717.78 934226.189 \n",
"9 -2.4473 1343792.89 1565589.089 \n",
"10 1.0230 986234.59 1164062.448 \n",
"11 -0.5089 967691.45 1138374.175 \n",
"12 1.0283 2167807.24 2564600.677 \n",
"13 0.0858 964063.16 1123441.855 \n",
"14 1.9231 1726269.27 2004270.466 \n",
"15 -0.1745 687108.83 786137.964 \n",
"16 -0.2611 1007470.59 1154623.370 \n",
"17 0.8780 1082559.36 1236992.678 \n",
"18 0.0879 975433.66 1108785.597 "
],
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>ts_code</th>\n",
" <th>trade_date</th>\n",
" <th>open</th>\n",
" <th>high</th>\n",
" <th>low</th>\n",
" <th>close</th>\n",
" <th>pre_close</th>\n",
" <th>change</th>\n",
" <th>pct_chg</th>\n",
" <th>vol</th>\n",
" <th>amount</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241226</td>\n",
" <td>11.92</td>\n",
" <td>11.93</td>\n",
" <td>11.78</td>\n",
" <td>11.86</td>\n",
" <td>11.92</td>\n",
" <td>-0.06</td>\n",
" <td>-0.5034</td>\n",
" <td>1000074.70</td>\n",
" <td>1183745.519</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241225</td>\n",
" <td>11.86</td>\n",
" <td>12.02</td>\n",
" <td>11.84</td>\n",
" <td>11.92</td>\n",
" <td>11.86</td>\n",
" <td>0.06</td>\n",
" <td>0.5059</td>\n",
" <td>1475282.94</td>\n",
" <td>1759956.630</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241224</td>\n",
" <td>11.72</td>\n",
" <td>11.87</td>\n",
" <td>11.72</td>\n",
" <td>11.86</td>\n",
" <td>11.73</td>\n",
" <td>0.13</td>\n",
" <td>1.1083</td>\n",
" <td>1350836.91</td>\n",
" <td>1595698.790</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241223</td>\n",
" <td>11.64</td>\n",
" <td>11.84</td>\n",
" <td>11.64</td>\n",
" <td>11.73</td>\n",
" <td>11.62</td>\n",
" <td>0.11</td>\n",
" <td>0.9466</td>\n",
" <td>1659404.76</td>\n",
" <td>1953519.499</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241220</td>\n",
" <td>11.59</td>\n",
" <td>11.70</td>\n",
" <td>11.58</td>\n",
" <td>11.62</td>\n",
" <td>11.59</td>\n",
" <td>0.03</td>\n",
" <td>0.2588</td>\n",
" <td>714646.27</td>\n",
" <td>831437.460</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241219</td>\n",
" <td>11.59</td>\n",
" <td>11.64</td>\n",
" <td>11.54</td>\n",
" <td>11.59</td>\n",
" <td>11.65</td>\n",
" <td>-0.06</td>\n",
" <td>-0.5150</td>\n",
" <td>697379.04</td>\n",
" <td>808465.664</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241218</td>\n",
" <td>11.58</td>\n",
" <td>11.74</td>\n",
" <td>11.57</td>\n",
" <td>11.65</td>\n",
" <td>11.53</td>\n",
" <td>0.12</td>\n",
" <td>1.0408</td>\n",
" <td>1016589.66</td>\n",
" <td>1186285.805</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241217</td>\n",
" <td>11.57</td>\n",
" <td>11.65</td>\n",
" <td>11.52</td>\n",
" <td>11.53</td>\n",
" <td>11.57</td>\n",
" <td>-0.04</td>\n",
" <td>-0.3457</td>\n",
" <td>802119.95</td>\n",
" <td>929225.455</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241216</td>\n",
" <td>11.56</td>\n",
" <td>11.66</td>\n",
" <td>11.53</td>\n",
" <td>11.57</td>\n",
" <td>11.56</td>\n",
" <td>0.01</td>\n",
" <td>0.0865</td>\n",
" <td>805717.78</td>\n",
" <td>934226.189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241213</td>\n",
" <td>11.79</td>\n",
" <td>11.80</td>\n",
" <td>11.56</td>\n",
" <td>11.56</td>\n",
" <td>11.85</td>\n",
" <td>-0.29</td>\n",
" <td>-2.4473</td>\n",
" <td>1343792.89</td>\n",
" <td>1565589.089</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241212</td>\n",
" <td>11.73</td>\n",
" <td>11.87</td>\n",
" <td>11.71</td>\n",
" <td>11.85</td>\n",
" <td>11.73</td>\n",
" <td>0.12</td>\n",
" <td>1.0230</td>\n",
" <td>986234.59</td>\n",
" <td>1164062.448</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241211</td>\n",
" <td>11.79</td>\n",
" <td>11.83</td>\n",
" <td>11.72</td>\n",
" <td>11.73</td>\n",
" <td>11.79</td>\n",
" <td>-0.06</td>\n",
" <td>-0.5089</td>\n",
" <td>967691.45</td>\n",
" <td>1138374.175</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241210</td>\n",
" <td>11.90</td>\n",
" <td>11.95</td>\n",
" <td>11.75</td>\n",
" <td>11.79</td>\n",
" <td>11.67</td>\n",
" <td>0.12</td>\n",
" <td>1.0283</td>\n",
" <td>2167807.24</td>\n",
" <td>2564600.677</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241209</td>\n",
" <td>11.63</td>\n",
" <td>11.72</td>\n",
" <td>11.59</td>\n",
" <td>11.67</td>\n",
" <td>11.66</td>\n",
" <td>0.01</td>\n",
" <td>0.0858</td>\n",
" <td>964063.16</td>\n",
" <td>1123441.855</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241206</td>\n",
" <td>11.44</td>\n",
" <td>11.70</td>\n",
" <td>11.43</td>\n",
" <td>11.66</td>\n",
" <td>11.44</td>\n",
" <td>0.22</td>\n",
" <td>1.9231</td>\n",
" <td>1726269.27</td>\n",
" <td>2004270.466</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241205</td>\n",
" <td>11.44</td>\n",
" <td>11.50</td>\n",
" <td>11.41</td>\n",
" <td>11.44</td>\n",
" <td>11.46</td>\n",
" <td>-0.02</td>\n",
" <td>-0.1745</td>\n",
" <td>687108.83</td>\n",
" <td>786137.964</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241204</td>\n",
" <td>11.44</td>\n",
" <td>11.53</td>\n",
" <td>11.37</td>\n",
" <td>11.46</td>\n",
" <td>11.49</td>\n",
" <td>-0.03</td>\n",
" <td>-0.2611</td>\n",
" <td>1007470.59</td>\n",
" <td>1154623.370</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241203</td>\n",
" <td>11.37</td>\n",
" <td>11.50</td>\n",
" <td>11.35</td>\n",
" <td>11.49</td>\n",
" <td>11.39</td>\n",
" <td>0.10</td>\n",
" <td>0.8780</td>\n",
" <td>1082559.36</td>\n",
" <td>1236992.678</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>000001.SZ</td>\n",
" <td>20241202</td>\n",
" <td>11.39</td>\n",
" <td>11.40</td>\n",
" <td>11.31</td>\n",
" <td>11.39</td>\n",
" <td>11.38</td>\n",
" <td>0.01</td>\n",
" <td>0.0879</td>\n",
" <td>975433.66</td>\n",
" <td>1108785.597</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 12
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.6"
}
},
"nbformat": 4,
"nbformat_minor": 5
}