📋 Risk Management 培训文档 V2

🏢 部门:Risk Management DP 📅 版本:2026 🌐 品牌覆盖:DP · RKX · CG

📥 一、拉取出金数据

1. BSS 出金数据来源

所有品牌的 BSS 出金数据需从以下 SharePoint 位置读取:

以 DP BSS 为例,需要的数据表为 Base_DPVL

1-2.DP BSS需要的数据表 Base_DPVL 图.png
图:DP BSS 数据表 Base_DPVL 位置
出金表每隔 15 分钟更新一次。若遇出金数据更新延迟 30 分钟以上,请及时在以下群组反馈给 RDM 部门同事查看:
1-3 urgent discussion.png
图:urgent discussion 群组

2. 去重规则

品牌去重规则说明
DP第一次拉取:无需去重
第二/三次拉取:需去重
每个班次第一次拉取全部复制粘贴即可
RKX每次拉取都需去重每天只使用一张出金表格审核
CG每次拉取都需去重每天只使用一张出金表格审核

3. FXBO 出金数据设置

⚙️
DP FXBO 需按以下步骤设置后才可拉取数据。
RKX 和 CG FXBO 风控部门所有人共用同一账号,无需自行设置,可直接使用。
1-4.FXBO的出金数据拉取1.png
图1:FXBO 出金数据拉取入口
1-4.FXBO设置2.png
图2:FXBO 设置步骤 2
1-4.FXBO设置3.png
图3:FXBO 设置步骤 3
1-4.FXBO设置4.png
图4:FXBO 设置步骤 4
1-4.FXBO设置5.png
图5:FXBO 设置步骤 5
1-4.FXBO设置6.png
图6:FXBO 设置步骤 6
1-4FXBO设置7.png
图7:FXBO 设置步骤 7
1-4.FXBO设置8.png
图8:FXBO 设置步骤 8

二、Approve WD 批出金

(一)BSS 批量通过出金

  1. 安装 Chrome 插件
    下载并安装 Exec JavaScript 插件,将下方脚本代码填入插件。
  2. 填入脚本代码并运行
    将以下代码完整复制到插件,点击 Exec 运行:
    JavaScript
    var add_btn = () => { var page_header_container = document.querySelector(".Page-header").firstChild.firstChild; var highlight_btn = document.createElement("Button"); highlight_btn.innerHTML = "Highlight"; highlight_btn.classList.add("ant-btn", "ant-btn-primary"); page_header_container.appendChild(highlight_btn); highlight_btn.addEventListener("click", () => { navigator.clipboard.readText().then(text => { var arr = text.replace(/\r/g, "").split("\n"); var missing = []; for (let i = 0; i < arr.length; i++) { try { highlight(arr[i]); tick_checkbox(arr[i]); } catch (err) { missing.push(arr[i]); } } if (missing.length > 0) { window.alert("WD missing:\n\n" + missing.join("\n")); } }); }); var clear_btn = document.createElement("Button"); clear_btn.innerHTML = "Clear"; clear_btn.classList.add("ant-btn", "ant-btn-danger"); page_header_container.appendChild(clear_btn); clear_btn.addEventListener("click", () => { clear_highlight(); clear_checkboxes(); }); }; setTimeout(add_btn, 5000); var highlight = (WD) => { var row = document.querySelector(`td[title="${WD}"]`); if (!row) throw new Error("Row not found"); row.style.backgroundColor = "peachpuff"; }; var tick_checkbox = (WD) => { var row = document.querySelector(`td[title="${WD}"]`); if (!row) throw new Error("Row not found"); var checkbox = row.closest("tr").querySelector('input[type="checkbox"]'); if (checkbox) { checkbox.click(); } else { throw new Error("Checkbox not found"); } }; var clear_highlight = () => { var to_clear_rows = document.querySelectorAll(`td[style="background-color: peachpuff;"]`); for (let i = 0; i < to_clear_rows.length; i++) { to_clear_rows[i].style.backgroundColor = null; } }; var clear_checkboxes = () => { var all_checkboxes = document.querySelectorAll('input[type="checkbox"]'); for (let i = 0; i < all_checkboxes.length; i++) { if (all_checkboxes[i].checked) { all_checkboxes[i].click(); } } };
    2-2exec运行脚本示意图.png
    图:点击 Exec 运行脚本
  3. 在出金表格复制想要 Approve 的订单
    2-2部复制想要approve的出金订单2.png
    图:复制出金订单号
  4. 回到后台点击 Highlight
    2-2Highlight3.png
    图:点击 Highlight 按钮
  5. 点击右上角批量审核 → 通过
    2-2批量审核4.png
    图:批量审核
    2-2批量审核5.png
    图:点击通过

