fix:数据库接入方式改为在系统环境变量中储存敏感信息。
This commit is contained in:
@@ -0,0 +1,19 @@
|
|||||||
|
# ========================================
|
||||||
|
# 量化数据库 — 环境变量配置模板
|
||||||
|
# 复制此文件为 .env 并填入真实值
|
||||||
|
# ========================================
|
||||||
|
|
||||||
|
# PostgreSQL 数据库连接
|
||||||
|
QUANT_DB_HOST=192.168.27.15
|
||||||
|
QUANT_DB_PORT=12345
|
||||||
|
QUANT_DB_NAME=quant_db
|
||||||
|
QUANT_DB_USER=postgres
|
||||||
|
QUANT_DB_PASSWORD=your_password_here
|
||||||
|
|
||||||
|
# Tushare API Token (在 https://tushare.pro 获取)
|
||||||
|
TUSHARE_TOKEN=your_tushare_token_here
|
||||||
|
|
||||||
|
# 批量导入参数 (可选,已有默认值)
|
||||||
|
# QUANT_BATCH_SIZE=5000
|
||||||
|
# QUANT_START_DATE=2010-01-01
|
||||||
|
# QUANT_END_DATE=2025-12-31
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
# 环境变量文件 (包含敏感信息,不要提交到版本控制)
|
||||||
|
.env
|
||||||
|
|
||||||
|
# Python
|
||||||
|
__pycache__/
|
||||||
|
*.py[cod]
|
||||||
|
*.egg-info/
|
||||||
|
|
||||||
|
# 日志文件
|
||||||
|
*.log
|
||||||
|
|
||||||
|
# Jupyter
|
||||||
|
.ipynb_checkpoints/
|
||||||
|
|
||||||
|
# IDE
|
||||||
|
.vscode/
|
||||||
|
.idea/
|
||||||
@@ -1,19 +1,30 @@
|
|||||||
"""
|
"""
|
||||||
量化数据库配置文件
|
量化数据库配置文件
|
||||||
|
|
||||||
|
敏感信息(数据库密码、API Token)通过环境变量管理:
|
||||||
|
- QUANT_DB_PASSWORD : 数据库密码
|
||||||
|
- TUSHARE_TOKEN : Tushare API Token
|
||||||
|
|
||||||
|
设置方式:
|
||||||
|
Windows: set QUANT_DB_PASSWORD=your_password && set TUSHARE_TOKEN=your_token
|
||||||
|
Linux: export QUANT_DB_PASSWORD=your_password && export TUSHARE_TOKEN=your_token
|
||||||
|
也可创建 .env 文件(参考 .env.example)
|
||||||
"""
|
"""
|
||||||
|
import os
|
||||||
|
|
||||||
# PostgreSQL Docker 连接配置
|
# PostgreSQL Docker 连接配置
|
||||||
DB_CONFIG = {
|
DB_CONFIG = {
|
||||||
"host": "192.168.27.15",
|
"host": os.environ.get("QUANT_DB_HOST", "192.168.27.15"),
|
||||||
"port": 12345,
|
"port": int(os.environ.get("QUANT_DB_PORT", "12345")),
|
||||||
"database": "quant_db",
|
"database": os.environ.get("QUANT_DB_NAME", "quant_db"),
|
||||||
"user": "postgres",
|
"user": os.environ.get("QUANT_DB_USER", "postgres"),
|
||||||
"password": "postgres", # 请修改为实际密码
|
"password": os.environ.get("QUANT_DB_PASSWORD", ""),
|
||||||
}
|
}
|
||||||
|
|
||||||
# Tushare API Token
|
# Tushare API Token
|
||||||
TUSHARE_TOKEN = "你的token" # 请替换为你的tushare token
|
TUSHARE_TOKEN = os.environ.get("TUSHARE_TOKEN", "")
|
||||||
|
|
||||||
# 批量导入参数
|
# 批量导入参数
|
||||||
BATCH_SIZE = 5000 # 每批次插入行数
|
BATCH_SIZE = int(os.environ.get("QUANT_BATCH_SIZE", "5000")) # 每批次插入行数
|
||||||
START_DATE = "2010-01-01" # 数据起始日期
|
START_DATE = os.environ.get("QUANT_START_DATE", "2010-01-01") # 数据起始日期
|
||||||
END_DATE = "2025-12-31" # 数据结束日期
|
END_DATE = os.environ.get("QUANT_END_DATE", "2025-12-31") # 数据结束日期
|
||||||
|
|||||||
@@ -26,8 +26,8 @@
|
|||||||
"| index_daily | 指数日线行情 | index_daily |\n",
|
"| index_daily | 指数日线行情 | index_daily |\n",
|
||||||
"\n",
|
"\n",
|
||||||
"## 使用步骤\n",
|
"## 使用步骤\n",
|
||||||
"1. 修改 `config.py` 中的数据库密码和 Tushare Token\n",
|
"1. 复制 `.env.example` 为 `.env`,填入真实密码和 Token\n",
|
||||||
"2. 逐 Cell 运行本 Notebook"
|
"2. 逐 Cell 运行本 Notebook(敏感信息通过环境变量读取)"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -124,7 +124,7 @@
|
|||||||
" print(f\"✗ 连接失败: {e}\")\n",
|
" print(f\"✗ 连接失败: {e}\")\n",
|
||||||
" print(\"请检查:\")\n",
|
" print(\"请检查:\")\n",
|
||||||
" print(\" 1. Docker 容器是否已启动: docker ps | findstr postgres\")\n",
|
" print(\" 1. Docker 容器是否已启动: docker ps | findstr postgres\")\n",
|
||||||
" print(\" 2. config.py 中的连接参数是否正确\")\n",
|
" print(\" 2. 环境变量 (.env) 中的连接参数是否正确\")\n",
|
||||||
" print(\" 3. 防火墙是否开放 12345 端口\")"
|
" print(\" 3. 防火墙是否开放 12345 端口\")"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -143,7 +143,7 @@
|
|||||||
" print(f\" 测试查询: {df.iloc[0].to_dict()}\")\n",
|
" print(f\" 测试查询: {df.iloc[0].to_dict()}\")\n",
|
||||||
"except Exception as e:\n",
|
"except Exception as e:\n",
|
||||||
" print(f\"✗ Tushare API 连接失败: {e}\")\n",
|
" print(f\"✗ Tushare API 连接失败: {e}\")\n",
|
||||||
" print(\"请检查 config.py 中的 TUSHARE_TOKEN 是否正确\")"
|
" print(\"请检查环境变量 TUSHARE_TOKEN 是否正确(或 .env 文件)\")"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -214,7 +214,7 @@
|
|||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
"# 导入交易日历 (默认从 config.py 的 START_DATE ~ END_DATE)\n",
|
"# 导入交易日历 (默认从环境变量 QUANT_START_DATE ~ QUANT_END_DATE)\n",
|
||||||
"import_trade_cal()"
|
"import_trade_cal()"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user