exchange.GetDepth
获取当前设置的交易对、合约代码所对应的现货或合约的Depth结构,即订单簿数据。
exchange.GetDepth()
exchange.GetDepth(symbol)示例
-
获取当前交易对的深度,打印卖二价。
javascriptfunction main(){ var depth = exchange.GetDepth() if (!depth || depth.Asks.length < 2) return // 获取失败时为null var price = depth.Asks[1].Price Log("卖二价", price) }pythondef main(): depth = exchange.GetDepth() if not depth or len(depth["Asks"]) < 2: return price = depth["Asks"][1]["Price"] Log("卖二价", price)rustfn main() { let Ok(depth) = exchange.GetDepth(None) else { return }; if depth.Asks.len() < 2 { return; } let price = depth.Asks[1].Price; Log!("卖二价", price); } -
当配置的
exchange对象为期货交易所对象时,使用symbol参数请求指定品种(期货品种)的订单簿数据。javascriptfunction main() { // BTC的U本位永续合约 var depth = exchange.GetDepth("BTC_USDT.swap") Log(depth) }pythondef main(): depth = exchange.GetDepth("BTC_USDT.swap") Log(depth)rustfn main() { // BTC的U本位永续合约 let depth = exchange.GetDepth("BTC_USDT.swap").unwrap(); Log!(depth); }
返回值
| 类型 | 描述 |
| 成功时返回 |
参数
| 名称 | 类型 | 必填 | 描述 |
symbol | string | 否 | 品种代码,例如现货交易所对象上的 |
参考
备注
回测系统中,使用模拟级 Tick回测时,exchange.GetDepth()函数返回数据的各档位均为模拟值。
回测系统中,使用实盘级 Tick回测时,exchange.GetDepth()函数返回的数据为秒级别的深度快照。
链上兑换类交易所(例如Uniswap、Jupiter)没有订单簿,返回的深度由逐档递增规模的询价推算:每档的Amount为该档新增的基础币数量,Price为该档的边际成交价。询价规模与请求次数见交易所页,例如Uniswap、Jupiter。