具象汇率大师 NeTick-Pro

具象汇率大师 NeTick-Pro

基于 ECB 的汇率体系说明

本插件采用 欧洲央行(ECB,European Central Bank) 发布的欧元参考汇率作为底层数据源。

ECB 在每个工作日(TARGET2 结算日)约 欧洲中部时间 15:15 完成汇率采样,约 16:00 后 通过官方渠道发布。该汇率体系是欧洲及全球外汇市场最权威、最透明的基准汇率之一,广泛应用于跨境结算、财务估值、宏观经济分析等场景。

ECB 参考汇率的定义方式为:

1 欧元 = X 单位其他货币

即所有汇率均以欧元(EUR)为基准货币,其他货币均为报价货币。这一设计具有天然优势:

  • 高度标准化:便于横向比较各国货币的相对强弱;
  • 便于交叉汇率计算:任意两种非欧元货币之间的汇率可由其对欧元的汇率推算得出;
  • 数据链完整:ECB 汇率数据可追溯至 1999 年欧元诞生之日。

主要货币列表

#代码名称
1USD美元
2JPY日元
3BGN保加利亚列弗
4CZK捷克克朗
5DKK丹麦克朗
6GBP英镑
7HUF匈牙利福林
8PLN波兰兹罗提
9RON罗马尼亚列伊
10SEK瑞典克朗
11CHF瑞士法郎
12ISK冰岛克朗
13NOK挪威克朗
14HRK克罗地亚库纳
15TRY土耳其里拉
16AUD澳元
17BRL巴西雷亚尔
18CAD加元
19CNY人民币
20HKD港币
21IDR印尼盾
22ILS以色列新谢克尔
23INR印度卢比
24KRW韩元
25MXN墨西哥比索
26MYR马来西亚林吉特
27NZD新西兰元
28PHP菲律宾比索
29SGD新加坡元
30THB泰铢
31ZAR南非兰特

⚠️ 特别说明俄罗斯卢布(RUB) 曾长期在 ECB 发布列表中,但自 2022 年 3 月 1 日 起已无限期暂停发布,本插件当前版本不再包含 RUB,但保留了扩展接口以备恢复。

⚠️ HRK 克罗地亚库纳, 现已加入欧元区

数据更新机制

插件通过 定时任务 自动更新 ECB 数据:

机制说明
手动导入首次使用时,通过后台 「数据管理 → 导入全部 ECB 历史数据」 完成完整数据导入
每日增量更新系统每天凌晨自动拉取 ECB 最新发布数据,仅补充缺失日期
缓存刷新每次更新后自动刷新交叉汇率缓存表,确保前台展示实时汇率
错误降级若 ECB 服务器暂时不可用,系统自动使用最近可用数据,不影响前台展示

