# Robinhood Chain Aktientoken: Multiplikator, Halter und tägliche Aktivität mit einem API-Schlüssel auslesen

> Source: https://docs.blockvectra.com/de/guides/stock-token-multiplier/

> Die Daten stammen aus öffentlichen On-Chain-Einträgen und Smart-Contract-Zuständen. Sie dienen ausschließlich Informationszwecken und stellen keine Anlageberatung dar. Aktientoken unterliegen länderspezifischen Beschränkungen.


Robinhood Chain unterstützt tokenisierte Real-World Assets (RWAs), darunter tokenisierte US-Aktien und börsengehandelte Fonds (ETFs). Während standardmäßige ERC-20-Token Guthaben 1:1 abbilden, führen tokenisierte Aktien einen Corporate-Action-Multiplikator ein, um Aktiensplits und Dividendenanpassungen ohne Änderung der Wallet-Guthaben abzubilden.

Dieser Leitfaden erklärt, wie der Aktientoken-Multiplikator funktioniert, wie rohe Token-Guthaben in die Anzahl zugrunde liegender Aktien umgerechnet werden, wie `uiMultiplier` on-chain über JSON-RPC `eth_call` abgefragt wird und wie tägliche Halter- sowie Transferaktivitäten über die BlockVectra Data API abgerufen werden.

