Market
exchange.GetTrades()
获取交易所最近的成交记录(历史交易)。
语法
python
trades = exchange.GetTrades()返回值
返回一个列表,每个元素是一个字典,包含以下字段:
| 字段 | 类型 | 说明 |
|---|---|---|
| Id | str | 成交ID |
| Time | int | 成交时间戳(毫秒) |
| Price | float | 成交价格 |
| Amount | float | 成交数量 |
| Type | str | 成交类型(buy/sell) |
示例
基础用法
python
trades = exchange.GetTrades()
Log("最近成交记录数:", len(trades))
for trade in trades[-5:]: # 最后5条
Log(f"时间: {trade['Time']}, 价格: {trade['Price']}, 数量: {trade['Amount']}, 类型: {trade['Type']}")分析成交方向
python
trades = exchange.GetTrades()
buy_count = sum(1 for t in trades if t['Type'] == 'buy')
sell_count = sum(1 for t in trades if t['Type'] == 'sell')
Log(f"买入成交: {buy_count}")
Log(f"卖出成交: {sell_count}")
if buy_count > sell_count * 1.5:
Log("主动买入较多,市场偏多")
elif sell_count > buy_count * 1.5:
Log("主动卖出较多,市场偏空")计算成交量加权平均价
python
trades = exchange.GetTrades()
total_volume = 0
total_value = 0
for trade in trades:
total_volume += trade['Amount']
total_value += trade['Price'] * trade['Amount']
vwap = total_value / total_volume if total_volume > 0 else 0
Log(f"成交量加权平均价 (VWAP): {vwap:.2f}")检测大额成交
python
def detect_large_trades(trades, threshold=5.0):
"""检测大额成交"""
large_trades = [t for t in trades if t['Amount'] >= threshold]
if large_trades:
Log(f"检测到 {len(large_trades)} 笔大额成交:")
for trade in large_trades[-3:]:
Log(f" {trade['Type'].upper()} {trade['Amount']:.2f} @ {trade['Price']:.2f}")
trades = exchange.GetTrades()
detect_large_trades(trades, threshold=5.0)注意事项
- 数据数量:通常返回最近 50-100 条成交记录
- 时间顺序:成交记录按时间升序排列,最新的在列表末尾
- 更新频率:建议至少间隔 1 秒调用一次
Polymarket 说明
⚠️ Polymarket 实现调用 CLOB 鉴权接口
/data/trades,返回的是本账户在该标的上的成交,不是全市场公开成交流。
python
trades = exchange.GetTrades()
trades = exchange.GetTrades(symbol) # symbol 格式 {slug}_USDC.{outcome}| 字段 | Polymarket 下的含义 |
|---|---|
| Id | 成交 ID 为 UUID,转换整数失败,通常为 0 |
| Time | 当前实现读取的时间字段不存在,通常为查询时的本地时间,不代表真实成交时间 |
| Price | 成交价(USDC / 份) |
| Amount | 成交份数 |
| Type | buy / sell |
需要真实成交时间、交易哈希时请用 exchange.IO("GetActivity");需要持仓均价时用 GetPosition() 的 Price。
相关方法
- GetTicker - 获取 Ticker 行情
- GetDepth - 获取订单簿深度
- GetRecords - 获取K线数据