96 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
		
		
			
		
	
	
			96 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| 
								 | 
							
								package models
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								var (
							 | 
						|||
| 
								 | 
							
									Pre24hrTicker = "24hrTicker" //ticker推送前缀,推送格式:<symbol>@24hrTicker
							 | 
						|||
| 
								 | 
							
									PreTrade      = "trade"      //最新成交推送前缀 <symbol>@trade
							 | 
						|||
| 
								 | 
							
									PreKline      = "kline"      //k线推送前缀 <symbol>@kline_<interval>
							 | 
						|||
| 
								 | 
							
									PreDepth      = "depth"      //深度推送前缀 <symbol>@depth<levels>
							 | 
						|||
| 
								 | 
							
									PreDepth35    = "depth35"    //35深度推送前缀 <symbol>@depth<levels>
							 | 
						|||
| 
								 | 
							
									PreMarkPrice  = "markPrice"  //最新标记价 <symbol>@markPrice
							 | 
						|||
| 
								 | 
							
									TickerArr     = "ticker@arr" //所有24小时行情
							 | 
						|||
| 
								 | 
							
									PreErr        = "err"
							 | 
						|||
| 
								 | 
							
								)
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								type PushFive struct {
							 | 
						|||
| 
								 | 
							
									Type   int        `json:"type"`   //类型
							 | 
						|||
| 
								 | 
							
									Num    string     `json:"num"`    //买卖总数量
							 | 
						|||
| 
								 | 
							
									Symbol string     `json:"symbol"` //交易对,比如BTC-USDT
							 | 
						|||
| 
								 | 
							
									Data   [][]string `json:"data"`   //数据
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								type PushAll struct {
							 | 
						|||
| 
								 | 
							
									Event string     `json:"e"`
							 | 
						|||
| 
								 | 
							
									Data  []WsTicker `json:"data"`
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								type PushKline struct {
							 | 
						|||
| 
								 | 
							
									Type   int        `json:"type"`
							 | 
						|||
| 
								 | 
							
									Symbol string     `json:"symbol"` //交易对,比如BTC-USDT
							 | 
						|||
| 
								 | 
							
									Data   [][]string `json:"data"`
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								type WsWsTickerBase struct {
							 | 
						|||
| 
								 | 
							
									Event  string   `json:"e"`
							 | 
						|||
| 
								 | 
							
									Symbol string   `json:"s"`    //交易对,比如BTC-USDT
							 | 
						|||
| 
								 | 
							
									Data   WsTicker `json:"data"` //
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								// WsTicker 24小时行情推送
							 | 
						|||
| 
								 | 
							
								type WsTicker struct {
							 | 
						|||
| 
								 | 
							
									E           int64  `json:"-"`   //时间戳
							 | 
						|||
| 
								 | 
							
									Symbol      string `json:"s"`   //symbol,BTC-USDT
							 | 
						|||
| 
								 | 
							
									Close       string `json:"c"`   //收盘价格,也是最新价格
							 | 
						|||
| 
								 | 
							
									Open        string `json:"o"`   //开盘价格
							 | 
						|||
| 
								 | 
							
									High        string `json:"h"`   //最高价格
							 | 
						|||
| 
								 | 
							
									Low         string `json:"l"`   //最低价格
							 | 
						|||
| 
								 | 
							
									Volume      string `json:"v"`   //成交量
							 | 
						|||
| 
								 | 
							
									QuoteVolume string `json:"q"`   //成交额
							 | 
						|||
| 
								 | 
							
									Change      string `json:"chg"` //涨幅
							 | 
						|||
| 
								 | 
							
									RatePrice   string `json:"rp"`  //最新价格等于多少usdt
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								type WsBase struct {
							 | 
						|||
| 
								 | 
							
									Event  string      `json:"e"`
							 | 
						|||
| 
								 | 
							
									Symbol string      `json:"s"`    //交易对,比如BTC-USDT
							 | 
						|||
| 
								 | 
							
									Data   interface{} `json:"data"` //
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								type WsTrade struct {
							 | 
						|||
| 
								 | 
							
									Price    string `json:"p"` //成交价格
							 | 
						|||
| 
								 | 
							
									Quantity string `json:"q"` //成交数量
							 | 
						|||
| 
								 | 
							
									DealTime string `json:"t"` //时间撮
							 | 
						|||
| 
								 | 
							
									Market   string `json:"m"` //1是买方主动触发交易,2卖方主动触发交易
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								type BaseKline struct {
							 | 
						|||
| 
								 | 
							
									Event  string  `json:"e"`    //事件
							 | 
						|||
| 
								 | 
							
									Symbol string  `json:"s"`    //交易对,比如BTC-USDT
							 | 
						|||
| 
								 | 
							
									Data   WsKline `json:"data"` //k线数据
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								type WsKline struct {
							 | 
						|||
| 
								 | 
							
									Line        string `json:"i"`    // K线间隔,比如1m
							 | 
						|||
| 
								 | 
							
									LineTime    string `json:"t"`    // k线时间撮
							 | 
						|||
| 
								 | 
							
									Open        string `json:"o"`    // 这根K线期间第一笔成交价
							 | 
						|||
| 
								 | 
							
									Close       string `json:"c"`    // 这根K线期间末一笔成交价
							 | 
						|||
| 
								 | 
							
									High        string `json:"h"`    // 这根K线期间最高成交价
							 | 
						|||
| 
								 | 
							
									Low         string `json:"l"`    // 这根K线期间最低成交价
							 | 
						|||
| 
								 | 
							
									Volume      string `json:"v"`    // 这根K线期间成交量
							 | 
						|||
| 
								 | 
							
									QuoteVolume string `json:"q"`    // 这根K线期间成交额
							 | 
						|||
| 
								 | 
							
									Chg         string `json:"chg"`  // 涨幅
							 | 
						|||
| 
								 | 
							
									Ampl        string `json:"ampl"` // 震幅
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								type WsFive struct {
							 | 
						|||
| 
								 | 
							
									Event  string     `json:"e"`   //事件
							 | 
						|||
| 
								 | 
							
									Symbol string     `json:"s"`   //比如BTC-USDT
							 | 
						|||
| 
								 | 
							
									Bid    [][]string `json:"bid"` //买盘口
							 | 
						|||
| 
								 | 
							
									Ask    [][]string `json:"ask"` //卖盘口
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								type WsMarkPrice struct {
							 | 
						|||
| 
								 | 
							
									Event  string                 `json:"e"`
							 | 
						|||
| 
								 | 
							
									Symbol string                 `json:"s"`
							 | 
						|||
| 
								 | 
							
									Data   map[string]interface{} `json:"data"`
							 | 
						|||
| 
								 | 
							
								}
							 |