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 } }