基础汇率表(wp_base_rates

字段类型说明
currency_codeCHAR(3)货币代码(如 USD、CNY)
rateDECIMAL(20,10)1 EUR = X 该货币
rate_dateDATE汇率日期
  • 唯一索引(currency_code, rate_date) 防止重复数据
  • 数据量:当前约 17.9 万条(30 种货币 × 约 6,000 个交易日)

缓存表(wp_base_cache

字段说明
currency_pair货币对(如 USDCNY)
rate交叉汇率
change_percent涨跌幅(基于前一日)
expire_time缓存过期时间(24 小时自动刷新)

具象汇率大师(Nextick Pro) 以欧洲央行(ECB)官方汇率体系为核心,构建了一套完整、可信、可追溯的汇率数据基础设施:

  • 数据源权威:ECB 欧元基准汇率,全球公认;
  • 货币覆盖面广:30 种主要货币,覆盖全球主要经济体;
  • 历史数据完整:1999 年至今,支持深度趋势分析;
  • 计算逻辑严谨:交叉汇率 + 高精度运算,确保数据准确;
  • 用户灵活度高:可任意切换基础货币,自动生成货币对;
  • 本地化存储:一次导入,永久可用,不依赖外部 API。

这使得本插件既适用于企业级的汇率数据管理,也适用于网站前台的汇率展示、图表分析、AI 预测等多元化场景。

我的汇率设置

「我的汇率设置」是一个用户自定义汇率偏好的配置面板,允许登录用户选择自己关注的货币对,系统会自动生成对应的汇率数据并保存到用户账户中。

权限控制

用户类型行为
未登录用户显示只读界面,提示「登录后可以自定义您的汇率显示偏好」
已登录用户完整可编辑界面,可保存设置
管理员禁用如果后台关闭「允许用户自定义」,显示提示信息

与其他模块交互关系

兼容除侧边 汇率兑换widget 之外所有模块且不断更新中

Q: 为什么我保存设置后没有立即看到数据?
A: 保存后会触发 API 拉取,请稍等片刻刷新页面。
Q: 最多能选多少个货币?
A: 最多 10 个,这是为了保持表格的可读性。
Q: 为什么有些货币无法选择?
A: 您选择的基础货币会自动排除在列表之外,因为不能自己对自己。
Q: 访客能看到我的设置吗?
A: 不能。您的设置只保存在您的账户中,只有您自己能看到。
Q: 如果管理员禁用了用户自定义功能怎么办?
A: 页面会显示「管理员已禁用用户自定义功能」的提示。

时间周期选择器(Time Period Selector)

时间周期选择器是汇率表格顶部的下拉菜单,允许用户切换显示 当前最近3天最近7天 的汇率数据。

图片[1]-具象汇率大师 NeTick-Pro-具象智联 Orientalnexus.cn

逻辑流程图

拉取数据策略(smart_fetch)

智能拉取策略 (smart_fetch)
1. 检查锁 (防止并发拉取)
└── 如果正在拉取中 → 跳过
2. 补录昨天的收盘价
├── 检查昨天是否已拉取 → 已拉取则跳过
├── 昨天是工作日 → 拉取 ECB 收盘价
└── 昨天是周末 → 标记为已拉取,无需拉取
3. 拉取今天的数据
├── 今天已拉取收盘价 → 跳过
├── 北京时间 22:00 前 → 拉取 API 实时价格 (不写入历史)
└── 北京时间 22:00 后 → 拉取 ECB 收盘价 (写入历史)

数据来源判断逻辑

/**
 * 判断今天数据的来源
 */
function get_today_data_source($pair) {
    // 1. 检查 ECB 是否有今天的数据
    $ecb_rate = $calculator->get_rate($base, $quote, $today);
    if ($ecb_rate !== false && $ecb_rate > 0) {
        return 'ecb';  // ECB 收盘价
    }
    
    // 2. 检查 API 是否有今天的数据
    $api_rate = DataService::get_rate($pair);
    if ($api_rate && $api_rate['last_price'] > 0) {
        return 'api';  // API 实时价格
    }
    
    return 'no_data';  // 暂无数据
}

周期切换逻辑

// 用户选择周期 → 刷新页面
$select.on('change', function() {
    var days = $(this).val();
    var url = new URL(window.location.href);
    url.searchParams.set('period', days);
    window.location.href = url.toString();
});
// PHP 读取 URL 参数
$period_param = isset($_GET['period']) ? intval($_GET['period']) : 0;
if (in_array($period_param, [1, 3, 7])) {
    $days = $period_param;
} else {
    $days = 7; // 默认
}

K线图

K线图(Candlestick Chart)是一种用于显示汇率/价格走势的技术分析图表。每根K线包含四个价格信息:

图片[2]-具象汇率大师 NeTick-Pro-具象智联 Orientalnexus.cn
要素说明
开盘价(Open)该时间段开始时的价格
收盘价(Close)该时间段结束时的价格
最高价(High)该时间段内的最高价格
最低价(Low)该时间段内的最低价格

颜色含义:

  • 🟢 绿色阳线:收盘价 > 开盘价(上涨)
  • 🔴 红色阴线:收盘价 < 开盘价(下跌)

在汇率表格中,点击任意货币对名称(如 USD/CNY),即可弹出K线图弹窗。

 技术指标说明

📈 趋势类

指标用途
MA5 / MA10 / MA20 / MA30 / MA60 / MA120 / MA200判断趋势方向和强度
布林带(上/中/下轨)判断支撑阻力位和波动区间

📊 动量类

指标用途
RSI判断超买超卖(>70超买,<30超卖)
MACD / MACD信号线 / MACD柱状图判断趋势方向和买卖信号(金叉/死叉)
KDJ-K / KDJ-D / KDJ-J判断短期超买超卖和买卖点
CCI判断价格是否偏离正常范围
威廉%R判断超买超卖

📉 波动类

指标用途
ATR衡量市场波动性,辅助设置止损位

💰 量能类

指标用途
成交量确认趋势可靠性
OBV通过成交量验证价格趋势

建议组合

用户类型推荐指标组合
新手MA5 + MA20 + 成交量
中级MA5 + MA20 + RSI + MACD + 成交量
高级MA5 + MA20 + MA60 + 布林带 + RSI + MACD + KDJ + 成交量

缩放与拖拽

操作效果
滚轮滚动放大/缩小K线图
拖拽图表左右移动查看不同时间段
点击底部滑块拖动滑块选择查看区间

将鼠标悬停在任意K线上,会显示该日的详细数据:

  • 日期
  • 开盘价、收盘价、最高价、最低价
  • 各技术指标值

数据说明

项目说明
数据来源欧洲央行(ECB)官方历史数据 + 实时API补充
更新频率每个交易日北京时间 22:00-23:00 更新
数据范围支持查询 1999 年至今的历史数据
数据真实性所有数据均为真实市场数据,无任何虚拟或模拟数据
THE END
分享