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 ÷ 1e18

ERC-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 文件。

下一步

最後更新:

本頁目錄