From 3ea8d50cd74574d31eeb29e1a5ec163ae9078e13 Mon Sep 17 00:00:00 2001 From: injoyai <1113655791@qq.com> Date: Tue, 18 Mar 2025 16:50:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B4=E7=90=86=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- example/PullKline/main.go | 8 +++++++- extend/pull-kline.go | 34 ++++++++++++++++++++++++---------- 2 files changed, 31 insertions(+), 11 deletions(-) diff --git a/example/PullKline/main.go b/example/PullKline/main.go index 24e1106..cd205f5 100644 --- a/example/PullKline/main.go +++ b/example/PullKline/main.go @@ -5,6 +5,7 @@ import ( "github.com/injoyai/logs" "github.com/injoyai/tdx" "github.com/injoyai/tdx/extend" + "path/filepath" ) func main() { @@ -12,7 +13,12 @@ func main() { m, err := tdx.NewManage(nil) logs.PanicErr(err) - err = extend.NewPullKline([]string{"sz000001"}, []string{"year"}, "./data/database/kline", 1).Run(context.Background(), m) + err = extend.NewPullKline( + []string{"sz000001"}, + []string{extend.Year}, + filepath.Join(tdx.DefaultDatabaseDir, "kline"), + 1, + ).Run(context.Background(), m) logs.PanicErr(err) } diff --git a/extend/pull-kline.go b/extend/pull-kline.go index fb9c8e2..ae1a85b 100644 --- a/extend/pull-kline.go +++ b/extend/pull-kline.go @@ -13,18 +13,32 @@ import ( "xorm.io/xorm" ) +const ( + Minute = "minute" + Minute5 = "5minute" + Minute15 = "15minute" + Minute30 = "30minute" + Hour = "hour" + Day = "day" + Week = "week" + Month = "month" + Quarter = "quarter" + Year = "year" +) + var ( + AllKlineType = []string{Minute, Minute5, Minute15, Minute30, Hour, Day, Week, Month, Quarter, Year} KlineTableMap = map[string]*KlineTable{ - "minute": NewKlineTable("MinuteKline", func(c *tdx.Client) KlineHandler { return c.GetKlineMinuteUntil }), - "5minute": NewKlineTable("Minute5Kline", func(c *tdx.Client) KlineHandler { return c.GetKline5MinuteUntil }), - "15minute": NewKlineTable("Minute15Kline", func(c *tdx.Client) KlineHandler { return c.GetKline15MinuteUntil }), - "30minute": NewKlineTable("Minute30Kline", func(c *tdx.Client) KlineHandler { return c.GetKline30MinuteUntil }), - "hour": NewKlineTable("HourKline", func(c *tdx.Client) KlineHandler { return c.GetKlineHourUntil }), - "day": NewKlineTable("DayKline", func(c *tdx.Client) KlineHandler { return c.GetKlineDayUntil }), - "week": NewKlineTable("WeekKline", func(c *tdx.Client) KlineHandler { return c.GetKlineWeekUntil }), - "month": NewKlineTable("MonthKline", func(c *tdx.Client) KlineHandler { return c.GetKlineMonthUntil }), - "quarter": NewKlineTable("QuarterKline", func(c *tdx.Client) KlineHandler { return c.GetKlineQuarterUntil }), - "year": NewKlineTable("YearKline", func(c *tdx.Client) KlineHandler { return c.GetKlineYearUntil }), + Minute: NewKlineTable("MinuteKline", func(c *tdx.Client) KlineHandler { return c.GetKlineMinuteUntil }), + Minute5: NewKlineTable("Minute5Kline", func(c *tdx.Client) KlineHandler { return c.GetKline5MinuteUntil }), + Minute15: NewKlineTable("Minute15Kline", func(c *tdx.Client) KlineHandler { return c.GetKline15MinuteUntil }), + Minute30: NewKlineTable("Minute30Kline", func(c *tdx.Client) KlineHandler { return c.GetKline30MinuteUntil }), + Hour: NewKlineTable("HourKline", func(c *tdx.Client) KlineHandler { return c.GetKlineHourUntil }), + Day: NewKlineTable("DayKline", func(c *tdx.Client) KlineHandler { return c.GetKlineDayUntil }), + Week: NewKlineTable("WeekKline", func(c *tdx.Client) KlineHandler { return c.GetKlineWeekUntil }), + Month: NewKlineTable("MonthKline", func(c *tdx.Client) KlineHandler { return c.GetKlineMonthUntil }), + Quarter: NewKlineTable("QuarterKline", func(c *tdx.Client) KlineHandler { return c.GetKlineQuarterUntil }), + Year: NewKlineTable("YearKline", func(c *tdx.Client) KlineHandler { return c.GetKlineYearUntil }), } )