subscribe_sol_price:实时 SOL/USD
一条全局的当前 SOL/USD 价格流,来自链上最深的 SOL/USDC 市场。汇率一变动,服务端就推送 sol_price。它就是 subscribe 用来填充 priceUSD / mcapUSD 的汇率,单独暴露出来方便你自己换算 WSOL 计价的值。
无参数。免费,不计量,不需要 API 密钥。
| 通道 | Socket.IO 事件 |
| 认证 | 无,不需要 API 密钥 |
| 推送 | 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-priceREST 读取,不必保持连接。