Robinhood Chain 股票代幣:用一把 API key 讀取乘數、持有人與每日活動
讀懂股票代幣的公司行為乘數:uiMultiplier 採用 18 位定點數,1e18 代表 1.0,實際股數按原始代幣餘額乘以乘數再除以 1e18 換算,也可用鏈上輔助函式讀取換算後的實際股數。
資料來自公開的鏈上記錄與智慧合約狀態,僅供參考,不構成投資建議。股票代幣在部分司法管轄區受到限制。
Robinhood Chain 支援代幣化的現實世界資產(RWA),包括代幣化的美國股票與指數股票型基金(ETF)。標準 ERC-20 代幣的餘額以 1:1 對應,但代幣化股票引入了公司行為乘數,以便在不改變錢包餘額的情況下因應股票分割與股利調整。
本指南說明股票代幣乘數的運作方式、如何將原始代幣餘額換算為底層股數、如何使用 JSON-RPC eth_call 查詢鏈上 uiMultiplier,以及如何透過 BlockVectra Data API 取得每日持有人與轉帳活動。
關於整體網路參數、方法策略與 RPC 設定,請參閱 Robinhood Chain 指南。關於該資料集的完整欄位參考與計算單位(CU)用量模型,請參閱代幣化股票指南。
什麼是股票代幣乘數
Robinhood 股票代幣是由 Robinhood Assets (Jersey) Limited(RHJ)發行的標準 ERC-20 代幣(18 位小數)。為了處理股票分割與股利再投資等公司行為,這些合約實作 ERC-8056(Scaled UI Amount Extension)。
乘數(uiMultiplier)定義了 shares-per-token(每代幣對應股數)比率:
- 精度:
uiMultiplier()以 18 位小數定點數表示,其中1e18等於1.0。 - 初始值:代幣發行時,乘數初始化為
1e18(一個代幣代表一股底層股票)。 - 公司行為:當公司事件發生時(例如正向股票分割或股利再投資),代幣合約會更新
uiMultiplier,並發出UIMultiplierUpdated(uint256 oldMultiplier, uint256 newMultiplier, uint256 effectiveAtTimestamp)事件。
分割期間代幣餘額維持不變
股票代幣不是 rebasing 代幣。在公司行為期間:
- 錢包餘額(
balanceOf(account))與代幣總發行量(totalSupply())維持不變。 - 只有縮放乘數會改變。
例如,若底層股票執行 2 拆 1 的正向分割:
- 持有 10 個代幣的持有人,其
balanceOf仍顯示持有 10 個代幣。 - 合約將
uiMultiplier從1.0(1e18)更新為2.0(2e18)。 - 每個代幣現在代表 2 股底層股票,使持有人擁有相當於 20 股的實際曝險。
將餘額換算為股數
若要計算代幣餘額所代表的底層股數,請使用 ERC-8056 公式:
underlying shares = raw token amount × uiMultiplier ÷ 1e18ERC-8056 代幣合約也在鏈上提供唯讀輔助函式:
balanceOfUI(address account):直接回傳以底層股數表示的帳戶餘額(已依uiMultiplier縮放,18 位小數)。totalSupplyUI():直接回傳以底層股數表示的代幣總供應量。
此外,代幣轉帳會發出 TransferWithScaledUI(address indexed from, address indexed to, uint256 value, uint256 uiValue) 事件,同時記錄原始代幣數量與縮放後的底層股數。
乘數與預言機價格饋送
Robinhood Chain 為每個股票代幣部署專屬的 Chainlink 價格饋送(AggregatorV3Interface):
- Chainlink 價格饋送(
latestRoundData())已納入乘數。它反映一個代幣的完整市場價格(底層股價乘以乘數)。 - 讀取鏈上 Chainlink 預言機的應用程式會直接取得已調整乘數的價格,不得再次套用乘數。
- 鏈下中繼資料也可透過 Robinhood 的 REST 端點
GET https://api.robinhood.com/rhj/assets查詢,其中提供currentMultiplier與pendingMultiplier。
使用 JSON-RPC eth_call 讀取乘數
你可以使用 eth_call,透過 BlockVectra 的 Robinhood Chain JSON-RPC 端點直接檢視任何代幣化股票的乘數。
- 函式:
uiMultiplier() - 4 位元組函式選擇器:
0xa60bf13d(bytes4(keccak256("uiMultiplier()"))) - 回傳格式:32 位元組十六進位編碼的
uint256(18 位小數定點值)
BlockVectra 在 https://api.blockvectra.com/v1/robinhood_mainnet 提供 Robinhood Chain 的 JSON-RPC 請求。請透過 x-api-key 標頭傳入 API key,或將其附加到路徑(https://api.blockvectra.com/v1/robinhood_mainnet/{api_key})。
程式碼範例
以下範例查詢 Everpure 股票代幣合約(0x1Cdad396DB64BDa184d5182A97Dd9B3C62100b7D)上的 uiMultiplier():
curl -s "https://api.blockvectra.com/v1/robinhood_mainnet" \
-H "Content-Type: application/json" \
-H "x-api-key: $BLOCKVECTRA_API_KEY" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "eth_call",
"params": [
{
"to": "0x1Cdad396DB64BDa184d5182A97Dd9B3C62100b7D",
"data": "0xa60bf13d"
},
"latest"
]
}'使用 Data API 查詢持有人與每日活動
BlockVectra Data API 提供代幣化股票的預先索引每日摘要。使用 GET /v1/data/robinhood_mainnet/stocks 取得每日活動排行榜,並使用 GET /v1/data/robinhood_mainnet/stocks/{token} 取得單一代幣的中繼資料與最多 30 天的每日指標。請求參數、回應欄位與範例請參閱代幣化股票指南。
法規注意事項
股票代幣是由 Robinhood Assets (Jersey) Limited(RHJ)發行的代幣化債務證券。公開說明書、最終條款與司法管轄區通知請參閱 Robinhood RHJ 文件。
下一步
最後更新: