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"`
|
||
}
|