(二)FXBO 批量通过出金

使用 Excel CONCAT 公式拼接出金订单,例如:

=CONCAT(A1:B93)
2-2 FXBO批量通过出金.png
图:FXBO 批量通过出金操作示意

出金相关表格

📧 三、发送违规邮件流程

BSS 违规邮件流程

  1. 添加不可出金表
    把客户添加到不可出金表。若已在表中,更新备注及 Link。

    代理封锁返佣链标准(满足任意一条即封锁):
    • 违规期间返佣金额 > 350 USD
    • 违规账户数量 > 5 个
  2. 确认违规原因并发送邮件
    若不确定,与 SRM 确认后找到对应 BSS 邮件模板。
    To: 销售 & TradingCC: Risk ManagementCC: CN Support
  3. 加 Tag 并冻结资金权限
    完全违规客户需检查 MT 持仓:
    • 若无持仓 → 关闭 MT 登录权限
    • 将 CN Client 状态调整至 Client
  4. 拒绝出金
    发送违规邮件后,若该客户有出金申请,需拒绝。
  5. 填写 Pending Ad Hoc
    在 Pending Ad Hoc 表格内填写该客户的 VSR 任务。
  6. 填写 VSR 总表
    在 VSR 总表中填写客户情况并 Highlight。

FXBO 违规邮件流程

  1. 添加不可出金表
    把客户添加到不可出金表。
    💡
    代理违规返佣 < 30 USD 时,无需发送违规邮件,也无需添加至不可出金表。
  2. 确认违规原因并发送邮件
    To: EN SupportCC: Risk ManagementCC: TradingCC: 销售
  3. 加 Tag、冻结资金权限并添加评论
  4. 填写违规明细
    根据 SOP 做违规明细并填入违规明细总表。
⚠️
计算完全违规明细时,务必确保客户 MT 已关闭且无在途订单后再进行计算。

违规流程相关表格 & 邮箱

各品牌 Risk Management 邮箱

发帖位置

📢 DP-Monitoring Related

🔍 四、VSR SOP

  1. Pending Ad Hoc 里找到分配给自己的 VSR Task。
  2. 点击 Link 回到 Teams,查看具体的违规判定内容。
  3. 导出客户的 MT 历史订单,按照 VSR 模板填写所需订单。
    💡
    MT4 和 MT5 因成交逻辑不同,需使用不同模板。美分账户需在总手数和总金额处 ÷ 100
  4. 填写完成后,在 DP-Violation Summary 频道发帖,等候其他同事审核。

📈 五、DMR SOP

目标:Review 盈利较高的客户,检查是否需要调整至不同交易环境。

首次使用需按下方说明配置浏览器脚本后才可获取数据。

审核时间安排

0800 AMReview Today's Excel File + Suggestion Post
1100 AMReview Today's Excel File + Suggestion Post
1700 PMReview Today's Excel File + Suggestion Post
2200 PMReview Today's Excel File + Suggestion Post

操作步骤

  1. 确认服务器、金额筛选,请按正确顺序排序,否则粘贴时列不对。
  2. 脚本正常运行后点击右下角 复制
  3. 打开 SharePoint 01 Daily Monitor Report
  4. 在月份文件夹中根据跟进模板创建一个新文件。
  5. 打开新文件(命名为今天日期)。
  6. 粘贴复制的内容,然后逐一 Review(STATUS 为 Skip 的可跳过)。
  7. 发帖至 📢 DP-Retail Risk Management(跟随每天的 Risk Management Report Monitoring 帖子)

