feat(core): implement core MEV bot functionality with market scanning and Uniswap V3 pricing
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
@@ -70,7 +70,7 @@ func New(level string, format string, file string) *Logger {
|
||||
logger := log.New(output, "", 0) // No flags, we'll format ourselves
|
||||
|
||||
logLevel := parseLogLevel(level)
|
||||
|
||||
|
||||
return &Logger{
|
||||
logger: logger,
|
||||
level: logLevel,
|
||||
@@ -123,7 +123,7 @@ func (l *Logger) Error(v ...interface{}) {
|
||||
// This always logs regardless of level since opportunities are critical
|
||||
func (l *Logger) Opportunity(txHash, from, to, method, protocol string, amountIn, amountOut, minOut, profitUSD float64, additionalData map[string]interface{}) {
|
||||
timestamp := time.Now().Format("2006/01/02 15:04:05")
|
||||
|
||||
|
||||
message := fmt.Sprintf(`%s [OPPORTUNITY] 🎯 ARBITRAGE OPPORTUNITY DETECTED
|
||||
├── Transaction: %s
|
||||
├── From: %s → To: %s
|
||||
@@ -135,7 +135,7 @@ func (l *Logger) Opportunity(txHash, from, to, method, protocol string, amountIn
|
||||
└── Additional Data: %v`,
|
||||
timestamp, txHash, from, to, method, protocol,
|
||||
amountIn, amountOut, minOut, profitUSD, additionalData)
|
||||
|
||||
|
||||
l.logger.Println(message)
|
||||
}
|
||||
|
||||
@@ -144,4 +144,4 @@ func (l *Logger) OpportunitySimple(v ...interface{}) {
|
||||
timestamp := time.Now().Format("2006/01/02 15:04:05")
|
||||
message := fmt.Sprint(v...)
|
||||
l.logger.Printf("%s [OPPORTUNITY] %s", timestamp, message)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -242,4 +242,4 @@ func TestErrorWithAllLevels(t *testing.T) {
|
||||
assert.Contains(t, output, "ERROR:")
|
||||
assert.Contains(t, output, "test error message")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user