// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.1
// 	protoc        v5.27.2
// source: kdata.proto

package orm

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

// KlineBlock represents a block of k-line data
type KlineBlock struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Start         int64                  `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"`              // start timestamp in milliseconds
	End           int64                  `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"`                  // end timestamp in milliseconds
	ExsId         int32                  `protobuf:"varint,3,opt,name=exs_id,json=exsId,proto3" json:"exs_id,omitempty"` // exchange symbol id
	Timeframe     string                 `protobuf:"bytes,4,opt,name=timeframe,proto3" json:"timeframe,omitempty"`       // timeframe like "1m", "5m", etc.
	Open          []float64              `protobuf:"fixed64,5,rep,packed,name=open,proto3" json:"open,omitempty"`        // open prices
	High          []float64              `protobuf:"fixed64,6,rep,packed,name=high,proto3" json:"high,omitempty"`        // high prices
	Low           []float64              `protobuf:"fixed64,7,rep,packed,name=low,proto3" json:"low,omitempty"`          // low prices
	Close         []float64              `protobuf:"fixed64,8,rep,packed,name=close,proto3" json:"close,omitempty"`      // close prices
	Volume        []float64              `protobuf:"fixed64,9,rep,packed,name=volume,proto3" json:"volume,omitempty"`    // volumes
	Info          []float64              `protobuf:"fixed64,10,rep,packed,name=info,proto3" json:"info,omitempty"`       // additional info (used for china market)
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *KlineBlock) Reset() {
	*x = KlineBlock{}
	mi := &file_kdata_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *KlineBlock) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*KlineBlock) ProtoMessage() {}

func (x *KlineBlock) ProtoReflect() protoreflect.Message {
	mi := &file_kdata_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use KlineBlock.ProtoReflect.Descriptor instead.
func (*KlineBlock) Descriptor() ([]byte, []int) {
	return file_kdata_proto_rawDescGZIP(), []int{0}
}

func (x *KlineBlock) GetStart() int64 {
	if x != nil {
		return x.Start
	}
	return 0
}

func (x *KlineBlock) GetEnd() int64 {
	if x != nil {
		return x.End
	}
	return 0
}

func (x *KlineBlock) GetExsId() int32 {
	if x != nil {
		return x.ExsId
	}
	return 0
}

func (x *KlineBlock) GetTimeframe() string {
	if x != nil {
		return x.Timeframe
	}
	return ""
}

func (x *KlineBlock) GetOpen() []float64 {
	if x != nil {
		return x.Open
	}
	return nil
}

func (x *KlineBlock) GetHigh() []float64 {
	if x != nil {
		return x.High
	}
	return nil
}

func (x *KlineBlock) GetLow() []float64 {
	if x != nil {
		return x.Low
	}
	return nil
}

func (x *KlineBlock) GetClose() []float64 {
	if x != nil {
		return x.Close
	}
	return nil
}

func (x *KlineBlock) GetVolume() []float64 {
	if x != nil {
		return x.Volume
	}
	return nil
}

func (x *KlineBlock) GetInfo() []float64 {
	if x != nil {
		return x.Info
	}
	return nil
}

// AdjFactorBlock represents adjustment factors data
type AdjFactorBlock struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Sid           int32                  `protobuf:"varint,1,opt,name=sid,proto3" json:"sid,omitempty"`                        // symbol id
	SubId         int32                  `protobuf:"varint,2,opt,name=sub_id,json=subId,proto3" json:"sub_id,omitempty"`       // sub symbol id
	StartMs       int64                  `protobuf:"varint,3,opt,name=start_ms,json=startMs,proto3" json:"start_ms,omitempty"` // start timestamp in milliseconds
	Factor        float64                `protobuf:"fixed64,4,opt,name=factor,proto3" json:"factor,omitempty"`                 // adjustment factor
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AdjFactorBlock) Reset() {
	*x = AdjFactorBlock{}
	mi := &file_kdata_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AdjFactorBlock) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AdjFactorBlock) ProtoMessage() {}

