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
This commit is contained in:
jackyu66git
2026-05-03 23:34:01 +08:00
parent 68c0a342a6
commit 5d6d9352f3
5 changed files with 11 additions and 11 deletions
+6 -6
View File
@@ -10,10 +10,10 @@ const (
ExBitget = "Bitget"
)
// Maker fee rates (%) — for limit orders on trading exchanges
var makerFees = map[string]float64{
ExHyperLiquid: 0.015,
ExBitget: 0.020, // standard maker
// Taker fee rates (%) — for IOC market orders on trading exchanges
var takerFees = map[string]float64{
ExHyperLiquid: 0.045,
ExBitget: 0.060,
}
// TickerCoins defines all coins we monitor.
@@ -59,9 +59,9 @@ func ScanBGHL(store *PriceStore) []*ArbOpportunity {
}
// BG->HL: buy cheap at Bitget, sell expensive at HyperLiquid
profitBG := netProfit(bgP, hlP, makerFees[ExBitget], makerFees[ExHyperLiquid])
profitBG := netProfit(bgP, hlP, takerFees[ExBitget], takerFees[ExHyperLiquid])
// HL->BG: buy cheap at HyperLiquid, sell expensive at Bitget
profitHL := netProfit(hlP, bgP, makerFees[ExHyperLiquid], makerFees[ExBitget])
profitHL := netProfit(hlP, bgP, takerFees[ExHyperLiquid], takerFees[ExBitget])
grossBG := (hlP - bgP) / bgP * 100
grossHL := (bgP - hlP) / hlP * 100