GDAXKit
用于访问
入门指南
Gdax.com是“最值得信赖的数字资产交易所”,并为一些最大的
文档
查看API文档以了解公开数据的概述和更多信息。
注意:GDAXKit目前只提供公开数据,不允许访问需要身份验证的端点或WebSocket。
用法
根据您要访问的数据,您将使用两个客户端对象之一。使用MarketClient
访问市场数据的快照,以及使用SocketClient
访问订单和交易的实时市场数据更新。
市场数据API(MarketClient)
// Initialize a client
let client = MarketClient()
// Call one of the public endpoint methods
client.products { products, result in
// Check if our call was a success or failure
switch result {
case .success(_):
// Do stuff with the provided products
case .failure(let error):
// Handle the error
}
}
要获取历史数据,您可以使用GDAXKit提供的DateRange
和Granularity
枚举。
let pid = "BTC-USD"
let range = DateRange.fiveDays
let granularity = Granularity.oneHour
client.historic(pid:pid, range:range, granularity:granularity) { candles, result in
switch result {
case .success(_):
// Do stuff with the provided candles
case .failure(let error):
// Handle error
}
}
所有MarketClient
方法都接受一个闭包来处理返回的对象。
MarketClient的公共接口
套接字消息推送(SocketClient)
要访问WebSocket的实时更新,请遵循SocketClientDelegate协议方法。
extension MyViewController: SocketClientDelegate {
func socketClientConnected() { /.../ }
func socketClientDisconnected() { /.../ }
func socketClientTick(_ tick:SocketTicker)
func socketClientHeartbeat(_ heartbeat:Heartbeat)
func socketClientError(_ error:SocketError)
}
SocketClientDelegate方法生命周期
当客户端首次成功连接到位于wss://ws-feed.gdax.com的socket时,将调用socketClientConnected
方法。
根据被调用的SocketClient方法,将开始调用socketClientTick
或socketClientHeartbeat
代理方法。每当套接字遇到错误时,将调用socketClientError
方法。
最后,当与套接字的连接结束时,将调用socketClientDisconnected
方法。
初始化Websocket通信
要开始socket流,通过传入我们的代理对象初始化SocketClient。一旦初始化了SocketClient,并实现了上述的SocketClientDelegate方法,调用其中一个启动流的方法。
class MyViewController: UIViewController {
let socketClient:SocketClient!
override func viewDidLoad() {
// Use Products you want data for, from client.loadProducts
let products = /... Product array from MarketClient .../
// Initialize SocketClient and pass self as delegate
socketClient = SocketClient(delegate:self)
// Start Our ticker stream
socketClient.startTickerStream(products: products)
// Our delegate methods will now get called as necessary
}
}
SocketClient的公共接口
- startTickerStream (Tickers Socket)
- startHeartbeatStream (Heartbeat Socket)
安装
使用GDAXKit最简单的方法是使用CocoaPods。
使用CocoaPods安装
要在Xcode项目中使用CocoaPods集成GDAXKit,请在您的Podfile
中指定它。
platform :ios, '11.0'
target 'TargetName' do
pod 'GDAXKit'
end
然后,运行以下命令
$ pod install
预发布版本
这是GDAXKit的一个预发布版本,尽管它很稳定并且应该在前面的所有情况下都能正常工作,但可能会添加、更改以及可能破坏某些功能。
许可证
GDAXKit在MIT协议下发布