func (x *AdjFactorBlock) ProtoReflect() protoreflect.Message {
	mi := &file_kdata_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AdjFactorBlock.ProtoReflect.Descriptor instead.
func (*AdjFactorBlock) Descriptor() ([]byte, []int) {
	return file_kdata_proto_rawDescGZIP(), []int{1}
}

func (x *AdjFactorBlock) GetSid() int32 {
	if x != nil {
		return x.Sid
	}
	return 0
}

func (x *AdjFactorBlock) GetSubId() int32 {
	if x != nil {
		return x.SubId
	}
	return 0
}

func (x *AdjFactorBlock) GetStartMs() int64 {
	if x != nil {
		return x.StartMs
	}
	return 0
}

func (x *AdjFactorBlock) GetFactor() float64 {
	if x != nil {
		return x.Factor
	}
	return 0
}

// CalendarBlock represents calendar data
type CalendarBlock struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Name          string                 `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // calendar name
	Times         []int64                `protobuf:"varint,2,rep,packed,name=times,proto3" json:"times,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CalendarBlock) Reset() {
	*x = CalendarBlock{}
	mi := &file_kdata_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *CalendarBlock) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CalendarBlock) ProtoMessage() {}

func (x *CalendarBlock) ProtoReflect() protoreflect.Message {
	mi := &file_kdata_proto_msgTypes[2]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CalendarBlock.ProtoReflect.Descriptor instead.
func (*CalendarBlock) Descriptor() ([]byte, []int) {
	return file_kdata_proto_rawDescGZIP(), []int{2}
}

func (x *CalendarBlock) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CalendarBlock) GetTimes() []int64 {
	if x != nil {
		return x.Times
	}
	return nil
}

type ExSymbolBlock struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            int32                  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Exchange      string                 `protobuf:"bytes,2,opt,name=exchange,proto3" json:"exchange,omitempty"`
	ExgReal       string                 `protobuf:"bytes,3,opt,name=exg_real,json=exgReal,proto3" json:"exg_real,omitempty"`
	Market        string                 `protobuf:"bytes,4,opt,name=market,proto3" json:"market,omitempty"`
	Symbol        string                 `protobuf:"bytes,5,opt,name=symbol,proto3" json:"symbol,omitempty"`
	ListMs        int64                  `protobuf:"varint,6,opt,name=list_ms,json=listMs,proto3" json:"list_ms,omitempty"`
	DelistMs      int64                  `protobuf:"varint,7,opt,name=delist_ms,json=delistMs,proto3" json:"delist_ms,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ExSymbolBlock) Reset() {
	*x = ExSymbolBlock{}
	mi := &file_kdata_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ExSymbolBlock) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExSymbolBlock) ProtoMessage() {}

func (x *ExSymbolBlock) ProtoReflect() protoreflect.Message {
	mi := &file_kdata_proto_msgTypes[3]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExSymbolBlock.ProtoReflect.Descriptor instead.
func (*ExSymbolBlock) Descriptor() ([]byte, []int) {
	return file_kdata_proto_rawDescGZIP(), []int{3}
}

func (x *ExSymbolBlock) GetId() int32 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *ExSymbolBlock) GetExchange() string {
	if x != nil {
		return x.Exchange
	}
	return ""
}

func (x *ExSymbolBlock) GetExgReal() string {
	if x != nil {
		return x.ExgReal
	}
	return ""
}

func (x *ExSymbolBlock) GetMarket() string {
	if x != nil {
		return x.Market
	}
	return ""
}

func (x *ExSymbolBlock) GetSymbol() string {
	if x != nil {
		return x.Symbol
	}
	return ""
}

func (x *ExSymbolBlock) GetListMs() int64 {
	if x != nil {
		return x.ListMs
	}
	return 0
}

func (x *ExSymbolBlock) GetDelistMs() int64 {
	if x != nil {
		return x.DelistMs
	}
	return 0
}

type KHoleBlock struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Sid           int32                  `protobuf:"varint,1,opt,name=sid,proto3" json:"sid,omitempty"`
	Timeframe     string                 `protobuf:"bytes,2,opt,name=timeframe,proto3" json:"timeframe,omitempty"`
	Holes         []int64                `protobuf:"varint,3,rep,packed,name=holes,proto3" json:"holes,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *KHoleBlock) Reset() {
	*x = KHoleBlock{}
	mi := &file_kdata_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *KHoleBlock) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*KHoleBlock) ProtoMessage() {}

