money/helpers.go

50 lines
1.0 KiB
Go

package main
import (
"os"
"strings"
)
// assetTicker: estrae solo il ticker (USDT, ETH, BTC) da "ETH.USDT-0x..." o "ETH.ETH"
func assetTicker(label string) string {
parts := strings.Split(label, ".")
if len(parts) != 2 {
return label
}
right := parts[1]
if i := strings.Index(right, "-"); i > 0 {
right = right[:i]
}
return right
}
// humanAction: rende leggibile la direzione dello swap
func humanAction(dec Decision, cfg Config) string {
fromTicker := assetTicker(cfg.ThorFrom)
toTicker := assetTicker(cfg.ThorTo)
switch dec.Action {
case "SWAP_AB":
return fromTicker + " -> " + toTicker
case "SWAP_BA":
return toTicker + " -> " + fromTicker
default:
return "HOLD"
}
}
// manualModeEnabled: true se MANUAL_MODE è impostata (default true)
func manualModeEnabled() bool {
v := strings.ToLower(strings.TrimSpace(os.Getenv("MANUAL_MODE")))
if v == "" {
return true
}
switch v {
case "1", "true", "yes", "y", "on":
return true
case "0", "false", "no", "n", "off":
return false
default:
return true
}
}