首次使用:篡改猴(Tampermonkey)脚本配置

  1. 在谷歌浏览器扩展程序中搜索 篡改猴(Tampermonkey) 并安装。
  2. 添加后启动,点击 添加新脚本
  3. 将以下代码完整粘贴并保存:
Tampermonkey Script
// ==UserScript== // @name BrokerPilot Winners Copier - No Platform // @namespace http://tampermonkey.net/ // @version 3.3 // @description BrokerPilot Winners 500 一键复制,去掉 Platform 字段,适配新版列顺序 // @author Harlan // @match https://dooprime.brokerpilot.cloud/session/winners-losers* // @match https://*.brokerpilot.cloud/session/winners-losers* // @grant GM_setClipboard // ==/UserScript== (function () { "use strict"; // ... 脚本完整内容请从 Confluence DMR SOP 页面获取最新版本 // 链接: https://docs.doo.hk/pages/viewpage.action?pageId=302012619 })();
📎
完整脚本代码请从 Confluence DMR SOP 页面 获取最新版本,避免版本不一致。

⚖️ 六、Position Matching SOP

操作步骤(Nov 2025 最新版)

⚠️
由于 Risk Tool 暂时无法正常使用,目前使用数据库方式进行 Position Matching。主数据库 IP:10.2.40.159:2883(fxbackoffice)
  1. 前往数据库,找到 10.2.40.159:2883 为主数据库(fxbackoffice)。
  2. 右键该 IP → 鼠标移至 SQL 编辑器 → 选择 新建 SQL 编辑器(此步骤只需做一次)。
  3. 将以下 SQL 脚本复制粘贴并执行:
  4. 跑出的结果即为目前 A-book 客户(含 API 客户如 ISEC)的持仓。
  5. 将结果截图,前往 PXM Position 进行各项匹配,验证结果是否一致。
    PXM 登录方式:前往 PrimeXM Portal → 左侧 Account Management → Position → 筛选以下 LP/API:
    • DCLUK_PXM
    • DPSL_MARGIN
    (如无权限请咨询 Jonathan / Sean / Jia Xing)

SQL 脚本(MT4 + MT5 合并持仓报告)

💡
注意事项:
  • MT5 数据库提供的 volume & contract size 数据有误,建议打开 MT5 Manager 核实手数。
  • XAGUSD 的 contract size 数据库误为 100,实际应为 1000。
  • MT4 的 net_volume 除以 100 才是客户实际手数(如显示 EURUSD 100 = 实际 1 手)。
