1
0

增加金字塔选股规则

This commit is contained in:
2025-01-09 18:05:06 +08:00
parent db713cb3b3
commit 0dccacc0e2
3 changed files with 5870 additions and 5385 deletions

View File

@@ -0,0 +1,247 @@
{
"cells": [
{
"cell_type": "code",
"id": "initial_id",
"metadata": {
"collapsed": true,
"ExecuteTime": {
"end_time": "2025-01-09T06:12:53.680561Z",
"start_time": "2025-01-09T06:12:52.994179Z"
}
},
"source": [
"import tushare as ts\n",
"\n",
"ts_pro = ts.pro_api(token=\"64ebff4fa679167600b905ee45dd88e76f3963c0ff39157f3f085f0e\")"
],
"outputs": [],
"execution_count": 2
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-01-09T06:28:32.524630Z",
"start_time": "2025-01-09T06:27:15.688831Z"
}
},
"cell_type": "code",
"source": [
"# 从1989年开始循环年份\n",
"for year in range(2000, 2024):\n",
" # ts_pro.balancesheet_vip(period=f\"{year}1231\").to_csv(f\"../temp/财务报表/资产负债表/{year}.csv\")\n",
" # ts_pro.cashflow_vip(period=f\"{year}1231\").to_csv(f\"../temp/财务报表/现金流量表/{year}.csv\")\n",
" # ts_pro.income_vip(period=f\"{year}1231\").to_csv(f\"../temp/财务报表/利润表/{year}.csv\")\n",
" ts_pro.fina_indicator_vip(period=f\"{year}1231\").to_csv(f\"../temp/财务报表/财务指标/{year}.csv\")\n",
" # ts_pro.fina_audit(period=f\"{year}1231\").to_csv(f\"../temp/财务报表/审计意见/{year}.csv\")"
],
"id": "b03b118c70b21315",
"outputs": [],
"execution_count": 15
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-01-09T06:21:41.656501Z",
"start_time": "2025-01-09T06:21:41.620154Z"
}
},
"cell_type": "code",
"source": [
"import pandas as pd\n",
"\n",
"df = pd.read_csv('../temp/财务报表/利润表/2000.csv')\n",
"# 移除第一列\n",
"df = df.iloc[:, 1:]\n",
"df.set_index('ts_code', inplace=True)\n",
"df = df[[\"total_revenue\", \"revenue\", \"total_cogs\",\"oper_exp\",\"rd_exp\"]]\n",
"df"
],
"id": "7e3783e99491ba52",
"outputs": [
{
"data": {
"text/plain": [
" total_revenue revenue total_cogs oper_exp rd_exp\n",
"ts_code \n",
"688183.SH 6.282300e+08 6.282300e+08 NaN NaN NaN\n",
"601939.SH 5.349400e+10 5.349400e+10 4.329800e+10 4.329800e+10 NaN\n",
"600074.SH 4.957749e+08 4.957749e+08 4.287281e+08 NaN NaN\n",
"600699.SH 2.276245e+08 2.276245e+08 1.765832e+08 NaN NaN\n",
"600779.SH 1.280558e+09 1.280558e+09 1.080933e+09 NaN NaN\n",
"... ... ... ... ... ...\n",
"600438.SH 3.533686e+08 3.533686e+08 3.194762e+08 NaN NaN\n",
"600493.SH 1.421895e+08 1.421895e+08 1.250877e+08 NaN NaN\n",
"600572.SH 1.944064e+08 1.944064e+08 1.459411e+08 NaN NaN\n",
"600986.SH 2.563444e+08 2.563444e+08 2.089118e+08 NaN NaN\n",
"600982.SH 8.646501e+07 8.646501e+07 6.824224e+07 NaN NaN\n",
"\n",
"[1264 rows x 5 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>total_revenue</th>\n",
" <th>revenue</th>\n",
" <th>total_cogs</th>\n",
" <th>oper_exp</th>\n",
" <th>rd_exp</th>\n",
" </tr>\n",
" <tr>\n",
" <th>ts_code</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>688183.SH</th>\n",
" <td>6.282300e+08</td>\n",
" <td>6.282300e+08</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>601939.SH</th>\n",
" <td>5.349400e+10</td>\n",
" <td>5.349400e+10</td>\n",
" <td>4.329800e+10</td>\n",
" <td>4.329800e+10</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>600074.SH</th>\n",
" <td>4.957749e+08</td>\n",
" <td>4.957749e+08</td>\n",
" <td>4.287281e+08</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>600699.SH</th>\n",
" <td>2.276245e+08</td>\n",
" <td>2.276245e+08</td>\n",
" <td>1.765832e+08</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>600779.SH</th>\n",
" <td>1.280558e+09</td>\n",
" <td>1.280558e+09</td>\n",
" <td>1.080933e+09</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>600438.SH</th>\n",
" <td>3.533686e+08</td>\n",
" <td>3.533686e+08</td>\n",
" <td>3.194762e+08</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>600493.SH</th>\n",
" <td>1.421895e+08</td>\n",
" <td>1.421895e+08</td>\n",
" <td>1.250877e+08</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>600572.SH</th>\n",
" <td>1.944064e+08</td>\n",
" <td>1.944064e+08</td>\n",
" <td>1.459411e+08</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>600986.SH</th>\n",
" <td>2.563444e+08</td>\n",
" <td>2.563444e+08</td>\n",
" <td>2.089118e+08</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>600982.SH</th>\n",
" <td>8.646501e+07</td>\n",
" <td>8.646501e+07</td>\n",
" <td>6.824224e+07</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>1264 rows × 5 columns</p>\n",
"</div>"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 12
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": "",
"id": "575590399bf15e70"
}
],
"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
}

View File

@@ -6,8 +6,8 @@
"metadata": { "metadata": {
"collapsed": true, "collapsed": true,
"ExecuteTime": { "ExecuteTime": {
"end_time": "2024-12-27T08:52:13.762454Z", "end_time": "2025-01-09T05:00:21.760774Z",
"start_time": "2024-12-27T08:52:13.010563Z" "start_time": "2025-01-09T05:00:20.927280Z"
} }
}, },
"source": [ "source": [
@@ -17,7 +17,7 @@
"ts_pro = ts.pro_api(token=\"64ebff4fa679167600b905ee45dd88e76f3963c0ff39157f3f085f0e\")" "ts_pro = ts.pro_api(token=\"64ebff4fa679167600b905ee45dd88e76f3963c0ff39157f3f085f0e\")"
], ],
"outputs": [], "outputs": [],
"execution_count": 1 "execution_count": 2
}, },
{ {
"metadata": {}, "metadata": {},
@@ -1358,6 +1358,239 @@
} }
], ],
"execution_count": 6 "execution_count": 6
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-01-09T05:00:24.994492Z",
"start_time": "2025-01-09T05:00:24.204010Z"
}
},
"cell_type": "code",
"source": [
"# 获取股票基本信息\n",
"ts_pro.stock_basic()"
],
"id": "9ae4b033636fbaad",
"outputs": [
{
"data": {
"text/plain": [
" ts_code symbol name area industry cnspell market list_date \\\n",
"0 000001.SZ 000001 平安银行 深圳 银行 payh 主板 19910403 \n",
"1 000002.SZ 000002 万科A 深圳 全国地产 wka 主板 19910129 \n",
"2 000004.SZ 000004 国华网安 深圳 软件服务 ghwa 主板 19910114 \n",
"3 000006.SZ 000006 深振业A 深圳 区域地产 szya 主板 19920427 \n",
"4 000007.SZ 000007 全新好 深圳 其他商业 qxh 主板 19920413 \n",
"... ... ... ... ... ... ... ... ... \n",
"5381 920111.BJ 920111 聚星科技 None None jxkj 北交所 20241111 \n",
"5382 920116.BJ 920116 星图测控 None None xtck 北交所 20250102 \n",
"5383 920118.BJ 920118 太湖远大 None None thyd 北交所 20240822 \n",
"5384 920128.BJ 920128 胜业电气 None None sydq 北交所 20241129 \n",
"5385 689009.SH 689009 九号公司-WD 北京 摩托车 jhgs 科创板 20201029 \n",
"\n",
" act_name act_ent_type \n",
"0 无实际控制人 无 \n",
"1 深圳市人民政府国有资产监督管理委员会 地方国企 \n",
"2 李映彤 民营企业 \n",
"3 深圳市人民政府国有资产监督管理委员会 地方国企 \n",
"4 王玩虹 民营企业 \n",
"... ... ... \n",
"5381 None None \n",
"5382 None None \n",
"5383 None None \n",
"5384 None None \n",
"5385 None None \n",
"\n",
"[5386 rows x 10 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>symbol</th>\n",
" <th>name</th>\n",
" <th>area</th>\n",
" <th>industry</th>\n",
" <th>cnspell</th>\n",
" <th>market</th>\n",
" <th>list_date</th>\n",
" <th>act_name</th>\n",
" <th>act_ent_type</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>000001.SZ</td>\n",
" <td>000001</td>\n",
" <td>平安银行</td>\n",
" <td>深圳</td>\n",
" <td>银行</td>\n",
" <td>payh</td>\n",
" <td>主板</td>\n",
" <td>19910403</td>\n",
" <td>无实际控制人</td>\n",
" <td>无</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>000002.SZ</td>\n",
" <td>000002</td>\n",
" <td>万科A</td>\n",
" <td>深圳</td>\n",
" <td>全国地产</td>\n",
" <td>wka</td>\n",
" <td>主板</td>\n",
" <td>19910129</td>\n",
" <td>深圳市人民政府国有资产监督管理委员会</td>\n",
" <td>地方国企</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>000004.SZ</td>\n",
" <td>000004</td>\n",
" <td>国华网安</td>\n",
" <td>深圳</td>\n",
" <td>软件服务</td>\n",
" <td>ghwa</td>\n",
" <td>主板</td>\n",
" <td>19910114</td>\n",
" <td>李映彤</td>\n",
" <td>民营企业</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>000006.SZ</td>\n",
" <td>000006</td>\n",
" <td>深振业A</td>\n",
" <td>深圳</td>\n",
" <td>区域地产</td>\n",
" <td>szya</td>\n",
" <td>主板</td>\n",
" <td>19920427</td>\n",
" <td>深圳市人民政府国有资产监督管理委员会</td>\n",
" <td>地方国企</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>000007.SZ</td>\n",
" <td>000007</td>\n",
" <td>全新好</td>\n",
" <td>深圳</td>\n",
" <td>其他商业</td>\n",
" <td>qxh</td>\n",
" <td>主板</td>\n",
" <td>19920413</td>\n",
" <td>王玩虹</td>\n",
" <td>民营企业</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",
" </tr>\n",
" <tr>\n",
" <th>5381</th>\n",
" <td>920111.BJ</td>\n",
" <td>920111</td>\n",
" <td>聚星科技</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>jxkj</td>\n",
" <td>北交所</td>\n",
" <td>20241111</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5382</th>\n",
" <td>920116.BJ</td>\n",
" <td>920116</td>\n",
" <td>星图测控</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>xtck</td>\n",
" <td>北交所</td>\n",
" <td>20250102</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5383</th>\n",
" <td>920118.BJ</td>\n",
" <td>920118</td>\n",
" <td>太湖远大</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>thyd</td>\n",
" <td>北交所</td>\n",
" <td>20240822</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5384</th>\n",
" <td>920128.BJ</td>\n",
" <td>920128</td>\n",
" <td>胜业电气</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>sydq</td>\n",
" <td>北交所</td>\n",
" <td>20241129</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5385</th>\n",
" <td>689009.SH</td>\n",
" <td>689009</td>\n",
" <td>九号公司-WD</td>\n",
" <td>北京</td>\n",
" <td>摩托车</td>\n",
" <td>jhgs</td>\n",
" <td>科创板</td>\n",
" <td>20201029</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5386 rows × 10 columns</p>\n",
"</div>"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 3
} }
], ],
"metadata": { "metadata": {

File diff suppressed because it is too large Load Diff