mirror of
https://github.com/NoFxAiOS/nofx.git
synced 2025-12-06 13:54:41 +08:00
Expose the default mainstream currency settings to the configuration file
This commit is contained in:
@@ -60,6 +60,16 @@
|
||||
"altcoin_leverage": 5
|
||||
},
|
||||
"use_default_coins": true,
|
||||
"default_coins": [
|
||||
"BTCUSDT",
|
||||
"ETHUSDT",
|
||||
"SOLUSDT",
|
||||
"BNBUSDT",
|
||||
"XRPUSDT",
|
||||
"DOGEUSDT",
|
||||
"ADAUSDT",
|
||||
"HYPEUSDT",
|
||||
],
|
||||
"coin_pool_api_url": "",
|
||||
"oi_top_api_url": "",
|
||||
"api_server_port": 8080,
|
||||
|
||||
@@ -52,6 +52,7 @@ type LeverageConfig struct {
|
||||
type Config struct {
|
||||
Traders []TraderConfig `json:"traders"`
|
||||
UseDefaultCoins bool `json:"use_default_coins"` // 是否使用默认主流币种列表
|
||||
DefaultCoins []string `json:"default_coins"` // 默认主流币种池
|
||||
CoinPoolAPIURL string `json:"coin_pool_api_url"`
|
||||
OITopAPIURL string `json:"oi_top_api_url"`
|
||||
APIServerPort int `json:"api_server_port"`
|
||||
@@ -78,6 +79,20 @@ func LoadConfig(filename string) (*Config, error) {
|
||||
config.UseDefaultCoins = true
|
||||
}
|
||||
|
||||
// 设置默认币种池
|
||||
if len(config.DefaultCoins) == 0 {
|
||||
config.DefaultCoins = []string{
|
||||
"BTCUSDT",
|
||||
"ETHUSDT",
|
||||
"SOLUSDT",
|
||||
"BNBUSDT",
|
||||
"XRPUSDT",
|
||||
"DOGEUSDT",
|
||||
"ADAUSDT",
|
||||
"HYPEUSDT",
|
||||
}
|
||||
}
|
||||
|
||||
// 验证配置
|
||||
if err := config.Validate(); err != nil {
|
||||
return nil, fmt.Errorf("配置验证失败: %w", err)
|
||||
|
||||
5
main.go
5
main.go
@@ -34,10 +34,13 @@ func main() {
|
||||
log.Printf("✓ 配置加载成功,共%d个trader参赛", len(cfg.Traders))
|
||||
fmt.Println()
|
||||
|
||||
// 设置默认主流币种列表
|
||||
pool.SetDefaultCoins(cfg.DefaultCoins)
|
||||
|
||||
// 设置是否使用默认主流币种
|
||||
pool.SetUseDefaultCoins(cfg.UseDefaultCoins)
|
||||
if cfg.UseDefaultCoins {
|
||||
log.Printf("✓ 已启用默认主流币种列表(BTC、ETH、SOL、BNB、XRP、DOGE、ADA、HYPE)")
|
||||
log.Printf("✓ 已启用默认主流币种列表(共%d个币种): %v", len(cfg.DefaultCoins), cfg.DefaultCoins)
|
||||
}
|
||||
|
||||
// 设置币种池API URL
|
||||
|
||||
@@ -12,7 +12,7 @@ import (
|
||||
"time"
|
||||
)
|
||||
|
||||
// defaultMainstreamCoins 默认主流币种池(当AI500和OI Top都失败时使用)
|
||||
// defaultMainstreamCoins 默认主流币种池(从配置文件读取)
|
||||
var defaultMainstreamCoins = []string{
|
||||
"BTCUSDT",
|
||||
"ETHUSDT",
|
||||
@@ -83,6 +83,14 @@ func SetUseDefaultCoins(useDefault bool) {
|
||||
coinPoolConfig.UseDefaultCoins = useDefault
|
||||
}
|
||||
|
||||
// SetDefaultCoins 设置默认主流币种列表
|
||||
func SetDefaultCoins(coins []string) {
|
||||
if len(coins) > 0 {
|
||||
defaultMainstreamCoins = coins
|
||||
log.Printf("✓ 已设置默认币种池(共%d个币种): %v", len(coins), coins)
|
||||
}
|
||||
}
|
||||
|
||||
// GetCoinPool 获取币种池列表(带重试和缓存机制)
|
||||
func GetCoinPool() ([]CoinInfo, error) {
|
||||
// 优先检查是否启用默认币种列表
|
||||
|
||||
Reference in New Issue
Block a user