SQL
/* MT4 + MT5 combined open-positions report */ -- MT4 Section SELECT 'MT4' AS Platform, t.LOGIN, u.`GROUP` AS `Group`, s.name AS ServerName, t.SYMBOL AS Symbol, CASE WHEN SUM(CASE WHEN t.CMD=0 THEN t.VOLUME ELSE -t.VOLUME END) > 0 THEN 'LONG' WHEN SUM(CASE WHEN t.CMD=0 THEN t.VOLUME ELSE -t.VOLUME END) < 0 THEN 'SHORT' ELSE 'FLAT' END AS Direction, ROUND(ABS(SUM(CASE WHEN t.CMD=0 THEN t.VOLUME ELSE -t.VOLUME END)),2) AS Net_Volume, SUM(t.OPEN_PRICE*t.VOLUME)/NULLIF(SUM(t.VOLUME),0) AS Weighted_Avg_Price, MAX(t.CLOSE_PRICE) AS Current_Price, SUM(t.PROFIT/(CASE WHEN u.CURRENCY='USC' THEN 100 ELSE 1 END)) AS Floating_PL FROM (SELECT * FROM mt4_live.mt4_trades UNION ALL SELECT * FROM mt4_live1.mt4_trades UNION ALL SELECT * FROM mt4_live2.mt4_trades UNION ALL SELECT * FROM mt4_live3.mt4_trades UNION ALL SELECT * FROM mt4_live4.mt4_trades UNION ALL SELECT * FROM mt4_live6.mt4_trades UNION ALL SELECT * FROM mt4_live7.mt4_trades) AS t LEFT JOIN fxbackoffice.mt4_users AS u ON t.LOGIN = u.LOGIN LEFT JOIN fxbackoffice.servers AS s ON u.sid = s.id WHERE t.CLOSE_TIME='1970-01-01' AND u.ID IS NOT NULL AND u.NAME NOT LIKE '%TEST%' AND u.`GROUP` NOT LIKE '%TEST%' AND t.CMD <= 1 AND s.id IN (1,4,5,6,7,9,10,11,12) AND (u.`GROUP` LIKE 'DPL%' OR u.`GROUP` LIKE '%L6L%' OR u.`GROUP` LIKE '%L7L%') GROUP BY t.SYMBOL, t.LOGIN, u.`GROUP`, s.name UNION ALL -- MT5 Section SELECT 'MT5' AS Platform, t.Login, u.`Group` AS `Group`, u.Company AS ServerName, t.Symbol, CASE WHEN SUM(CASE WHEN t.Action=0 THEN t.Volume/t.ContractSize ELSE -t.Volume/t.ContractSize END) > 0 THEN 'LONG' WHEN SUM(CASE WHEN t.Action=0 THEN t.Volume/t.ContractSize ELSE -t.Volume/t.ContractSize END) < 0 THEN 'SHORT' ELSE 'FLAT' END AS Direction, ROUND(ABS(SUM(CASE WHEN t.Action=0 THEN t.Volume/t.ContractSize ELSE -t.Volume/t.ContractSize END)),2) AS Net_Volume, SUM(t.PriceOpen*(t.Volume/t.ContractSize))/NULLIF(SUM(t.Volume/t.ContractSize),0) AS Weighted_Avg_Price, MAX(t.PriceCurrent) AS Current_Price, SUM(t.Profit) AS Floating_PL FROM (SELECT * FROM mt5_live.mt5_positions UNION ALL SELECT * FROM mt5_live2.mt5_positions) AS t LEFT JOIN (SELECT * FROM mt5_live.mt5_users UNION ALL SELECT * FROM mt5_live2.mt5_users) AS u ON t.Login = u.Login WHERE u.Login IS NOT NULL AND u.Name NOT LIKE '%TEST%' AND u.`Group` NOT LIKE '%TEST%' AND (u.`Group` LIKE 'DPL%' OR u.`Group` LIKE '%L6L%' OR u.`Group` LIKE '%L7L%') AND t.Action IN (0,1) GROUP BY t.Symbol, t.Login, u.`Group`, u.Company ORDER BY Platform, Symbol;

发帖位置

📢 DP-Retail Risk Management

每周一个帖子

📨 七、邮件审核

发帖位置

📢 DP-Retail Risk Management

每月或每季度一个帖子

🤖 八、Broker Pilot SOP

  1. 按步骤导出数据,然后清空所有账户。
  2. 将数据按照模板格式填入 Broker Pilot 审核文件夹中,需审核 Login 列有 MT 的记录。
  3. 将审核结果发布至 DP-BrokerPilot Related 频道。
Brokser Pilot SOP根据步骤导出数据然后清空所有账户.png
图:Broker Pilot 导出数据并清空账户操作示意

发帖位置

📢 DP-BrokerPilot Related

九、Scalper Report SOP

审核时间安排

0800 AMReview Yesterday's Excel File + Suggestion Post
1100 AMReview Today's Excel File + Suggestion Post
1700 PMReview Today's Excel File + Suggestion Post
2200 PMReview Today's Excel File + Suggestion Post

所需链接

操作步骤

  1. 打开 Risk Tool Scalper 页面,选择日期为当天,周期选择 5 分钟,导出数据。
  2. 将导出内容复制到 Scalpers Report(与 DMR 一致,每天一个文档)。
  3. 按以下条件筛选:
    • 筛选 A:"P&L" 列 > 10,000(若有,需 Copy 出来进行 Review)
    • 筛选 B:P&L 介于 1,000 ~ 9,999 USD,且 All Time P&L ≥ 0,Current Floating ≥ -2,000
  4. 将以上两步筛选到的账号复制到 Summary Sheet
  5. 和 DMR 审核一致,逐一 Review Summary 中的 Login。
  6. 发帖至 📢 DP-Retail Risk Management(每周一个帖子)