Files
Veyra/internal/model/market.go
T
Blizzard 92329ddce2
Checks / verify (push) Failing after 9m52s
feat: 完成模拟交易闭环、App 与 A 股行情接入
统一单入口 Go 工程与前端依赖目录,增加后台供应商配置、候选审核、计划预算、成交冲正、持仓复盘和站内通知。接入策略版本、Python 回测、可配置 A 股公开行情及 zap 文件轮转日志,补充迁移、契约与验证。
2026-10-08 22:58:52 +08:00

43 lines
1.6 KiB
Go

package model
import "time"
type Instrument struct {
ID string `db:"id" json:"id"`
Symbol string `db:"symbol" json:"symbol"`
Exchange string `db:"exchange" json:"exchange"`
Name string `db:"name" json:"name"`
Price string `json:"price"`
PriceCents int64 `db:"price_cents" json:"-"`
ObservedAt time.Time `db:"observed_at" json:"observed_at"`
ReceivedAt time.Time `db:"received_at" json:"received_at"`
SourceID string `db:"source_id" json:"source_id"`
SourceVersion int64 `db:"source_version" json:"source_version"`
}
func (Instrument) TableName() string { return "veyra_instrument" }
type MarketSync struct {
ID string `db:"id" json:"id"`
SourceID string `db:"source_id" json:"source_id"`
SourceVersion int64 `db:"source_version" json:"source_version"`
InstrumentCount int `db:"instrument_count" json:"instrument_count"`
Status string `db:"status" json:"status"`
Message string `db:"message" json:"message"`
StartedAt time.Time `db:"started_at" json:"started_at"`
FinishedAt time.Time `db:"finished_at" json:"finished_at"`
}
func (MarketSync) TableName() string { return "veyra_market_sync" }
type MarketHistory struct {
Symbol string `json:"symbol"`
Exchange string `json:"exchange"`
Name string `json:"name"`
Source string `json:"source"`
SourceVersion int64 `json:"source_version"`
Adjustment string `json:"adjustment"`
ReceivedAt time.Time `json:"received_at"`
Bars []HistoricalBar `json:"bars"`
}