mirror of
https://github.com/laoxong/nofx.git
synced 2026-06-04 09:58:22 +08:00
Dev backtest (#1134)
This commit is contained in:
@@ -6,10 +6,12 @@ import (
|
||||
"log"
|
||||
"nofx/api"
|
||||
"nofx/auth"
|
||||
"nofx/backtest"
|
||||
"nofx/config"
|
||||
"nofx/crypto"
|
||||
"nofx/manager"
|
||||
"nofx/market"
|
||||
"nofx/mcp"
|
||||
"nofx/pool"
|
||||
"os"
|
||||
"os/signal"
|
||||
@@ -178,6 +180,7 @@ func main() {
|
||||
log.Fatalf("❌ 初始化数据库失败: %v", err)
|
||||
}
|
||||
defer database.Close()
|
||||
backtest.UseDatabase(database.Conn())
|
||||
|
||||
// 初始化加密服务
|
||||
log.Printf("🔐 初始化加密服务...")
|
||||
@@ -262,8 +265,18 @@ func main() {
|
||||
log.Printf("✓ 已配置OI Top API")
|
||||
}
|
||||
|
||||
// 创建TraderManager
|
||||
// 创建TraderManager 与 BacktestManager
|
||||
cfgForAI, cfgErr := config.LoadConfig("config.json")
|
||||
if cfgErr != nil {
|
||||
log.Printf("⚠️ 加载config.json用于AI客户端失败: %v", cfgErr)
|
||||
}
|
||||
|
||||
traderManager := manager.NewTraderManager()
|
||||
mcpClient := newSharedMCPClient(cfgForAI)
|
||||
backtestManager := backtest.NewManager(mcpClient)
|
||||
if err := backtestManager.RestoreRuns(); err != nil {
|
||||
log.Printf("⚠️ 恢复历史回测失败: %v", err)
|
||||
}
|
||||
|
||||
// 从数据库加载所有交易员到内存
|
||||
err = traderManager.LoadTradersFromDatabase(database)
|
||||
@@ -338,7 +351,7 @@ func main() {
|
||||
}
|
||||
|
||||
// 创建并启动API服务器
|
||||
apiServer := api.NewServer(traderManager, database, cryptoService, apiPort)
|
||||
apiServer := api.NewServer(traderManager, database, cryptoService, backtestManager, apiPort)
|
||||
go func() {
|
||||
if err := apiServer.Start(); err != nil {
|
||||
log.Printf("❌ API服务器错误: %v", err)
|
||||
@@ -385,3 +398,7 @@ func main() {
|
||||
fmt.Println()
|
||||
fmt.Println("👋 感谢使用AI交易系统!")
|
||||
}
|
||||
|
||||
func newSharedMCPClient(cfg *config.Config) mcp.AIClient {
|
||||
return mcp.NewClient()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user