一、系统简介:InStock是什么?
InStock是一款开源股票分析系统,支持实时数据抓取、策略回测、自动化交易提醒等功能,适合个人投资者使用。
核心功能:
✅ 覆盖A股、港股、美股行情
✅ 内置MACD、KDJ等31种技术指标
✅ 支持自定义选股策略(如“放量突破年线”)
✅ 自动生成可视化分析报告
二、准备工作:安装基础软件(10分钟)
1. 安装Git(代码下载工具)
- Windows用户:
访问 Git官网,点击“Download”安装,全部选项默认勾选。 - Mac用户:
打开终端执行: - bash
- 复制
- brew install git # 若未安装Homebrew,先访问 https://brew.sh
- Linux用户:
- bash
- 复制
- sudo apt update && sudo apt install git -y # Ubuntu/Debian
2. 安装Docker与Docker Compose
打开终端(Windows用PowerShell),逐行执行:
bash
复制
# 安装Docker(约2分钟)
curl -fsSL https://get.docker.com | bash -s docker
# 安装Docker Compose(约1分钟)
sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
# 验证安装(出现版本号即成功)
docker --version # 预期输出:Docker version 20.10.17+
docker-compose --version # 预期输出:Docker Compose version v2.20.0
三、部署实战:小白友好版(15分钟)
1. 下载源代码
bash
复制
# 创建项目文件夹(Windows用户可直接在桌面右键新建)
mkdir ~/instock && cd ~/instock
# 从GitHub拉取代码(约30秒)
git clone https://github.com/myhhub/InStock.git
# 进入项目目录
cd InStock
2. 配置Docker环境
步骤说明:
- 在InStock文件夹内新建文件docker-compose.yml
- 右键用记事本/VSCode打开,复制以下内容:
yaml
复制
version: '3'
services:
db:
image: mariadb:latest
volumes:
- ./mariadb_data:/var/lib/mysql # 数据库文件保存位置
environment:
MYSQL_ROOT_PASSWORD: 123456 # 数据库密码(可自定义)
MYSQL_DATABASE: instockdb # 数据库名必须为instockdb
ports:
- "3306:3306"
app:
image: mayanghua/instock:latest
depends_on:
- db
environment:
db_host: db # 数据库容器名称
db_user: root # 数据库账号
db_password: 123456 # 与上方密码一致
db_database: instockdb # 与上方数据库名一致
db_port: 3306
ports:
- "9988:9988" # 网页访问端口
注意:Windows用户若无法创建文件,可直接下载示例文件:
bash
复制
curl -O https://raw.githubusercontent.com/myhhub/InStock/main/docker-compose.yml
3. 一键启动服务
bash
复制
# 启动容器(首次下载约5-10分钟)
docker-compose up -d
# 查看运行状态(两个容器显示Up即成功)
docker-compose ps
预期输出:
复制
NAME COMMAND SERVICE STATUS PORTS
instock_app_1 "/bin/sh -c 'python …" app running 0.0.0.0:9988->9988/tcp
instock_db_1 "docker-entrypoint.s…" db running 0.0.0.0:3306->3306/tcp
四、初始化系统(5分钟)
1. 自动建表验证
系统启动后会自动创建数据库表,若出现错误可手动执行:
bash
复制
# 进入数据库容器
docker exec -it instock_db bash
# 登录数据库(密码为123456)
mariadb -u root -p
# 执行建表命令(逐行复制粘贴)
USE instockdb;
CREATE TABLE IF NOT EXISTS cn_stock_attention (
datetime datetime(0) NULL DEFAULT NULL,
code varchar(6) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
PRIMARY KEY (code),
INDEX INIX_DATETIME(datetime)
);
exit;
2. 访问系统
打开浏览器输入:
- 本地电脑:http://localhost:9988
- 云服务器:http://你的服务器IP:9988
首次使用建议:
- 点击“数据管理” → “同步最新行情”
- 在“策略回测”中选择“MACD金叉策略”测试效果
五、常见问题与解决
问题现象 | 解决方案 |
浏览器无法访问 | 检查防火墙是否开放9988端口,执行 docker-compose restart app 重启服务 |
数据库连接失败 | 确认 docker-compose.yml 中的 db_password 与数据库密码一致 |
数据同步卡顿 | 切换数据源:编辑 config.ini 文件,将 data_source 改为 tushare |
策略回测无结果 | 确保已同步至少3个月历史数据,并检查日期范围 |
六、数据备份与升级
1. 备份数据
直接复制项目目录下的 mariadb_data 文件夹即可。
2. 升级到最新版本
bash
复制
BBIN宝盈# 进入项目目录
cd ~/instock/InStock
# 拉取最新代码
git pull origin main
# 重启服务
down && docker-compose up -d
部署成功 Checklist
✅ 浏览器打开 http://localhost:9988 显示登录界面
✅ “数据管理”页面可正常同步股票列表
✅ “策略回测”中测试“放量上涨策略”生成报告
发表评论