Subaccounts
Subaccounts are isolated trading environments within the exchange that allow users to separate their trading positions, margin, and risk profiles. Each subaccount operates independently, preventing cross-contamination of risk between different trading strategies or markets.
Each subaccount contains its own isolated margin balance, maintains separate positions across markets, and has independent liquidation thresholds. Critically, subaccounts cannot impact other subaccounts, even those owned by the same user. This isolation ensures that negative performance in one trading strategy or market cannot affect positions in other subaccounts.
Purpose and Benefits
Subaccounts provide essential functionality for traders. They enable risk isolation by preventing cascading liquidations across different trading strategies. Traders can implement multiple strategies with different risk profiles through strategy separation, while maintaining portfolio organization with clear segregation between different trading purposes.
The system also provides accounting clarity by simplifying profit/loss tracking for different trading approaches, and facilitates API integration by allowing different systems to operate on isolated accounts. Without subaccounts, all positions would share the same margin pool, meaning a losing position in one market could force liquidation of profitable positions in other markets.
System Accounts
System accounts are special-purpose accounts maintained by Ethereal to handle essential platform operations. Unlike standard user accounts, system accounts operate with elevated permissions and are exclusively used by the exchange.
Some system accounts are also subaccounts. The fee collector automatically receives all trading fees generated on the platform, while the liquidator receives all position transfers upon liquidation. There are also non-subaccount system accounts such as the exchange contract owner and sequencer.
System accounts must be unregistered when the role is granted. This safeguard prevents the protocol from assigning a system role—with its associated restrictions and liabilities—to a user account.
Last updated