Pharos
Market

语法

python
ticker = exchange.GetTicker()

返回值

返回一个字典,包含以下字段:

字段类型说明
Highfloat最高价
Lowfloat最低价
Sellfloat卖一价(ask)
Buyfloat买一价(bid)
Lastfloat最新成交价
Volumefloat成交量
Timeint时间戳(毫秒)

示例

基础用法

python
# 获取当前行情
ticker = exchange.GetTicker()
Log("最新价:", ticker['Last'])
Log("买一价:", ticker['Buy'])
Log("卖一价:", ticker['Sell'])
Log("24h最高:", ticker['High'])
Log("24h最低:", ticker['Low'])
Log("成交量:", ticker['Volume'])

计算买卖价差

python
ticker = exchange.GetTicker()
spread = ticker['Sell'] - ticker['Buy']
spread_percent = (spread / ticker['Last']) * 100

Log(f"价差: {spread:.2f}")
Log(f"价差百分比: {spread_percent:.4f}%")

监控价格变化

python
last_price = 0

while True:
    ticker = exchange.GetTicker()
    current_price = ticker['Last']
    
    if last_price > 0:
        change = current_price - last_price
        change_percent = (change / last_price) * 100
        Log(f"价格变化: {change:+.2f} ({change_percent:+.2f}%)")
    
    last_price = current_price
    Sleep(5000)  # 5秒检查一次

获取多个交易所的行情

python
# 假设配置了多个交易所
for i in range(len(exchanges)):
    ticker = exchanges[i].GetTicker()
    name = exchanges[i].GetName()
    Log(f"{name} 最新价: {ticker['Last']}")

注意事项

  1. 频率限制:不同交易所对 API 调用频率有限制,建议间隔至少 1 秒
  2. 数据延迟:Ticker 数据可能有轻微延迟(通常小于 1 秒)
  3. 精度处理:价格和数量可能包含很多小数位,建议格式化显示
  4. 异常处理:网络问题可能导致调用失败,建议添加 try-except
python
try:
    ticker = exchange.GetTicker()
    Log("获取成功:", ticker['Last'])
except Exception as e:
    Log("获取Ticker失败:", str(e))

相关方法