subscribe_sol_price —— 实时 SOL/USD
当前 SOL/USD 价格的单一全局流,来自链上最深的 SOL/USDC 市场。每当汇率变动,服务器就发出 sol_price。这与 subscribe 上用来填充 priceUSD / mcapUSD 的汇率相同,单独暴露出来是为了让你自己换算 WSOL 计价的值。
不接受任何参数。免费——从不计量,不需要 API 密钥。
| 通道 | Socket.IO 事件 |
| 认证 | 不需要;你套餐的密钥可提高限额 |
| 发出 | sol_price |
示例
- JavaScript
- Python
import { io } from "socket.io-client";
const socket = io("https://sol.shrine.trade"); // 无需密钥
socket.on("sol_price", ({ priceUSD }) => {
console.log(`SOL is $${priceUSD}`);
});
socket.emit("subscribe_sol_price", (ack) => {
// ack.snapshot 是当前值(尚未知时为 null)
console.log("subscribed:", ack);
});
// 之后要停止:socket.emit("unsubscribe_sol_price");
import socketio
sio = socketio.Client()
@sio.on("sol_price")
def on_price(p):
print("SOL is $", p["priceUSD"])
sio.connect("https://sol.shrine.trade") # 无需密钥
sio.emit("subscribe_sol_price", callback=lambda ack: print("subscribed:", ack))
sio.wait()
响应 —— sol_price
{
"priceUSD": 182.45,
"time": 1779812600
}
priceUSD 是每 SOL 的美元价;time 是这次更新的 unix 秒。订阅时会立即发送当前快照(同时也作为 ack.snapshot 返回),这样你不用等下一次变动就有值。
试一试
说明
- 一个全局值——没有
mint/pool参数。 - 免费:订阅和每一个
sol_price事件都从不计费。 - 用它自己把任何 WSOL 计价的
price换算成美元,或者直接从subscribe读priceUSD/mcapUSD。 - 只需要取一次汇率?改用
GET /sol-price一次性 REST 读取,不用一直挂着 socket。
LimitsFree 2 socketsLite 5 socketsDeveloper 50 socketsSee plans →