优化: 把period和mdura参数合二为一,防止出现不必要的问题

This commit is contained in:
zhangkun9038@dingtalk.com 2025-01-12 20:29:29 +08:00
parent cef2dcdcf4
commit 8436f0482b

27
main.go
View File

@ -169,7 +169,7 @@ func ShowSysTime(cr *core.Core) {
// onceCount每次获取这个coin几个当前周期的candle数据 // onceCount每次获取这个coin几个当前周期的candle数据
// range: 随机的范围从0开始到range个周期作为查询的after值也就是随机n个周期去取之前的记录,对于2D5D等数据可以用来补全数据, range值越大随机散点的范围越大, 越失焦 // range: 随机的范围从0开始到range个周期作为查询的after值也就是随机n个周期去取之前的记录,对于2D5D等数据可以用来补全数据, range值越大随机散点的范围越大, 越失焦
func LoopAllCoinsList(period int64, delay int64, mdura int, barPeriod string, onceCount int, rge int) { func LoopAllCoinsList(delay int64, mdura int, barPeriod string, onceCount int, rge int) {
cr := core.Core{} cr := core.Core{}
cr.Init() cr.Init()
allScoreChan := make(chan []string) allScoreChan := make(chan []string)
@ -179,8 +179,7 @@ func LoopAllCoinsList(period int64, delay int64, mdura int, barPeriod string, on
go func() { go func() {
for { for {
tsi := time.Now().Unix() tsi := time.Now().Unix()
//logrus.Info("tsi, period, delay, tsi%(period): ", tsi, period, delay, tsi%(period)) if tsi%(int64(mdura)) != delay {
if tsi%(period) != delay {
time.Sleep(1 * time.Second) time.Sleep(1 * time.Second)
continue continue
} }
@ -255,57 +254,57 @@ func main() {
// 全员5m // 全员5m
go func() { go func() {
logrus.Info("LoopAllCoinsList - 5m") logrus.Info("LoopAllCoinsList - 5m")
LoopAllCoinsList(6, 0, 180, "5m", 20, 50) // 3分钟内完成获取近4小时数据 LoopAllCoinsList(0, 180, "5m", 20, 50)
}() }()
// 全员15m candle // 全员15m candle
go func() { go func() {
logrus.Info("LoopAllCoinsList - 15m") logrus.Info("LoopAllCoinsList - 15m")
LoopAllCoinsList(19, 90, 360, "15m", 24, 100) // 6分钟内完成获取近24小时数据 LoopAllCoinsList(90, 360, "15m", 24, 100)
}() }()
// 全员30m candle // 全员30m candle
go func() { go func() {
logrus.Info("LoopAllCoinsList - 30m") logrus.Info("LoopAllCoinsList - 30m")
LoopAllCoinsList(25, 0, 600, "30m", 48, 150) // 10分钟内完成获取近2天数据 LoopAllCoinsList(0, 600, "30m", 48, 150)
}() }()
// 全员1H candle // 全员1H candle
go func() { go func() {
logrus.Info("LoopAllCoinsList - 1H") logrus.Info("LoopAllCoinsList - 1H")
LoopAllCoinsList(38, 0, 900, "1H", 72, 200) // 15分钟内完成获取近3天数据 LoopAllCoinsList(0, 900, "1H", 72, 200)
}() }()
// 全员2H candle // 全员2H candle
go func() { go func() {
logrus.Info("LoopAllCoinsList - 2H") logrus.Info("LoopAllCoinsList - 2H")
LoopAllCoinsList(41, 0, 1200, "2H", 90, 250) // 20分钟内完成获取近7天数据 LoopAllCoinsList(0, 1200, "2H", 90, 250)
}() }()
// 全员4小时candle // 全员4小时candle
go func() { go func() {
logrus.Info("LoopAllCoinsList - 4H") logrus.Info("LoopAllCoinsList - 4H")
LoopAllCoinsList(69, 0, 1500, "4H", 120, 300) // 25分钟内完成获取近20天数据 LoopAllCoinsList(0, 1500, "4H", 120, 300)
}() }()
// 全员6小时candle // 全员6小时candle
go func() { go func() {
logrus.Info("LoopAllCoinsList - 6H") logrus.Info("LoopAllCoinsList - 6H")
LoopAllCoinsList(72, 0, 1800, "6H", 140, 350) // 30分钟内完成获取近30天数据 LoopAllCoinsList(0, 1800, "6H", 140, 350)
}() }()
// 全员12小时candle // 全员12小时candle
go func() { go func() {
logrus.Info("LoopAllCoinsList - 12H") logrus.Info("LoopAllCoinsList - 12H")
LoopAllCoinsList(89, 0, 2100, "12H", 160, 400) // 35分钟内完成获取近2个月数据 LoopAllCoinsList(0, 2100, "12H", 160, 400)
}() }()
// 全员1Day candle & maX // 全员1Day candle & maX
go func() { go func() {
logrus.Info("LoopAllCoinsList - 1D") logrus.Info("LoopAllCoinsList - 1D")
LoopAllCoinsList(94, 4, 2400, "1D", 180, 500) // 40分钟内完成获取近6个月数据 LoopAllCoinsList(4, 2400, "1D", 180, 500)
}() }()
// 全员2Day candle & maX // 全员2Day candle & maX
go func() { go func() {
logrus.Info("LoopAllCoinsList - 2D") logrus.Info("LoopAllCoinsList - 2D")
LoopAllCoinsList(192, 4, 3000, "2D", 200, 600) // 50分钟内完成获取近1年数据 LoopAllCoinsList(4, 3000, "2D", 200, 600)
}() }()
// 全员5Day candle & maX // 全员5Day candle & maX
go func() { go func() {
logrus.Info("LoopAllCoinsList - 5D") logrus.Info("LoopAllCoinsList - 5D")
LoopAllCoinsList(320, 4, 3600, "5D", 250, 700) // 60分钟内完成获取近2年数据 LoopAllCoinsList(4, 3600, "5D", 250, 700)
}() }()
go func() { go func() {
LoopSaveCandle(&cr) LoopSaveCandle(&cr)