marketModels.go 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. package models
  2. import "time"
  3. // Market 市场表
  4. type Market struct {
  5. Marketid uint32 `json:"marketid" xorm:"'MARKETID'" binding:"required"` // 市场ID正常5位,前三位固定:两位表示交易模式, 一位表示交易属性(1:收益权,2:所有权) 其它特殊市场:0-系统 1-交割服务 2-账户服务3-履约服务 4-仓单服务 5-积分服务 6-银行服务
  6. Marketname string `json:"marketname" xorm:"'MARKETNAME'"` // 市场名称
  7. Exchareaid uint32 `json:"exchareaid" xorm:"'EXCHAREAID'"` // 所属交易所,可以没有
  8. Markettype uint32 `json:"markettype" xorm:"'MARKETTYPE'"` // 市场类型- 1:非交易服务 2:交易服务
  9. Trademode uint32 `json:"trademode" xorm:"'TRADEMODE'" binding:"required"` // 交易模式 - 10:做市 13:竞价 15:通道交易 16:挂牌点选 17:仓单贸易 18:期权 19:竞拍-降价式 20:竞拍-竞价式 21:竞拍-大宗式 22:受托竞价
  10. Tradeproperty uint32 `json:"tradeproperty" xorm:"'TRADEPROPERTY'" binding:"required"` // 交易属性 - 1:收益权(可做空) 2:所有权(不可做空) 3:期权 4:现货 5:参考行情 6:通道交易 7:币交易 8:场外期权
  11. Openmethod uint32 `json:"openmethod" xorm:"'OPENMETHOD'" binding:"required"` // 开盘模式 - 0 自动 1手动
  12. Reckonpricealgorithm uint32 `json:"reckonpricealgorithm" xorm:"'RECKONPRICEALGORITHM'" binding:"required"` // 结算价算法: 1:最后多少笔成交价加权平均 2:最后多少秒成交价加权平均 3:全天加权平均 4:最后一口价 5.买一价 6.卖一价 7.买一卖一均价 8.外部结算价
  13. Reckonpriceparam uint32 `json:"reckonpriceparam" xorm:"'RECKONPRICEPARAM'"` // 结算价参数
  14. Marketstatus uint32 `json:"marketstatus" xorm:"'MARKETSTATUS'" binding:"required"` // 生效状态(ValidStatus枚举): 1:待生效 2:正常 3:注销
  15. Marketserviceid uint32 `json:"marketserviceid" xorm:"'MARKETSERVICEID'"` // 市场服务ID
  16. Marginformula uint32 `json:"marginformula" xorm:"'MARGINFORMULA'"` // 持仓保证金公式 - 1:双边收 2:净头寸收 3:大小边差异收 4:大边收 5:卖持仓收(仅期权)
  17. Performancetempid int64 `json:"performancetempid" xorm:"'PERFORMANCETEMPID'"` // 履约计划模板ID - 作废
  18. Clearinterval uint32 `json:"clearinterval" xorm:"'CLEARINTERVAL'"` // 待开市间隔(交易市场开盘前多久发市场待开市信号(单位分钟))
  19. Matchermode uint32 `json:"matchermode" xorm:"'MATCHERMODE'"` // 指定对手模式[仓单贸易模式专用] - 1:任意对手
  20. Reckonorder uint32 `json:"reckonorder" xorm:"'RECKONORDER'"` // 结算顺序
  21. Canpreexercise uint32 `json:"canpreexercise" xorm:"'CANPREEXERCISE'"` // [期权]是否可预申报- 0:否 1:是
  22. Cangoodsexercise uint32 `json:"cangoodsexercise" xorm:"'CANGOODSEXERCISE'"` // [期权]是否可现货行权- 0:否 1:是
  23. Goodstype uint32 `json:"goodstype" xorm:"'GOODSTYPE'"` // 商品类型 - 1:交易商品 2:仓单商品
  24. Roleprioritytype uint32 `json:"roleprioritytype" xorm:"'ROLEPRIORITYTYPE'"` // 角色优先类型 - 1:无 2:报价商优先 3:非报价商优先 [16:挂牌点选]
  25. Isrecordsource uint32 `json:"isrecordsource" xorm:"'ISRECORDSOURCE'"` // 是否记录成交源 - 0:不记录 1:记录 [所有权]
  26. Marginformula2 uint32 `json:"marginformula2" xorm:"'MARGINFORMULA2'"` // 持仓保证金公式(仅受托竞价) - 1:双边收 2:净头寸收 3:大小边差异收 4:大边收 5:卖持仓收(仅期权)
  27. Haswr uint32 `json:"haswr" xorm:"'HASWR'"` // [竞拍]是否需要仓单 - 0:不需要 1:需要-作废
  28. Premiumquotemode uint32 `json:"premiumquotemode" xorm:"'PREMIUMQUOTEMODE'"` // 权利金报价方式 - 1:自动 2:手动
  29. Cangoodsexercisetype uint32 `json:"cangoodsexercisetype" xorm:"'CANGOODSEXERCISETYPE'"` // 可现货行权期权类型 - 1:认购 2认沽 3:认购认沽 [CanGoodsExercise = 1时可设置]
  30. Canacceptquote uint32 `json:"canacceptquote" xorm:"'CANACCEPTQUOTE'"` // 确认行权是否接收行情 - 0:不接受 1:接受 [可确认权的挂牌期权市场可配置]
  31. Canmutistage uint32 `json:"canmutistage" xorm:"'CANMUTISTAGE'"` // 是否可多段运行 – 0:不可 1:可 [挂牌期权]
  32. Isdeductmargin uint32 `json:"isdeductmargin" xorm:"'ISDEDUCTMARGIN'"` // 竞拍违约是否扣除保证金[竞拍-降价式] - 0:不扣 1:扣除
  33. Canmanualquotestrike uint32 `json:"canmanualquotestrike" xorm:"'CANMANUALQUOTESTRIKE'"` // 是否可手动报行权价- 0:否 1:是 [期权]
  34. Tradetype uint32 `json:"tradetype" xorm:"'TRADETYPE'"` // 下单方式[通道交易] - 1:直接转单 2:净头寸下单
  35. Pendingflag uint32 `json:"pendingflag" xorm:"'PENDINGFLAG'"` // 待开市时间标识[通道交易-对冲] - 0:当日 1:上日
  36. Pendingtime string `json:"pendingtime" xorm:"'PENDINGTIME'"` // 待开市时间[通道交易-对冲](HH:mm)
  37. Reckontime string `json:"reckontime" xorm:"'RECKONTIME'"` // 结算时间[通道交易-对冲](HH:mm)
  38. Hastradecredit uint32 `json:"hastradecredit" xorm:"'HASTRADECREDIT'"` // 是否交易授信[做市收益权] - 0:不授信 1:授信
  39. Contracttmp string `json:"contracttmp" xorm:"'CONTRACTTMP'"` // 合同模板[荷兰式][竞价式][仓单贸易]
  40. Hasrebate uint32 `json:"hasrebate" xorm:"'HASREBATE'"` // 是否返利[竞价式] 0:不返,1:返利 -- 根据系统参数088显示或隐藏
  41. Rebateratio float64 `json:"rebateratio" xorm:"'REBATERATIO'"` // 返利比率[竞价式]
  42. Otcuserid uint64 `json:"otcuserid" xorm:"'OTCUSERID'"` // 场外期权做市商[场外期权]
  43. Outersynctime string `json:"outersynctime" xorm:"'OUTERSYNCTIME'"` // 外部同步时间点(h24:mi:ss)[场外期权]
  44. Auctionwrtype uint32 `json:"auctionwrtype" xorm:"'AUCTIONWRTYPE'"` // 竞拍仓单类型 - 1:无仓单 2:有仓单 3;有无仓单均可
  45. Isreleasemargin uint32 `json:"isreleasemargin" xorm:"'ISRELEASEMARGIN'"` // 成交参与保证金是否释放[竞价式] - 0:不释放 1释放
  46. Selllistingauditflag uint32 `json:"selllistingauditflag" xorm:"'SELLLISTINGAUDITFLAG'"` // 卖挂牌是否需要审核(仓单贸易) - 0:不需要 1:需要
  47. Trademarkettype uint32 `json:"trademarkettype" xorm:"'TRADEMARKETTYPE'"` // 交易市场类型 - 1:合约市场 2:外部市场 3:仓单市场
  48. }
  49. // TableName is MARKET
  50. func (Market) TableName() string {
  51. return "MARKET"
  52. }
  53. // Goodsgroup 商品组表 - 品种(通道交易\场外期权)
  54. type Goodsgroup struct {
  55. Goodsgroupid int64 `json:"goodsgroupid" xorm:"'GOODSGROUPID'" binding:"required"` // 商品组ID(自增ID)
  56. Goodsgroupname string `json:"goodsgroupname" xorm:"'GOODSGROUPNAME'" binding:"required"` // 商品组名称
  57. Goodsgroupstatus int64 `json:"goodsgroupstatus" xorm:"'GOODSGROUPSTATUS'" binding:"required"` // 商品组状态 - 1:正常 2:注销
  58. Marketid int64 `json:"marketid" xorm:"'MARKETID'" binding:"required"` // 所属市场ID
  59. Createtime time.Time `json:"createtime" xorm:"'CREATETIME'"` // 创建时间
  60. Creatorid int64 `json:"creatorid" xorm:"'CREATORID'"` // 创建人
  61. Modifytime time.Time `json:"modifytime" xorm:"'MODIFYTIME'"` // 修改时间
  62. Modifierid int64 `json:"modifierid" xorm:"'MODIFIERID'"` // 修改人
  63. Quotesourcegroupid int64 `json:"quotesourcegroupid" xorm:"'QUOTESOURCEGROUPID'"` // 所属行情源分组ID[参考行情市场用\通道交易]
  64. Outergroupcode string `json:"outergroupcode" xorm:"'OUTERGROUPCODE'"` // 外部商品组代码[通道交易]
  65. Canshort int64 `json:"canshort" xorm:"'CANSHORT'"` // 是否允许做空[通道交易] - 0:不能做空 1:可以做空
  66. Exexchangeid int64 `json:"exexchangeid" xorm:"'EXEXCHANGEID'"` // 外部交易所ID[通道交易]
  67. Currencyid int64 `json:"currencyid" xorm:"'CURRENCYID'"` // 报价货币ID
  68. Goodunitid int64 `json:"goodunitid" xorm:"'GOODUNITID'"` // 报价单位ID
  69. Agreeunit float64 `json:"agreeunit" xorm:"'AGREEUNIT'"` // 合约单位
  70. Decimalplace int64 `json:"decimalplace" xorm:"'DECIMALPLACE'"` // 报价小数位
  71. Quoteminunit int64 `json:"quoteminunit" xorm:"'QUOTEMINUNIT'"` // 行情最小变动单位 [整数,报价小数位一起使用]
  72. Innerdealmode int64 `json:"innerdealmode" xorm:"'INNERDEALMODE'"` // 内部成交方式[通道交易] - 1:净头寸 2:开平 3:平今
  73. Outerdealmode int64 `json:"outerdealmode" xorm:"'OUTERDEALMODE'"` // 外部成交方式[通道交易]- 1:净头寸 2:开平 3:平今
  74. Syncgoodsqty int64 `json:"syncgoodsqty" xorm:"'SYNCGOODSQTY'"` // 同步合约数[通道交易-投资管理用] - 0表示不限
  75. Closepricemode int64 `json:"closepricemode" xorm:"'CLOSEPRICEMODE'"` // 强平价格方式 - 1:市价 2:最新价 3:涨跌停(未实现)
  76. Closepriceparam float64 `json:"closepriceparam" xorm:"'CLOSEPRICEPARAM'"` // 强平最新价浮动比例 - 方式为2时使用
  77. Qtydecimalplace int64 `json:"qtydecimalplace" xorm:"'QTYDECIMALPLACE'"` // 成交量小数位
  78. Exercisetype int64 `json:"exercisetype" xorm:"'EXERCISETYPE'"` // 行权类型[场外期权]-1:欧式期权 2:美式期权
  79. Premiumdecimalplace int64 `json:"premiumdecimalplace" xorm:"'PREMIUMDECIMALPLACE'"` // 权利金小数位[场外期权]
  80. Premiumspreadalgorithm int64 `json:"premiumspreadalgorithm" xorm:"'PREMIUMSPREADALGORITHM'"` // 权利金点差方式[场外期权] 1:比率 2:固定
  81. Premiumspreadvalue float64 `json:"premiumspreadvalue" xorm:"'PREMIUMSPREADVALUE'"` // 权利金点差值[场外期权]
  82. Isbuylimited int64 `json:"isbuylimited" xorm:"'ISBUYLIMITED'"` // 是否限制建仓量 - 0:不限制 1:限制
  83. Quotegear int64 `json:"quotegear" xorm:"'QUOTEGEAR'"` // 行情档位(1-10)
  84. Quoterid int64 `json:"quoterid" xorm:"'QUOTERID'"` // 报价商ID[场外期权]
  85. }
  86. // TableName is GOODSGROUP
  87. func (Goodsgroup) TableName() string {
  88. return "GOODSGROUP"
  89. }
  90. // Externalexchange 外部交易所表
  91. type Externalexchange struct {
  92. Autoid uint64 `json:"autoid" xorm:"'AUTOID'" binding:"required"` // AutoID - SEQ_EXTERNALEXCHANGE
  93. Exexchangecode string `json:"exexchangecode" xorm:"'EXEXCHANGECODE'"` // 外部交易所代码
  94. Exexchangename string `json:"exexchangename" xorm:"'EXEXCHANGENAME'"` // 外部交易所名称(简称)
  95. Updatetime time.Time `json:"updatetime" xorm:"'UPDATETIME'"` // 更新时间
  96. Quotegear uint32 `json:"quotegear" xorm:"'QUOTEGEAR'"` // 行情档位(1-10)
  97. Showbrokerflag uint32 `json:"showbrokerflag" xorm:"'SHOWBROKERFLAG'"` // 是否显示买卖经纪盘 - 0:不显示 1:显示
  98. Exchangefullname string `json:"exchangefullname" xorm:"'EXCHANGEFULLNAME'"` // 外部交易所全称
  99. Ismarketprice uint32 `json:"ismarketprice" xorm:"'ISMARKETPRICE'"` // 是否支持市价 - 0:不支持 1:支持
  100. }
  101. // TableName is EXTERNALEXCHANGE
  102. func (Externalexchange) TableName() string {
  103. return "EXTERNALEXCHANGE"
  104. }