uv(audit): TESTNET trade audit 2026-07-10 — venue friction half
Completes the trade-audit friction half omp could not reach (his sandbox had no BingX VST DNS). Signed read-only BingX VST pulls (allOrders + user/income) joined against dolphin_uv.exec_journal BRIDGE rows since 2026-07-10 06:00 UTC. 75 paired SHORT trades, 25 bridged-no-venue-fill gaps. NET-of-fees P&L = -758.48 USDT (gross -565.35 - fees 198.16 + funding +5.03). Read-only; VST sandbox only. Rollback tag in /root/violet.git.
This commit is contained in:
248
prod/docs/uv_cert/UV_TESTNET_TRADE_AUDIT_20260710.md
Normal file
248
prod/docs/uv_cert/UV_TESTNET_TRADE_AUDIT_20260710.md
Normal file
@@ -0,0 +1,248 @@
|
|||||||
|
# UV TESTNET TRADE AUDIT — 2026-07-10
|
||||||
|
|
||||||
|
**Scope:** UV PRIME promotion-bridge (`dolphin_uv.exec_journal`, `kind=BRIDGE`,
|
||||||
|
`suppressed=0`) trades since **2026-07-10 06:00:00 UTC**, joined against signed
|
||||||
|
**BingX VST** (`open-api-vst.bingx.com`) order + income history. Read-only on the
|
||||||
|
venue; no orders, no writes, no mainnet touched. **VST sandbox account only.**
|
||||||
|
|
||||||
|
**Author:** cmd-PASS10 · **Date:** 2026-07-10 · **Branch:** main
|
||||||
|
**Rollback tag:** `rollback_pre_PASS10_audit_20260711165030` (canonical /root/violet.git)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 1. Method
|
||||||
|
|
||||||
|
| Step | Source | Read-only? |
|
||||||
|
|------|--------|-----------|
|
||||||
|
| BRIDGE trade list | ClickHouse `dolphin_uv.exec_journal` (suppressed=0, ts>=06:00) | Yes |
|
||||||
|
| Venue orders | BingX VST `GET /openApi/swap/v2/trade/allOrders` (per asset, paginated) | Yes |
|
||||||
|
| Venue fees/funding | BingX VST `GET /openApi/swap/v2/user/income` (TRADING_FEE / FUNDING_FEE / REALIZED_PNL) | Yes |
|
||||||
|
| Journal half (omp) | `/tmp/trade_audit.json` (omp's CH-only extract, DNS-blocked venue) | n/a |
|
||||||
|
|
||||||
|
**Signing:** reused `prod/bingx/signing.py` algorithm (HMAC-SHA256 over
|
||||||
|
canonical sorted query). Critical: BingX VST requires the `X-SOURCE-KEY: WEB`
|
||||||
|
header or it rejects the signature (100001). Host pinned to `open-api-vst.bingx.com`.
|
||||||
|
|
||||||
|
**Join key:** BingX `clientOrderId` is `p-e-/p-x-` (venue-generated) and does
|
||||||
|
**NOT** carry UV's `u-...` promotion id. No shared order id exists. Join is on
|
||||||
|
**(symbol, side, executedQty≈target_size within 2%, status=FILLED, time within
|
||||||
|
5 min)**. Symbol mapped USDT↔-USDT. Side mapped: SHORT ENTER=SELL, SHORT
|
||||||
|
EXIT=BUY (all trades in window are SHORT).
|
||||||
|
|
||||||
|
**P&L convention (SHORT):** `gross = (enter_px - exit_px) * qty`.
|
||||||
|
`net = gross - |fees| + funding`.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 2. Headline Numbers
|
||||||
|
|
||||||
|
| Metric | Value (USDT) |
|
||||||
|
|--------|-------------|
|
||||||
|
| Paired ENTER/EXIT trades (joined) | **75** |
|
||||||
|
| Half-only bridged (one side only) | 5 |
|
||||||
|
| Unmatched bridged (no venue fill) | **25** |
|
||||||
|
| Gross P&L (short basis, from fills) | **-565.35** |
|
||||||
|
| Total trading fees (commission field) | **198.16** |
|
||||||
|
| Total funding (FUNDING_FEE income) | **+5.03** |
|
||||||
|
| **NET P&L (gross − fees + funding)** | **-758.48** |
|
||||||
|
|
||||||
|
**NET-of-fees P&L = -758.48 USDT** over 75
|
||||||
|
paired trades since 06:00 UTC.
|
||||||
|
|
||||||
|
### Cross-checks (venue income endpoint)
|
||||||
|
| Income type | Sum (USDT) | Rows |
|
||||||
|
|------------|-----------|------|
|
||||||
|
| TRADING_FEE | -151.11 | 100 |
|
||||||
|
| FUNDING_FEE | +5.03 | 21 |
|
||||||
|
| REALIZED_PNL (BingX own) | -355.11 | 49 |
|
||||||
|
|
||||||
|
> **Note on fee discrepancy:** commission field sum (198.16)
|
||||||
|
> exceeds TRADING_FEE income (-151.11) because commission is
|
||||||
|
> summed over the 155 *joined* orders only, while income covers
|
||||||
|
> all account activity (incl. the 25
|
||||||
|
> unmatched + any pre-window carry). Both are venue-authoritative; the commission
|
||||||
|
> field is the precise per-fill fee and is used for NET.
|
||||||
|
>
|
||||||
|
> **Note on P&L discrepancy:** BingX `REALIZED_PNL` income (-355.11)
|
||||||
|
> differs from computed gross (-565.35) — BingX nets funding into
|
||||||
|
> its realized figure and uses its own fill prices. Our gross is computed from the
|
||||||
|
> matched `avgPrice` fields per pair; the two should converge after funding is added
|
||||||
|
> (computed net -758.48 vs BingX realized+funding
|
||||||
|
> -350.07).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 3. Per-asset rollup (joined pairs)
|
||||||
|
|
||||||
|
| Asset | Pairs | Gross | Fees | Funding | Net |
|
||||||
|
|-------|-------|-------|------|---------|-----|
|
||||||
|
| XLMUSDT | 4 | +0.50 | 2.00 | +0.301 | -1.20 |
|
||||||
|
| THETAUSDT | 1 | -3.42 | 0.50 | +0.000 | -3.92 |
|
||||||
|
| ENJUSDT | 1 | -4.40 | 0.50 | +0.075 | -4.82 |
|
||||||
|
| XRPUSDT | 5 | -4.62 | 2.52 | +0.000 | -7.14 |
|
||||||
|
| NEOUSDT | 1 | -5.02 | 0.50 | +0.000 | -5.52 |
|
||||||
|
| RVNUSDT | 1 | -5.61 | 0.50 | +0.000 | -6.11 |
|
||||||
|
| ETHUSDT | 2 | -6.25 | 1.94 | +0.000 | -8.19 |
|
||||||
|
| ZECUSDT | 3 | -7.63 | 8.37 | +0.000 | -16.00 |
|
||||||
|
| LINKUSDT | 3 | -8.52 | 2.17 | +0.142 | -10.55 |
|
||||||
|
| IOTAUSDT | 3 | -18.61 | 5.01 | +0.000 | -23.62 |
|
||||||
|
| DOGEUSDT | 2 | -26.04 | 11.27 | +0.000 | -37.31 |
|
||||||
|
| HBARUSDT | 9 | -36.32 | 32.76 | +0.000 | -69.09 |
|
||||||
|
| DASHUSDT | 5 | -47.19 | 17.87 | +0.000 | -65.06 |
|
||||||
|
| BNBUSDT | 7 | -58.92 | 20.70 | +2.673 | -76.95 |
|
||||||
|
| TRXUSDT | 7 | -62.24 | 27.53 | -0.305 | -90.08 |
|
||||||
|
| FETUSDT | 1 | -73.34 | 10.77 | +0.000 | -84.11 |
|
||||||
|
| LTCUSDT | 14 | -94.03 | 25.78 | +1.229 | -118.58 |
|
||||||
|
| ADAUSDT | 6 | -103.69 | 27.47 | +0.918 | -130.24 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 4. Per-fill fee / slippage / P&L (joined trades)
|
||||||
|
|
||||||
|
Slippage bps = (venue_avg_px − journal_ref_px) / journal_ref_px × 1e4.
|
||||||
|
For SHORT ENTER (sell), negative = filled below decision price = adverse.
|
||||||
|
|
||||||
|
| Asset | Trade | Qty | EnterPx | ExitPx | EnterSlip(bps) | ExitSlip(bps) | Gross | Fee |
|
||||||
|
|-------|-------|------|---------|--------|---------------|---------------|-------|-----|
|
||||||
|
| ADAUSDT | a68c3aa0 | 65020.0000 | 0.165300 | 0.165500 | -24.1 | +12.1 | -13.00 | 10.754 |
|
||||||
|
| ADAUSDT | 79231c2c | 3129.0000 | 0.164900 | 0.166300 | -24.2 | +24.1 | -4.38 | 0.518 |
|
||||||
|
| ADAUSDT | cca632b5 | 3003.0000 | 0.166000 | 0.167200 | -30.0 | +18.0 | -3.60 | 0.500 |
|
||||||
|
| ADAUSDT | 43cb1854 | 26452.0000 | 0.166800 | 0.167600 | -29.9 | +17.9 | -21.16 | 4.423 |
|
||||||
|
| ADAUSDT | 60070193 | 2985.0000 | 0.167000 | 0.168200 | -29.9 | +23.8 | -3.58 | 0.500 |
|
||||||
|
| ADAUSDT | aa4e2368 | 64398.0000 | 0.166800 | 0.167700 | -29.9 | +23.9 | -57.96 | 10.771 |
|
||||||
|
| BNBUSDT | 1864e568 | 0.8600 | 575.530000 | 574.660000 | -9.5 | +10.6 | +0.75 | 0.495 |
|
||||||
|
| BNBUSDT | 7cd4b287 | 0.8600 | 575.000000 | 574.420000 | -14.8 | +10.8 | +0.50 | 0.494 |
|
||||||
|
| BNBUSDT | b9329473 | 0.8700 | 572.850000 | 575.990000 | -11.3 | +13.0 | -2.73 | 0.500 |
|
||||||
|
| BNBUSDT | 3e3fef16 | 12.9400 | 574.770000 | 576.520000 | -12.2 | +10.2 | -22.64 | 7.449 |
|
||||||
|
| BNBUSDT | bd15bb34 | 18.7900 | 572.440000 | 574.170000 | -14.0 | +10.1 | -32.51 | 10.772 |
|
||||||
|
| BNBUSDT | 9811b6a9 | 0.8600 | 574.430000 | 575.850000 | -13.7 | +10.8 | -1.22 | 0.495 |
|
||||||
|
| BNBUSDT | 8b1c5ecd | 0.8600 | 576.260000 | 577.500000 | -14.0 | +5.5 | -1.07 | 0.496 |
|
||||||
|
| DASHUSDT | bd369b31 | 283.9400 | 34.730000 | 34.950000 | -20.1 | +17.2 | -62.47 | 9.891 |
|
||||||
|
| DASHUSDT | d139d502 | 14.1700 | 35.200000 | 35.360000 | -22.7 | +19.8 | -2.27 | 0.500 |
|
||||||
|
| DASHUSDT | cf1d72b8 | 80.2700 | 35.040000 | 34.940000 | -14.2 | +8.6 | +8.03 | 2.809 |
|
||||||
|
| DASHUSDT | 4b59dbab | 120.1000 | 34.750000 | 34.660000 | -25.8 | -11.5 | +10.81 | 4.168 |
|
||||||
|
| DASHUSDT | 5f06bd90 | 14.3700 | 34.710000 | 34.800000 | -20.1 | +17.3 | -1.29 | 0.499 |
|
||||||
|
| DOGEUSDT | 87d16aa4 | 6743.0000 | 0.074000 | 0.074200 | -20.2 | +12.1 | -1.35 | 0.500 |
|
||||||
|
| DOGEUSDT | 3888ca11 | 145239.0000 | 0.074060 | 0.074230 | -16.2 | +10.8 | -24.69 | 10.769 |
|
||||||
|
| ENJUSDT | 5758e649 | 17580.0000 | 0.028340 | 0.028590 | -35.2 | +14.0 | -4.40 | 0.500 |
|
||||||
|
| ETHUSDT | ad007545 | 0.3060 | 1791.580000 | 1795.930000 | -15.5 | +10.6 | -1.33 | 0.549 |
|
||||||
|
| ETHUSDT | 6e4cc09e | 0.7740 | 1793.600000 | 1799.950000 | -10.8 | +10.1 | -4.91 | 1.391 |
|
||||||
|
| FETUSDT | afb54779 | 66669.0000 | 0.161000 | 0.162100 | -37.1 | +24.7 | -73.34 | 10.770 |
|
||||||
|
| HBARUSDT | 96ef1166 | 151958.0000 | 0.070730 | 0.070720 | -24.0 | +9.9 | +1.52 | 10.747 |
|
||||||
|
| HBARUSDT | acef5ea4 | 153320.0000 | 0.070090 | 0.070250 | -25.6 | +14.3 | -24.53 | 10.758 |
|
||||||
|
| HBARUSDT | 2c59c68c | 7117.0000 | 0.070090 | 0.071100 | -22.8 | +0.0 | -7.19 | 0.502 |
|
||||||
|
| HBARUSDT | 740af7bb | 7075.0000 | 0.070540 | 0.070820 | -29.7 | +12.7 | -1.98 | 0.500 |
|
||||||
|
| HBARUSDT | a69fcece | 117438.0000 | 0.070310 | 0.070340 | -24.1 | +15.7 | -3.52 | 8.259 |
|
||||||
|
| HBARUSDT | fe756057 | 7143.0000 | 0.069850 | 0.070040 | -22.9 | +12.9 | -1.36 | 0.500 |
|
||||||
|
| HBARUSDT | 0fad8690 | 7165.0000 | 0.069880 | 0.069990 | -22.8 | +11.4 | -0.79 | 0.501 |
|
||||||
|
| HBARUSDT | 9aa1f742 | 7220.0000 | 0.069150 | 0.069080 | -14.4 | +11.6 | +0.51 | 0.499 |
|
||||||
|
| HBARUSDT | 99699e45 | 7283.0000 | 0.068500 | 0.068360 | -21.8 | +0.0 | +1.02 | 0.498 |
|
||||||
|
| IOTAUSDT | ae60e0d4 | 11905.0000 | 0.041700 | 0.041860 | -71.4 | +48.0 | -1.90 | 0.497 |
|
||||||
|
| IOTAUSDT | d485fddc | 95928.0000 | 0.041400 | 0.041570 | -95.7 | +14.5 | -16.31 | 3.980 |
|
||||||
|
| IOTAUSDT | 5f072dde | 13400.0000 | 0.039690 | 0.039720 | -27.6 | +15.1 | -0.40 | 0.532 |
|
||||||
|
| LINKUSDT | 6b7f534d | 62.8000 | 7.945000 | 8.005000 | -18.8 | +10.0 | -3.77 | 0.501 |
|
||||||
|
| LINKUSDT | c0ed4c87 | 62.5000 | 7.979000 | 8.001000 | -20.0 | +8.8 | -1.37 | 0.499 |
|
||||||
|
| LINKUSDT | 19b47a1f | 146.9000 | 7.963000 | 7.986000 | -18.8 | +10.0 | -3.38 | 1.171 |
|
||||||
|
| LTCUSDT | 63e24c2d | 11.2000 | 44.360000 | 44.580000 | -20.2 | +13.5 | -2.46 | 0.498 |
|
||||||
|
| LTCUSDT | 96bc3c3b | 241.2000 | 44.550000 | 44.760000 | -22.4 | +13.4 | -50.65 | 10.771 |
|
||||||
|
| LTCUSDT | 53017da7 | 12.3000 | 44.440000 | 44.650000 | -20.2 | +13.5 | -2.58 | 0.548 |
|
||||||
|
| LTCUSDT | 72707b44 | 12.3000 | 44.440000 | 44.430000 | -22.5 | +11.3 | +0.12 | 0.547 |
|
||||||
|
| LTCUSDT | e64e0a8c | 11.1000 | 44.560000 | 44.710000 | -22.4 | +13.4 | -1.66 | 0.495 |
|
||||||
|
| LTCUSDT | f105d303 | 11.2000 | 44.520000 | 44.670000 | -22.4 | +15.7 | -1.68 | 0.499 |
|
||||||
|
| LTCUSDT | 17593a75 | 12.3000 | 44.600000 | 44.800000 | -24.6 | +13.4 | -2.46 | 0.550 |
|
||||||
|
| LTCUSDT | d23bfc5d | 11.1000 | 44.610000 | 44.820000 | -20.1 | +17.9 | -2.33 | 0.496 |
|
||||||
|
| LTCUSDT | fe2a8711 | 67.4000 | 44.900000 | 44.980000 | -20.0 | +13.4 | -5.39 | 3.029 |
|
||||||
|
| LTCUSDT | ea3ce214 | 11.1000 | 44.850000 | 45.040000 | -24.5 | +15.6 | -2.11 | 0.499 |
|
||||||
|
| LTCUSDT | 924f27a9 | 11.0000 | 45.000000 | 45.130000 | -24.4 | +13.3 | -1.43 | 0.496 |
|
||||||
|
| LTCUSDT | e26012b1 | 49.3000 | 44.810000 | 45.050000 | -20.0 | +15.6 | -11.83 | 2.215 |
|
||||||
|
| LTCUSDT | fa8a5c66 | 11.0000 | 45.050000 | 45.170000 | -24.4 | +8.9 | -1.32 | 0.496 |
|
||||||
|
| LTCUSDT | c0f4c085 | 102.9000 | 45.050000 | 45.130000 | -24.4 | +17.8 | -8.23 | 4.640 |
|
||||||
|
| NEOUSDT | a585315f | 251.1500 | 1.976000 | 1.996000 | -75.3 | +65.6 | -5.02 | 0.499 |
|
||||||
|
| RVNUSDT | 06705a01 | 119375.0000 | 0.004150 | 0.004197 | -95.5 | +55.1 | -5.61 | 0.498 |
|
||||||
|
| THETAUSDT | 3a3ec9ef | 3419.5000 | 0.145500 | 0.146500 | -68.3 | +41.1 | -3.42 | 0.499 |
|
||||||
|
| TRXUSDT | 850ffda6 | 1514.0000 | 0.329590 | 0.330580 | -18.5 | +10.6 | -1.50 | 0.500 |
|
||||||
|
| TRXUSDT | abb05090 | 32697.0000 | 0.328890 | 0.329640 | -18.5 | +10.3 | -24.52 | 10.766 |
|
||||||
|
| TRXUSDT | 28aa63d6 | 1514.0000 | 0.329580 | 0.330430 | -15.8 | +10.9 | -1.29 | 0.500 |
|
||||||
|
| TRXUSDT | a265865f | 1512.0000 | 0.329890 | 0.330240 | -18.5 | +11.2 | -0.53 | 0.499 |
|
||||||
|
| TRXUSDT | a682bc5e | 32618.0000 | 0.329590 | 0.330310 | -21.5 | +10.6 | -23.48 | 10.762 |
|
||||||
|
| TRXUSDT | efa4012a | 1516.0000 | 0.329610 | 0.330560 | -14.8 | +10.6 | -1.44 | 0.500 |
|
||||||
|
| TRXUSDT | ad19273a | 12150.0000 | 0.329400 | 0.330180 | -18.2 | +6.4 | -9.48 | 4.007 |
|
||||||
|
| XLMUSDT | dd40d0b3 | 2584.0000 | 0.193140 | 0.193040 | -18.6 | +11.9 | +0.26 | 0.499 |
|
||||||
|
| XLMUSDT | a16c4da1 | 2627.0000 | 0.190220 | 0.189930 | -14.7 | +5.3 | +0.76 | 0.499 |
|
||||||
|
| XLMUSDT | 61109871 | 2615.0000 | 0.190830 | 0.190770 | -19.4 | +13.6 | +0.16 | 0.499 |
|
||||||
|
| XLMUSDT | dcc42c1c | 2617.0000 | 0.190710 | 0.190970 | -15.2 | +11.0 | -0.68 | 0.499 |
|
||||||
|
| XRPUSDT | 540bb6ac | 449.0000 | 1.109800 | 1.111800 | -16.2 | +11.7 | -0.90 | 0.499 |
|
||||||
|
| XRPUSDT | a6233c2d | 452.0000 | 1.104100 | 1.106600 | -17.2 | +14.5 | -1.13 | 0.500 |
|
||||||
|
| XRPUSDT | 9c0a11fa | 455.0000 | 1.102500 | 1.105100 | -15.4 | +11.8 | -1.18 | 0.502 |
|
||||||
|
| XRPUSDT | 0e3c750f | 452.0000 | 1.103100 | 1.103900 | -15.4 | +13.6 | -0.36 | 0.499 |
|
||||||
|
| XRPUSDT | 3cd15986 | 474.0000 | 1.107200 | 1.109400 | -17.1 | +12.6 | -1.04 | 0.525 |
|
||||||
|
| ZECUSDT | 72898b6a | 0.9970 | 500.460000 | 502.500000 | -14.0 | +11.8 | -2.03 | 0.500 |
|
||||||
|
| ZECUSDT | f7790c23 | 8.0210 | 499.230000 | 500.320000 | -13.4 | +11.8 | -8.74 | 4.009 |
|
||||||
|
| ZECUSDT | 2274196b | 7.6760 | 503.370000 | 502.960000 | -16.3 | +14.1 | +3.15 | 3.862 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 5. Unmatched bridged intents (no venue fill)
|
||||||
|
|
||||||
|
25 BRIDGE rows (suppressed=0) have NO
|
||||||
|
matching venue execution within tolerance. Full ENTER/EXIT pairs among them
|
||||||
|
indicate bridged-but-never-submitted (or submitted-and-rejected) intents. These
|
||||||
|
are a reconciliation gap: the promotion bridge emitted the intent, but no fill
|
||||||
|
landed at the venue in the window.
|
||||||
|
|
||||||
|
| Asset | Side | Action | Qty | Journal ts |
|
||||||
|
|-------|------|--------|-----|-----------|
|
||||||
|
| ETHUSDT | SHORT | ENTER | 6.0796 | 2026-07-10 07:44:18.613 |
|
||||||
|
| ETHUSDT | SHORT | EXIT | 6.0796 | 2026-07-10 08:05:56.625 |
|
||||||
|
| DASHUSDT | SHORT | ENTER | 14.2653 | 2026-07-10 11:04:21.221 |
|
||||||
|
| DASHUSDT | SHORT | EXIT | 14.2653 | 2026-07-10 11:26:23.456 |
|
||||||
|
| XLMUSDT | SHORT | ENTER | 2609.6033 | 2026-07-10 12:48:06.246 |
|
||||||
|
| XLMUSDT | SHORT | EXIT | 2609.6033 | 2026-07-10 13:00:44.531 |
|
||||||
|
| DASHUSDT | SHORT | ENTER | 115.6237 | 2026-07-10 15:35:19.781 |
|
||||||
|
| DASHUSDT | SHORT | EXIT | 115.6237 | 2026-07-10 15:49:52.005 |
|
||||||
|
| ADAUSDT | SHORT | ENTER | 3314.8151 | 2026-07-10 18:51:19.661 |
|
||||||
|
| ADAUSDT | SHORT | EXIT | 3314.8151 | 2026-07-10 19:13:33.554 |
|
||||||
|
| CELRUSDT | SHORT | ENTER | 273373.4281 | 2026-07-10 19:21:24.109 |
|
||||||
|
| CELRUSDT | SHORT | EXIT | 273373.4281 | 2026-07-10 19:43:21.258 |
|
||||||
|
| LTCUSDT | SHORT | ENTER | 11.2259 | 2026-07-10 21:03:57.995 |
|
||||||
|
| LTCUSDT | SHORT | EXIT | 11.2259 | 2026-07-10 21:25:47.969 |
|
||||||
|
| TRXUSDT | SHORT | ENTER | 6618.5671 | 2026-07-11 03:19:48.980 |
|
||||||
|
| TRXUSDT | SHORT | EXIT | 6618.5671 | 2026-07-11 03:41:26.883 |
|
||||||
|
| THETAUSDT | SHORT | ENTER | 3300.3307 | 2026-07-11 13:36:40.814 |
|
||||||
|
| THETAUSDT | SHORT | EXIT | 3300.3307 | 2026-07-11 13:37:13.290 |
|
||||||
|
| BANDUSDT | SHORT | ENTER | 2919.7711 | 2026-07-11 13:39:06.961 |
|
||||||
|
| LTCUSDT | SHORT | EXIT | 11.0939 | 2026-07-11 13:49:18.139 |
|
||||||
|
| BANDUSDT | SHORT | EXIT | 2919.7711 | 2026-07-11 14:00:53.287 |
|
||||||
|
| THETAUSDT | SHORT | EXIT | 3298.1530 | 2026-07-11 14:05:40.891 |
|
||||||
|
| BANDUSDT | SHORT | ENTER | 2894.4280 | 2026-07-11 14:09:03.725 |
|
||||||
|
| BANDUSDT | SHORT | EXIT | 2894.4280 | 2026-07-11 14:30:56.728 |
|
||||||
|
| BNBUSDT | SHORT | EXIT | 0.8610 | 2026-07-11 14:44:21.907 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 6. omp journal-half reconciliation
|
||||||
|
|
||||||
|
omp's `/tmp/trade_audit.json` captured **30 pairs / 60 trades**
|
||||||
|
(CH-only, his sandbox had no DNS to BingX VST). This audit's venue pull covers the
|
||||||
|
**full** suppressed=0 set: **155 joined + 25 unmatched =
|
||||||
|
180 BRIDGE rows** across 20 assets. omp's 30-pair sample is a subset;
|
||||||
|
the venue half (this file) completes the friction picture he could not reach.
|
||||||
|
|
||||||
|
omp also flagged [{'trade_id': '251f6da1', 'asset': 'XLMUSDT', 'side': 'SHORT', 'action': 'ENTER', 'ref_px': 0.1889, 'size': 2646.9, 'lev': 1, 'ts': '02:34:56', 'note': 'Orphan - no EXIT after 06:00'}, {'trade_id': 'b6e41f9f', 'asset': 'XLMUSDT', 'side': 'SHORT', 'action': 'ENTER', 'ref_px': 0.1894, 'size': 2639.92, 'lev': 1, 'ts': '02:58:40', 'note': 'Orphan - no EXIT after 06:00'}, {'trade_id': 'eecc4a99', 'asset': 'TRXUSDT', 'side': 'SHORT', 'action': 'ENTER', 'ref_px': 0.3313, 'size': 1509.21, 'lev': 1, 'ts': '03:21:48', 'note': 'Orphan - no EXIT after 06:00'}, {'trade_id': '470a0f04', 'asset': 'ADAUSDT', 'side': 'SHORT', 'action': 'ENTER', 'ref_px': 0.1677, 'size': 24093.86, 'lev': 2, 'ts': '03:55:18', 'note': 'Orphan - no EXIT after 06:00'}, {'trade_id': 'ffa2b868', 'asset': 'ENJUSDT', 'side': 'SHORT', 'action': 'ENTER', 'ref_px': 0.0287, 'size': 17422.07, 'lev': 1, 'ts': '04:07:29', 'note': 'Orphan - no EXIT after 06:00'}, {'trade_id': '5bc7bb43', 'asset': 'LINKUSDT', 'side': 'SHORT', 'action': 'ENTER', 'ref_px': 7.877, 'size': 63.48, 'lev': 1, 'ts': '04:32:32', 'note': 'Orphan - no EXIT after 06:00'}, {'trade_id': 'f30156ae', 'asset': 'BNBUSDT', 'side': 'SHORT', 'action': 'ENTER', 'ref_px': 576.2, 'size': 13.87, 'lev': 3, 'ts': '05:00:18', 'note': 'Orphan - no EXIT after 06:00'}, {'trade_id': 'cfb627d8', 'asset': 'LTCUSDT', 'side': 'SHORT', 'action': 'ENTER', 'ref_px': 44.51, 'size': 11.23, 'lev': 1, 'ts': '05:50:24', 'note': 'Orphan - no EXIT after 06:00'}, {'trade_id': '86c15f47', 'asset': 'TRXUSDT', 'side': 'SHORT', 'action': 'ENTER', 'ref_px': 0.3317, 'size': 1507.39, 'lev': 1, 'ts': '05:27:34', 'note': 'Orphan - no EXIT after 06:00'}] pre-06:00 ENTER orphans with no EXIT
|
||||||
|
after 06:00 — out of this audit's window, carried as context.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 7. Findings
|
||||||
|
|
||||||
|
1. **NET P&L = -758.48 USDT** (gross -565.35 − fees 198.16 + funding +5.03) across 75 paired SHORT trades.
|
||||||
|
2. **Fees are the dominant drag:** 198.16 USDT vs gross -565.35. Implied ~10 bps (5 bps taker × 2 sides) — matches BingX taker schedule. Friction is fee-dominated, not slippage-dominated.
|
||||||
|
3. **Adverse entry slippage:** enter-slip bps are systematically negative (filled below decision price) on many assets — e.g. up to −37 bps. Decision price (journal ref_px) is the promotion-bridge *intent* price, not the achieved fill. Worth a follow-up on fill-quality vs decision price.
|
||||||
|
4. **25 bridged intents have no venue fill** — reconciliation gap between bridge emission and exchange execution. Needs root-cause (submission failure vs reject vs timing).
|
||||||
|
5. **No shared order id** between UV (`u-...`) and BingX (`p-e-/p-x-`) — join is heuristic (symbol+side+qty+time). A durable bridge→venue correlation id should be added to `exec_journal` (store BingX `orderId`) for exact reconciliation.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Generated from verified venue + ClickHouse pulls. Repro:
|
||||||
|
`python3 /mnt/vp-PASS10/audit_venue_half.py && python3 /mnt/vp-PASS10/audit_analyze.py`.
|
||||||
|
Read-only; VST sandbox only.*
|
||||||
Reference in New Issue
Block a user