Commit Graph
5 Commits
Author SHA1 Message Date
jackyu66git ce204abc81 fix: remove HL-delisted coins from scanner (BNT/CATI/CYBER/ILV/LISTA/OGN/STG) + PIXEL
Root cause: HL WS uses allMids (all coins), BG WS subscribes per-coin.
Delisted coins had stale HL prices showing huge fake spreads (~200%).
Monitor tried entry → BG buy succeeds, HL sell fails (Trading is halted)
→ orphan position on BG accumulated across restarts.

Fix:
- Set HL="" for BNT, CATI, CYBER, ILV, LISTA, OGN, STG, PIXEL
- Add guard in ScanBGHL to skip coins where BG or HL is empty
- Same guard in SpreadWindowTracker.Tick
2026-05-04 23:12:41 +08:00
jackyu66git 5d6d9352f3 fix: use taker fees (BG 0.06%, HL 0.045%) + threshold 0.25%
All IOC market orders incur taker fees, not maker fees. Previous
makerFees (BG 0.02%, HL 0.015%) caused 0.10% threshold trades to
actually lose 0.11% per round trip.

Changes:
- scanner.go: makerFees → takerFees (BG 0.060, HL 0.045)
- dashboard.go: makerFees → takerFees
- types.go: makerFees → takerFees
- trader.go: makerFees → takerFees
- config.json: trade_threshold 0.1 → 0.25
2026-05-03 23:34:01 +08:00
jackyu66git 5cfb6afa55 Fix SpreadWindow: use netProfit() for fee accuracy, track real peak
- Replace manual spread-fee calc with netProfit() call — matches
  scanner's exact fee model (round-trip 0.07%)
- Each direction gets correct buy/sell fee pairing
- Add PeakNet field to record true max during window, not close-time value
- Log peak net with +/- sign instead of approx symbol
2026-05-03 20:28:27 +08:00
jackyu66git 8ae85750b5 Add SpreadWindowTracker to measure opportunity duration
- New SpreadWindowTracker in types.go watches BG↔HL spread for all
  tracked coins, both directions
- Logs duration when spread stays above trade threshold then converges
- Wired into main loop after each scan tick
- Filters sub-100ms windows as noise
2026-05-03 20:24:36 +08:00
jackyu66git 719f0a061d Initial commit 2026-05-03 16:54:36 +08:00