func (x *KHoleBlock) ProtoReflect() protoreflect.Message {
	mi := &file_kdata_proto_msgTypes[4]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use KHoleBlock.ProtoReflect.Descriptor instead.
func (*KHoleBlock) Descriptor() ([]byte, []int) {
	return file_kdata_proto_rawDescGZIP(), []int{4}
}

func (x *KHoleBlock) GetSid() int32 {
	if x != nil {
		return x.Sid
	}
	return 0
}

func (x *KHoleBlock) GetTimeframe() string {
	if x != nil {
		return x.Timeframe
	}
	return ""
}

func (x *KHoleBlock) GetHoles() []int64 {
	if x != nil {
		return x.Holes
	}
	return nil
}

type EXInfo struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Symbols       []*ExSymbolBlock       `protobuf:"bytes,1,rep,name=symbols,proto3" json:"symbols,omitempty"`
	KHoles        []*KHoleBlock          `protobuf:"bytes,2,rep,name=kHoles,proto3" json:"kHoles,omitempty"`
	AdjFactors    []*AdjFactorBlock      `protobuf:"bytes,3,rep,name=adjFactors,proto3" json:"adjFactors,omitempty"`
	Calendars     []*CalendarBlock       `protobuf:"bytes,4,rep,name=calendars,proto3" json:"calendars,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *EXInfo) Reset() {
	*x = EXInfo{}
	mi := &file_kdata_proto_msgTypes[5]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *EXInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*EXInfo) ProtoMessage() {}

func (x *EXInfo) ProtoReflect() protoreflect.Message {
	mi := &file_kdata_proto_msgTypes[5]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use EXInfo.ProtoReflect.Descriptor instead.
func (*EXInfo) Descriptor() ([]byte, []int) {
	return file_kdata_proto_rawDescGZIP(), []int{5}
}

func (x *EXInfo) GetSymbols() []*ExSymbolBlock {
	if x != nil {
		return x.Symbols
	}
	return nil
}

func (x *EXInfo) GetKHoles() []*KHoleBlock {
	if x != nil {
		return x.KHoles
	}
	return nil
}

func (x *EXInfo) GetAdjFactors() []*AdjFactorBlock {
	if x != nil {
		return x.AdjFactors
	}
	return nil
}

func (x *EXInfo) GetCalendars() []*CalendarBlock {
	if x != nil {
		return x.Calendars
	}
	return nil
}

var File_kdata_proto protoreflect.FileDescriptor

var file_kdata_proto_rawDesc = []byte{
	0x0a, 0x0b, 0x6b, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x03, 0x6f,
	0x72, 0x6d, 0x22, 0xe5, 0x01, 0x0a, 0x0a, 0x4b, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x6c, 0x6f, 0x63,
	0x6b, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x78, 0x73,
	0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x65, 0x78, 0x73, 0x49, 0x64,
	0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x12,
	0x0a, 0x04, 0x6f, 0x70, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x03, 0x28, 0x01, 0x52, 0x04, 0x6f, 0x70,
	0x65, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x69, 0x67, 0x68, 0x18, 0x06, 0x20, 0x03, 0x28, 0x01,
	0x52, 0x04, 0x68, 0x69, 0x67, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x6f, 0x77, 0x18, 0x07, 0x20,
	0x03, 0x28, 0x01, 0x52, 0x03, 0x6c, 0x6f, 0x77, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6c, 0x6f, 0x73,
	0x65, 0x18, 0x08, 0x20, 0x03, 0x28, 0x01, 0x52, 0x05, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x12, 0x16,
	0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x01, 0x52, 0x06,
	0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x0a,
	0x20, 0x03, 0x28, 0x01, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x6c, 0x0a, 0x0e, 0x41, 0x64,
	0x6a, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x10, 0x0a, 0x03,
	0x73, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x73, 0x69, 0x64, 0x12, 0x15,
	0x0a, 0x06, 0x73, 0x75, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
	0x73, 0x75, 0x62, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x6d,
	0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x73,
	0x12, 0x16, 0x0a, 0x06, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01,
	0x52, 0x06, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x22, 0x39, 0x0a, 0x0d, 0x43, 0x61, 0x6c, 0x65,
	0x6e, 0x64, 0x61, 0x72, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a,
	0x05, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x05, 0x74, 0x69,
	0x6d, 0x65, 0x73, 0x22, 0xbc, 0x01, 0x0a, 0x0d, 0x45, 0x78, 0x53, 0x79, 0x6d, 0x62, 0x6f, 0x6c,
	0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67,
	0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x78, 0x67, 0x5f, 0x72, 0x65, 0x61, 0x6c, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x78, 0x67, 0x52, 0x65, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06,
	0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x61,
	0x72, 0x6b, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x12, 0x17, 0x0a, 0x07,
	0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6c,
	0x69, 0x73, 0x74, 0x4d, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x5f,
	0x6d, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x64, 0x65, 0x6c, 0x69, 0x73, 0x74,
	0x4d, 0x73, 0x22, 0x52, 0x0a, 0x0a, 0x4b, 0x48, 0x6f, 0x6c, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
	0x12, 0x10, 0x0a, 0x03, 0x73, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x73,
	0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x66, 0x72, 0x61, 0x6d, 0x65,
	0x12, 0x14, 0x0a, 0x05, 0x68, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x03, 0x52,
	0x05, 0x68, 0x6f, 0x6c, 0x65, 0x73, 0x22, 0xc6, 0x01, 0x0a, 0x06, 0x45, 0x58, 0x49, 0x6e, 0x66,
	0x6f, 0x12, 0x2c, 0x0a, 0x07, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6f, 0x72, 0x6d, 0x2e, 0x45, 0x78, 0x53, 0x79, 0x6d, 0x62, 0x6f,
	0x6c, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x07, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x12,
	0x27, 0x0a, 0x06, 0x6b, 0x48, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x0f, 0x2e, 0x6f, 0x72, 0x6d, 0x2e, 0x4b, 0x48, 0x6f, 0x6c, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
	0x52, 0x06, 0x6b, 0x48, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x0a, 0x61, 0x64, 0x6a, 0x46,
	0x61, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6f,
	0x72, 0x6d, 0x2e, 0x41, 0x64, 0x6a, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x6c, 0x6f, 0x63,
	0x6b, 0x52, 0x0a, 0x61, 0x64, 0x6a, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x30, 0x0a,
	0x09, 0x63, 0x61, 0x6c, 0x65, 0x6e, 0x64, 0x61, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x12, 0x2e, 0x6f, 0x72, 0x6d, 0x2e, 0x43, 0x61, 0x6c, 0x65, 0x6e, 0x64, 0x61, 0x72, 0x42,
	0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x09, 0x63, 0x61, 0x6c, 0x65, 0x6e, 0x64, 0x61, 0x72, 0x73, 0x42,
	0x03, 0x5a, 0x01, 0x2e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_kdata_proto_rawDescOnce sync.Once
	file_kdata_proto_rawDescData = file_kdata_proto_rawDesc
)

func file_kdata_proto_rawDescGZIP() []byte {
	file_kdata_proto_rawDescOnce.Do(func() {
		file_kdata_proto_rawDescData = protoimpl.X.CompressGZIP(file_kdata_proto_rawDescData)
	})
	return file_kdata_proto_rawDescData
}

var file_kdata_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
var file_kdata_proto_goTypes = []any{
	(*KlineBlock)(nil),     // 0: orm.KlineBlock
	(*AdjFactorBlock)(nil), // 1: orm.AdjFactorBlock
	(*CalendarBlock)(nil),  // 2: orm.CalendarBlock
	(*ExSymbolBlock)(nil),  // 3: orm.ExSymbolBlock
	(*KHoleBlock)(nil),     // 4: orm.KHoleBlock
	(*EXInfo)(nil),         // 5: orm.EXInfo
}
var file_kdata_proto_depIdxs = []int32{
	3, // 0: orm.EXInfo.symbols:type_name -> orm.ExSymbolBlock
	4, // 1: orm.EXInfo.kHoles:type_name -> orm.KHoleBlock
	1, // 2: orm.EXInfo.adjFactors:type_name -> orm.AdjFactorBlock
	2, // 3: orm.EXInfo.calendars:type_name -> orm.CalendarBlock
	4, // [4:4] is the sub-list for method output_type
	4, // [4:4] is the sub-list for method input_type
	4, // [4:4] is the sub-list for extension type_name
	4, // [4:4] is the sub-list for extension extendee
	0, // [0:4] is the sub-list for field type_name
}

func init() { file_kdata_proto_init() }
func file_kdata_proto_init() {
	if File_kdata_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_kdata_proto_rawDesc,
			NumEnums:      0,
			NumMessages:   6,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_kdata_proto_goTypes,
		DependencyIndexes: file_kdata_proto_depIdxs,
		MessageInfos:      file_kdata_proto_msgTypes,
	}.Build()
	File_kdata_proto = out.File
	file_kdata_proto_rawDesc = nil
	file_kdata_proto_goTypes = nil
	file_kdata_proto_depIdxs = nil
}