Allgemeine Netzwerkparameter, Methodenrichtlinien und die RPC-Einrichtung finden Sie im [Leitfaden zur Robinhood Chain](https://docs.blockvectra.com/de/guides/robinhood-chain/). Ausführliche Feldreferenzen und Modelle zur Nutzung von Compute Units (CU) für diesen Datensatz finden Sie im [Leitfaden zu tokenisierten Aktien](https://docs.blockvectra.com/de/guides/stocks/).

## Was ist der Aktientoken-Multiplikator

Robinhood-Aktientoken sind standardmäßige ERC-20-Token (mit 18 Dezimalstellen), die von Robinhood Assets (Jersey) Limited (RHJ) ausgegeben werden. Um Kapitalmaßnahmen wie Aktiensplits und reinvestierte Dividenden abzubilden, implementieren diese Verträge **ERC-8056 (Scaled UI Amount Extension)**.

Der Multiplikator (`uiMultiplier`) definiert das Verhältnis `Aktien-pro-Token`:

* **Präzision**: `uiMultiplier()` wird als 18-stellige Festkommazahl dargestellt, wobei `1e18` dem Wert `1.0` entspricht.
* **Initialwert**: Bei der Token-Ausgabe wird der Multiplikator mit `1e18` initialisiert (ein Token repräsentiert eine zugrunde liegende Aktie).
* **Kapitalmaßnahmen**: Wenn eine Kapitalmaßnahme stattfindet (z. B. ein Forward-Aktiensplit oder eine reinvestierte Dividende), aktualisiert der Token-Vertrag `uiMultiplier` und emittiert das Event `UIMultiplierUpdated(uint256 oldMultiplier, uint256 newMultiplier, uint256 effectiveAtTimestamp)`.

### Feste Token-Guthaben bei Aktiensplits

Aktientoken sind **keine Rebasing-Token**. Bei Kapitalmaßnahmen gilt:

* Wallet-Guthaben (`balanceOf(account)`) und die gesamte Token-Ausgabemenge (`totalSupply()`) **bleiben unverändert**.
* Es ändert sich ausschließlich der Skalierungsmultiplikator.

Wenn beispielsweise eine zugrunde liegende Aktie einen 2:1-Forward-Split durchführt:

* Ein Halter mit 10 Token hält weiterhin 10 Token in `balanceOf`.
* Der Vertrag aktualisiert `uiMultiplier` von `1.0` (`1e18`) auf `2.0` (`2e18`).
* Jeder Token repräsentiert nun 2 zugrunde liegende Aktien, wodurch der Halter ein effektives Exposure von 20 Aktien hat.

### Umrechnung von Guthaben in Aktienanzahl

Um die Anzahl der zugrunde liegenden Aktien zu berechnen, die ein Token-Guthaben repräsentiert, verwenden Sie die ERC-8056-Formel:

```text
underlying shares = raw token amount × uiMultiplier ÷ 1e18
```

ERC-8056-Token-Verträge stellen on-chain zudem schreibgeschützte Hilfsfunktionen bereit:

* `balanceOfUI(address account)`: Gibt das Guthaben des Kontos direkt in zugrunde liegenden Aktien an (skaliert mit `uiMultiplier`, 18 Dezimalstellen).
* `totalSupplyUI()`: Gibt das gesamte Token-Angebot direkt in zugrunde liegenden Aktien an.

Darüber hinaus emittieren Token-Transfers das Event `TransferWithScaledUI(address indexed from, address indexed to, uint256 value, uint256 uiValue)`, das sowohl die rohe Token-Menge als auch die skalierte Anzahl zugrunde liegender Aktien aufzeichnet.

### Multiplikator und Oracle-Preis-Feeds

Robinhood Chain stellt für jeden Aktientoken einen eigenen Chainlink-Preis-Feed (`AggregatorV3Interface`) bereit:

* Der Chainlink-Preis-Feed (`latestRoundData()`) **beinhaltet den Multiplikator bereits**. Er spiegelt den vollen Marktpreis eines Tokens wider (Preis der zugrunde liegenden Aktie multipliziert mit dem Multiplikator).
* Anwendungen, die das On-Chain-Chainlink-Oracle auslesen, erhalten direkt den an den Multiplikator angepassten Preis und **dürfen den Multiplikator keinesfalls** ein zweites Mal anwenden.
* Off-Chain-Metadaten können auch über den REST-Endpunkt `GET https://api.robinhood.com/rhj/assets` von Robinhood überprüft werden, der `currentMultiplier` und `pendingMultiplier` liefert.

## Den Multiplikator mit JSON-RPC eth\_call auslesen

Sie können den Multiplikator jeder tokenisierten Aktie direkt über den JSON-RPC-Endpunkt von BlockVectra für Robinhood Chain mittels `eth_call` abfragen.

* **Funktion**: `uiMultiplier()`
* **4-Byte-Funktionsselektor**: `0xa60bf13d` (`bytes4(keccak256("uiMultiplier()"))`)
* **Rückgabeformat**: 32-Byte hex-codierter `uint256` (18-stelliger Festkommawert)

BlockVectra beantwortet JSON-RPC-Anfragen für Robinhood Chain unter `https://api.blockvectra.com/v1/robinhood_mainnet`. Übergeben Sie Ihren API-Schlüssel über den Header `x-api-key` oder hängen Sie ihn an den Pfad an (`https://api.blockvectra.com/v1/robinhood_mainnet/{api_key}`).

### Codebeispiele

Die folgenden Beispiele fragen `uiMultiplier()` auf dem Everpure-Aktientokenvertrag (`0x1Cdad396DB64BDa184d5182A97Dd9B3C62100b7D`) ab:

**cURL**

```bash
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"
    ]
  }'
```


  **viem (TypeScript)**

```ts
import { createPublicClient, defineChain, http, parseAbi } from "viem";

const robinhoodMainnet = defineChain({
  id: 4663,
  name: "Robinhood Chain",
  nativeCurrency: { name: "Ether", symbol: "ETH", decimals: 18 },
  rpcUrls: {
    default: { http: ["https://api.blockvectra.com/v1/robinhood_mainnet"] },
  },
});

const client = createPublicClient({
  chain: robinhoodMainnet,
  transport: http("https://api.blockvectra.com/v1/robinhood_mainnet", {
    fetchOptions: {
      headers: { "x-api-key": process.env.BLOCKVECTRA_API_KEY! },
    },
  }),
});

const stockTokenAbi = parseAbi([
  "function uiMultiplier() external view returns (uint256)",
  "function balanceOfUI(address account) external view returns (uint256)",
  "function balanceOf(address account) external view returns (uint256)",
]);

const tokenAddress = "0x1Cdad396DB64BDa184d5182A97Dd9B3C62100b7D";

// 1. Read the corporate-action multiplier (18 decimals, 1e18 = 1.0)
const multiplier = await client.readContract({
  address: tokenAddress,
  abi: stockTokenAbi,
  functionName: "uiMultiplier",
});

console.log("uiMultiplier (raw uint256):", multiplier.toString());

// 2. Read raw balance and convert to underlying shares
const holderAddress = "0x0000000000000000000000000000000000000001";
const rawBalance = await client.readContract({
  address: tokenAddress,
  abi: stockTokenAbi,
  functionName: "balanceOf",
  args: [holderAddress],
});

const underlyingShares = (rawBalance * multiplier) / 10n ** 18n;
console.log("Calculated underlying shares:", underlyingShares.toString());

// 3. Or read pre-scaled shares directly using balanceOfUI
const directShares = await client.readContract({
  address: tokenAddress,
  abi: stockTokenAbi,
  functionName: "balanceOfUI",
  args: [holderAddress],
});
console.log("Direct balanceOfUI shares:", directShares.toString());
```


## Halter und tägliche Aktivität mit der Data API abfragen

Die BlockVectra Data API liefert vorindexierte tägliche Zusammenfassungen für tokenisierte Aktien. Verwenden Sie `GET /v1/data/robinhood_mainnet/stocks` für die tägliche Aktivitäts-Bestenliste und `GET /v1/data/robinhood_mainnet/stocks/{token}` für die Metadaten eines Tokens sowie tägliche Metriken der letzten bis zu 30 Tage. Anforderungsparameter, Antwortfelder und Beispiele finden Sie im [Leitfaden zu tokenisierten Aktien](https://docs.blockvectra.com/de/guides/stocks/).

## Regulatorische Hinweise

Aktientoken sind tokenisierte Schuldtitel, die von Robinhood Assets (Jersey) Limited (RHJ) ausgegeben werden. Prospekte, endgültige Bedingungen und rechtliche Hinweise nach Rechtsordnungen finden Sie in der [Robinhood RHJ-Dokumentation](https://docs.robinhood.com/rhj).

## Nächste Schritte

* [Datensatzverzeichnis durchsuchen](https://blockvectra.com/de/data/), um alle von BlockVectra indexierten Datensätze zu sehen.
* [Kostenlosen Plan und Preise ansehen](https://blockvectra.com/de/pricing/#free), um den Leistungsumfang Ihres Kontos zu prüfen.
* [In der Konsole anmelden](https://console.blockvectra.com/login/?next=%2Fkeys%2F), um einen API-Schlüssel zu erstellen.
