一个可直接在浏览器运行的国际贸易机制实验室。项目把关税、到岸成本、贸易转移、港口拥堵和福利分配放进同一套局部均衡模型,并将结果绘制在 Natural Earth 真实国界、真实港口坐标与代表性海运通道上。
在线体验:https://seanwong17.github.io/tariff-route-lab/
- 北美、欧洲、东亚三大区域市场和粮食、机械两类商品的多边贸易
- Natural Earth 1:110m 的 177 个真实国家与地区边界
- 洛杉矶/长滩、鹿特丹、上海真实港口坐标
- 跨太平洋、巴拿马—大西洋、苏伊士—马六甲三条代表性海运通道
- 基于供需曲线、到岸价格和来源替代的市场出清
- 双边关税、全球运价、港口能力、生产率和需求强度可调
- 动态贸易地图展示双向航线、货运粒子、商品结构和港口利用率
- 消费者剩余、生产者剩余、关税收入和国家福利账户
- 贸易余额、进口依存度、贸易条件和来源集中度 HHI
- 国内供需图展示生产者价格、复合消费价格与净进口缺口
0%–60%关税扫描,比较进口国局部最优与全球福利- 基准贸易、自由贸易区、关税摩擦、港口中断和粮食冲击情景
- 政策过渡动画、政策前后对照和贸易转移图层
- 中英文界面、响应式布局、固定随机种子和离线中文字库
直接在浏览器打开 index.html,不需要安装依赖或启动后端。
固定随机种子可以复现同一组货运动画:
index.html?seed=20260718
英文界面也可以通过 URL 指定:
index.html?lang=en&seed=20260718
每个区域市场、每种商品都有独立的线性供给与需求:
Q_s = beta * (p - c_min)
Q_d = a - b * P
生产率冲击会同时改变最低生产成本与供给斜率,需求冲击改变需求曲线截距。
进口国 i 从出口国 j 采购商品 g 的到岸价格为:
P_ijg = p_jg * (1 + tariff_ijg) + freight_ijg + port_surcharge_i + port_surcharge_j
采购份额采用与到岸价格一致的离散选择/Armington 式替代。更便宜的来源获得更高份额,但贸易不会因很小的价格差突然全部切换。
求解器通过价格试探调整,使每个出口市场的供给量等于各进口国采购量之和。跨境吞吐量同时占用起运港和目的港能力;当利用率上升时,延误与附加成本以非线性方式增加,并反馈到贸易选择。
每个区域市场的模型福利定义为:
福利 = 消费者剩余 + 生产者剩余 + 关税收入
贸易余额按边境生产者价格计价。贸易条件为平均出口价格与平均进口价格之比;来源集中度使用进口来源份额的 HHI。
| 情景 | 政策或冲击 | 主要观察点 |
|---|---|---|
| 基准贸易 | 粮食 8%、机械 6% 的基准关税 | 当前贸易结构与福利账户 |
| 自由贸易区 | 三国之间关税降为零 | 贸易创造、消费价格和全球福利 |
| 关税摩擦 | 北美与欧洲相互征收 45% 关税 | 贸易收缩、贸易转移与福利损失 |
| 港口中断 | 东亚代表港能力降至 36%,运价上升 | 港口拥堵如何成为内生贸易成本 |
| 粮食冲击 | 北美粮食生产率下降,东亚需求上升 | 世界粮价、进口依赖与供给冲击传播 |
应用运行时不依赖第三方包,核心模型检查使用 Node.js 标准库:
node tests/release-check.js完整验证还包含 Chromium 中的中英文响应式布局、Canvas、键盘导航、异步关税扫描和动画生命周期检查:
npm ci
npx playwright install chromium
npm run verify检查覆盖 Natural Earth 边界完整性、真实航距范围、固定随机种子、市场出清、贸易账户恒等式、进口来源 HHI、商品级贸易转移、情景参数合同、政策过渡派生值、关税扫描、双语键完整性、浏览器交互和发布资源。
- 这是局部均衡机制实验,不是现实国家预测或政策建议。
- 商品来源存在偏好差异,但没有建模企业异质性、固定贸易成本或规模经济。
- 没有资本流动、汇率、政府预算再分配和跨期储蓄。
- 国界、港口位置与航路节点来自真实地理;供需、关税和福利数值均为教学校准,不代表对应区域的现实统计。
- “局部最优关税”来自模型中的进口国市场力量,不代表合作均衡或全球最优。
index.html:应用入口与可访问的界面结构src/trade.config.js:经济体、商品、情景和固定随机种子src/world.data.js:压缩后的 Natural Earth 1:110m 国界数据src/trade.economy.js:供需、来源选择、市场出清和港口拥堵src/trade.analytics.js:福利、贸易账户、HHI 与关税扫描src/trade.simulation.js:政策过渡动画、货运动画和时间序列状态src/trade.render.js:贸易地图与四类经济图表src/trade.i18n.js:中英文文案和数值格式src/trade.css:工作台布局、控件和响应式样式src/NotoSansSC-TradeLab.ttf:仅包含应用所需字形的 Noto Sans SC 子集tests/release-check.js:模型与发布回归检查tests/browser-check.js:Chromium 交互、响应式与渲染回归检查scripts/build-world-data.js:从 Natural Earth GeoJSON 重建离线地图数据
界面使用 Natural Earth 国界数据、Lucide 图标路径,并打包了 Noto Sans SC 字体子集。许可信息见 THIRD_PARTY_NOTICES.md 和 OFL.txt。
本项目在设计、开发、测试和发布整理过程中使用了 AI 工具协作。
项目代码采用 MIT License。第三方字体和图标遵循各自许可证。
