78 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package serverinit
 | 
						|
 | 
						|
import (
 | 
						|
	"go-admin/config"
 | 
						|
	"go-admin/models"
 | 
						|
	"go-admin/pkg/httputils"
 | 
						|
	"go-admin/services/binanceservice"
 | 
						|
	"go-admin/services/futureservice"
 | 
						|
 | 
						|
	log "github.com/go-admin-team/go-admin-core/logger"
 | 
						|
	"github.com/robfig/cron/v3"
 | 
						|
)
 | 
						|
 | 
						|
func FuturesInit() error {
 | 
						|
	httputils.InitProxy(config.ExtConfig.ProxyUrl)
 | 
						|
 | 
						|
	//FutFundingRate()
 | 
						|
 | 
						|
	log.Info("初始化交易对-开始")
 | 
						|
	data := make(map[string]models.TradeSet, 0)
 | 
						|
	err := binanceservice.GetAndReloadSymbols(&data)
 | 
						|
 | 
						|
	if err != nil {
 | 
						|
		return err
 | 
						|
	}
 | 
						|
	log.Info("初始化交易对-结束")
 | 
						|
 | 
						|
	log.Info("初始化24h行情-开始")
 | 
						|
	_, err = binanceservice.InitSymbolsTicker24h(&data)
 | 
						|
 | 
						|
	if err != nil {
 | 
						|
		return err
 | 
						|
	}
 | 
						|
	log.Info("初始化24h行情-结束")
 | 
						|
 | 
						|
	log.Info("订阅合约-开始")
 | 
						|
	go futureservice.StartBinanceProWs("normal")
 | 
						|
 | 
						|
	//定时任务
 | 
						|
	RunJobs()
 | 
						|
	return nil
 | 
						|
}
 | 
						|
 | 
						|
/*
 | 
						|
缓存合约资金费率
 | 
						|
*/
 | 
						|
func FutFundingRate() error {
 | 
						|
	log.Info("初始化 合约-费率 开始")
 | 
						|
	_, err := binanceservice.GetPremiumIndex()
 | 
						|
 | 
						|
	if err != nil {
 | 
						|
		log.Error("初始化 合约-费率 失败:", err)
 | 
						|
		return err
 | 
						|
	}
 | 
						|
 | 
						|
	log.Info("初始化 合约-费率 成功")
 | 
						|
	return nil
 | 
						|
}
 | 
						|
 | 
						|
// 定义任务
 | 
						|
func RunJobs() {
 | 
						|
	cronJob := cron.New()
 | 
						|
 | 
						|
	//添加任务
 | 
						|
	//_, err := cronJob.AddFunc("@every 1h", func() {
 | 
						|
	//	FutFundingRate()
 | 
						|
	//})
 | 
						|
	//
 | 
						|
	//if err != nil {
 | 
						|
	//	fmt.Println("添加定时获取资金费率任务失败")
 | 
						|
	//} else {
 | 
						|
	//	fmt.Println("添加定时获取资金费率任务成功")
 | 
						|
	//}
 | 
						|
 | 
						|
	//启动
 | 
						|
	cronJob.Start()
 | 
						|
}
 |