Documentation
¶
Index ¶
Constants ¶
View Source
const DateLayout = "2006-01-02"
Variables ¶
This section is empty.
Functions ¶
func NewDateOutOfRangeError ¶
func NewDateOutOfRangeError() error
func NewInvalidDateFormatError ¶
func NewInvalidDateFormatError() error
func NewInvalidDateRangeError ¶
func NewInvalidDateRangeError() error
func NewInvalidOffsetError ¶
func NewInvalidOffsetError() error
func NewUnsupportedCalendarError ¶
func NewUnsupportedCalendarError() error
Types ¶
type Calendar ¶
type Calendar interface {
// IsTradeDay reports whether day is a trading day.
// day must use the format "2006-01-02", for example "2020-01-01".
IsTradeDay(day string) (bool, error)
// PrevTradeDay returns the trading day immediately before day.
// day must use the format "2006-01-02", for example "2020-01-01".
PrevTradeDay(day string) (string, error)
// NextTradeDay returns the trading day immediately after day.
// day must use the format "2006-01-02", for example "2020-01-01".
NextTradeDay(day string) (string, error)
// OffsetTradeDay returns the trading day offset from day by offset trading days.
// day must use the format "2006-01-02", for example "2020-01-01".
OffsetTradeDay(day string, offset int) (string, error)
// ListTradeDays returns all trading days in the inclusive range [start, end].
// start and end must use the format "2006-01-02", for example "2020-01-01".
ListTradeDays(start, end string) ([]string, error)
}
Calendar provides trading-day queries for a specific market. All date inputs must use the format "2006-01-02", for example "2020-01-01".
type CalendarDate ¶
type CalendarDate struct {
// contains filtered or unexported fields
}
CalendarDate 是日历内部使用的日期载体。 它同时保留规范化后的日期字符串和解析后的 time.Time, 方便后续业务逻辑按需直接取用。
func NewCalendarDateFromTime ¶
func NewCalendarDateFromTime(day time.Time) *CalendarDate
func (*CalendarDate) AddDays ¶
func (day *CalendarDate) AddDays(days int) *CalendarDate
AddDays 返回增加或减少指定天数后的新日期。
func (*CalendarDate) Date ¶
func (day *CalendarDate) Date() Date
func (*CalendarDate) IsSupportedYear ¶
func (day *CalendarDate) IsSupportedYear(minYear, maxYear int) bool
func (*CalendarDate) IsWeekend ¶
func (day *CalendarDate) IsWeekend() bool
func (*CalendarDate) Time ¶
func (day *CalendarDate) Time() time.Time
type Date ¶
type Date string
Date 表示一个日期字符串,固定格式为 2006-01-02。
func (Date) ToCalendarDate ¶
func (day Date) ToCalendarDate(location *time.Location) (*CalendarDate, error)
ToCalendarDate 对日期做预检查并转换为内部日期对象。
type Error ¶
type Error string
Error 是本项目唯一公开错误类型。
func (Error) IsDateOutOfRange ¶
func (Error) IsInvalidDateFormat ¶
func (Error) IsInvalidDateRange ¶
func (Error) IsInvalidOffset ¶
func (Error) IsUnsupportedCalendar ¶
Click to show internal directories.
Click to hide internal directories.