为什么要做这个工具?
商业炒股软件往往充满噪音,用满屏的红绿闪烁和极具诱惑力的“回测神级策略”刺激我们频繁交易。而作为一名秉持长期主义的投资者,我们更需要一个绝对私有、白盒计算、没有干扰的净土。
Parallel Portfolio 的初衷,就是为了建立**“认知对冲”**。你可以设立一个满仓蓝筹的对照组,再设立一个你日常操作的实验组。通过真实历史数据的回测对比,用铁一样的数据提醒自己:买好公司,少折腾,才是胜率最高的策略。
相比算术平均的虚假繁荣,本工具独创的**“市值加权统计”与“期初市值分组”**,能帮你彻底看清 A 股财富分配的真实底色。
此模块用于对比多个自定义投资组合在指定时间段内的净值走势。
- 自定义组合:可添加多只股票,并设置初始持仓股数。
- 支持现金:支持输入
CASH或现金作为资产项。 - 股价录入可选:创建组合时,起始股价为可选输入。如果不输入,系统将自动尝试获取该日期的历史收盘价。
- 自动增量同步:系统会自动抓取所需的行情数据。如果本地数据库缺少某段日期的价格,系统会在计算时自动实时同步,因此同步全量历史价格非必须。
此模块用于宏观分析 A 股全市场的年度表现,提供深入的统计维度。
- 收益统计:统计指定年份的涨跌分布、平均收益率及中位数收益率。
- 市值分类:支持按全市场、大盘 (TOP 300)、中盘 (300-800)、小盘 (800-2000)、微盘 (2000+) 进行筛选。
- 加权计算:支持按统计年份前一年的年末市值进行加权平均和加权中位数计算,更真实地反映市场重心变化。
- 数据要求:必须预先同步股本信息和历史价格数据(详见下文数据准备)。
- 前端: Vue 3, Vite, ECharts, Axios
- 后端: FastAPI (Python), SQLAlchemy, AkShare (数据源), Pandas
- 数据库: SQLite (本地轻量级数据库)
- Node.js (建议 v16+)
- Python (建议 v3.10+)
# 克隆项目
git clone https://github.com/superkingjc/parallel-portfolio.git
cd parallel-portfolio
# 安装前端依赖
npm install
# 安装后端依赖
cd backend
python -m venv venv
source venv/bin/activate # Windows 使用 venv\Scripts\activate
pip install -r requirements.txt启动后端:
cd backend
python main.py首次启动后端时,系统会自动同步最新的全 A 股代码及名称名单。
启动前端:
# 在根目录下
npm run dev如果你需要使用“全市场年度统计”功能,请在后端虚拟环境下运行以下脚本同步必要的数据:
抓取全 A 股的总股本、流通股、上市日期等,用于市值计算和上市不满一年股票的剔除。
python sync_info_details.py抓取全 A 股的历史日线数据。由于数据量庞大(5000+ 股票),初次同步可能耗时较久。
python sync_prices.py本工具仅供学习交流 and 技术研究使用,不构成任何投资建议。数据来源于 AkShare 开源社区,对数据的准确性和完整性不作担保。

