tokenised_fund.asseto.constants
Documentation for eth_defi.tokenised_fund.asseto.constants Python module.
Asseto product metadata.
Asseto AoABT is a permissioned ERC-20 tokenised fund product. Its share token, subscription/redemption hub and NAV pricer are separate contracts, so the shared vault scanner needs this product-level mapping instead of ERC-4626 introspection.
Module Attributes
Fiat and stablecoin denominations which already represent USD accounting. |
|
HashKey Chain EVM chain id. |
|
AoABT on HashKey Chain. |
|
Product lookup used by the adapter and chain-aware classification. |
|
Address-only lookup used for hardcoded protocol routing. |
|
Reviewed manager attribution for Asseto products on supported EVM chains. |
|
Hardcoded leads for tokenised funds that do not emit ERC-4626 events. |
Functions
|
Install API-derived products for the lifetime of this scanner process. |
Classes
Reviewed investment-manager attribution for an Asseto share token. |
|
Asseto on-chain product metadata. |
- ASSETO_USD_DENOMINATIONS = frozenset({'USD', 'USDC', 'USDT'})
Fiat and stablecoin denominations which already represent USD accounting.
- class AssetoProduct
Bases:
objectAsseto on-chain product metadata.
- Parameters
chain_id – EVM chain hosting the product.
token – ERC-20 tokenised fund share address.
manager – Asseto
AoABTManagerrequest/claim contract, when published.pricer – Asseto
Pricercontract that publishes NAV/share in base-18 USD, when published.collateral – Stablecoin used by the manager for subscriptions and redemptions, when the product publishes it.
first_seen_at_block – Token proxy deployment block.
first_seen_at – Token proxy deployment timestamp as a naive UTC datetime.
management_fee – Documented annual underlying-fund management fee, when available.
performance_fee – Documented underlying-fund performance fee, when available.
has_custom_fees – Whether the fund fee terms include conditions that cannot be expressed as one scalar percentage.
- usd_exchange_rates: tuple[tuple[int, decimal.Decimal], ...]
Historical units of denomination currency per USD, keyed by UTC timestamp.
- offchain_product_id: Optional[int]
Asseto public product-registry identifier for its display NAV history.
- __init__(chain_id, token, symbol, product_name, manager, pricer, collateral, first_seen_at_block, first_seen_at, management_fee=None, performance_fee=None, has_custom_fees=False, denomination_symbol=None, usd_exchange_rates=(), offchain_product_id=None, offchain_product_name=None, description=None, homepage=None)
- Parameters
chain_id (int) –
token (eth_typing.evm.HexAddress) –
symbol (str) –
product_name (str) –
manager (Optional[eth_typing.evm.HexAddress]) –
pricer (Optional[eth_typing.evm.HexAddress]) –
collateral (Optional[eth_typing.evm.HexAddress]) –
first_seen_at_block (int) –
first_seen_at (datetime.datetime) –
has_custom_fees (bool) –
usd_exchange_rates (tuple[tuple[int, decimal.Decimal], ...]) –
- Return type
None
- class AssetoCurator
Bases:
objectReviewed investment-manager attribution for an Asseto share token.
- HASHKEY_CHAIN_ID = 177
HashKey Chain EVM chain id.
- ASSETO_AOABT_HASHKEY = AssetoProduct(chain_id=177, token='0x80c080acd48ed66a35ae8a24bc1198672215a9bd', symbol='AoABT', product_name='Asseto Orient Arbitrage Token', manager='0x6db7ea55c94fb0f4b22d6b384c18cdaa3b33d746', pricer='0xd72529f8b54fcb59010f2141fc328ada5aa72abb', collateral='0xf1b50ed67a9e2cc94ad3c477779e2d4cbfff9029', first_seen_at_block=3068926, first_seen_at=datetime.datetime(2025, 2, 25, 12, 3, 7), management_fee=0.01, performance_fee=0.2, has_custom_fees=True, denomination_symbol='USDT', usd_exchange_rates=(), offchain_product_id=None, offchain_product_name=None, description='AoABT tokenises the Asseto Orient Arbitrage Strategy and offers daily U.S. dollar yields backed one-to-one by the underlying strategy.', homepage='https://asseto.gitbook.io/asseto/products/aoabt/introduction')
AoABT on HashKey Chain.
Token proxy: https://hsk.blockscout.com/address/0x80C080acd48ED66a35Ae8A24BC1198672215A9bD Manager: https://hsk.blockscout.com/address/0x6dB7eA55c94fb0F4b22D6b384C18CdAa3B33d746 Pricer: https://hsk.blockscout.com/address/0xD72529F8b54fcB59010F2141FC328aDa5Aa72abb
- ASSETO_PRODUCTS: dict[tuple[int, eth_typing.evm.HexAddress], eth_defi.tokenised_fund.asseto.constants.AssetoProduct] = {(177, '0x80c080acd48ed66a35ae8a24bc1198672215a9bd'): AssetoProduct(chain_id=177, token='0x80c080acd48ed66a35ae8a24bc1198672215a9bd', symbol='AoABT', product_name='Asseto Orient Arbitrage Token', manager='0x6db7ea55c94fb0f4b22d6b384c18cdaa3b33d746', pricer='0xd72529f8b54fcb59010f2141fc328ada5aa72abb', collateral='0xf1b50ed67a9e2cc94ad3c477779e2d4cbfff9029', first_seen_at_block=3068926, first_seen_at=datetime.datetime(2025, 2, 25, 12, 3, 7), management_fee=0.01, performance_fee=0.2, has_custom_fees=True, denomination_symbol='USDT', usd_exchange_rates=(), offchain_product_id=None, offchain_product_name=None, description='AoABT tokenises the Asseto Orient Arbitrage Strategy and offers daily U.S. dollar yields backed one-to-one by the underlying strategy.', homepage='https://asseto.gitbook.io/asseto/products/aoabt/introduction')}
Product lookup used by the adapter and chain-aware classification.
- ASSETO_PRODUCTS_BY_TOKEN: dict[eth_typing.evm.HexAddress, eth_defi.tokenised_fund.asseto.constants.AssetoProduct] = {'0x80c080acd48ed66a35ae8a24bc1198672215a9bd': AssetoProduct(chain_id=177, token='0x80c080acd48ed66a35ae8a24bc1198672215a9bd', symbol='AoABT', product_name='Asseto Orient Arbitrage Token', manager='0x6db7ea55c94fb0f4b22d6b384c18cdaa3b33d746', pricer='0xd72529f8b54fcb59010f2141fc328ada5aa72abb', collateral='0xf1b50ed67a9e2cc94ad3c477779e2d4cbfff9029', first_seen_at_block=3068926, first_seen_at=datetime.datetime(2025, 2, 25, 12, 3, 7), management_fee=0.01, performance_fee=0.2, has_custom_fees=True, denomination_symbol='USDT', usd_exchange_rates=(), offchain_product_id=None, offchain_product_name=None, description='AoABT tokenises the Asseto Orient Arbitrage Strategy and offers daily U.S. dollar yields backed one-to-one by the underlying strategy.', homepage='https://asseto.gitbook.io/asseto/products/aoabt/introduction')}
Address-only lookup used for hardcoded protocol routing.
- install_asseto_runtime_products(products)
Install API-derived products for the lifetime of this scanner process.
The classification module imports these mutable mappings during process startup, so retain their identity while replacing only the entries owned by the fresh or validated stale Asseto registry. The scheduled scanner calls this before constructing any
AssetoVaultadapters.- Parameters
products (list[eth_defi.tokenised_fund.asseto.constants.AssetoProduct]) – Fully prepared product records keyed by chain and token.
- Returns
None.
- Return type
None
- ASSETO_CURATORS: dict[tuple[int, eth_typing.evm.HexAddress], eth_defi.tokenised_fund.asseto.constants.AssetoCurator] = {(1, '0x286d9f099587f567ece2b70ebb64b94acd672d76'): AssetoCurator(manager_name='CNCB (Hong Kong) Capital Limited', curator_slug='cncb-capital'), (1, '0x383730608d98b82470d733369a839f6b7e8cfda5'): AssetoCurator(manager_name='DL Holdings', curator_slug='dl-holdings'), (1, '0x3be5dd4a34f1c6a112048b9df908ced4372d5049'): AssetoCurator(manager_name='Epoch RWA', curator_slug='epoch-rwa'), (1, '0x4867ad1a74b38b0aeff4fff251ed0dadae4f4630'): AssetoCurator(manager_name='Changfeng Asset Management', curator_slug='changfeng-asset-management'), (1, '0x498d9329555471bf6073a5f2d047f746d522a373'): AssetoCurator(manager_name='CMS Asset Management', curator_slug='cms-asset-management-hk'), (1, '0x50bdaff4bceb852f006f657f47c68fcc417f7beb'): AssetoCurator(manager_name='Haitong International Asset Management (HK) Limited', curator_slug='haitong-international-asset-management'), (1, '0x63e19fb814eb737730ac0afbb52b351695b97176'): AssetoCurator(manager_name='GaoTeng Global Asset Management Limited', curator_slug='gaoteng-global-asset-management'), (1, '0x6dc4674573380aff6c3359e19da5cbb6afceb5c3'): AssetoCurator(manager_name='Changfeng Asset Management', curator_slug='changfeng-asset-management'), (1, '0x78e80da0616887b46a31f39310c2a8b0fbd6a42d'): AssetoCurator(manager_name='China Asset Management', curator_slug='chinaamc-hong-kong'), (1, '0x907c00d587daff16d028fe1e131d6dd3c6bf2f4b'): AssetoCurator(manager_name='CMS Asset Management', curator_slug='cms-asset-management-hk'), (1, '0xf252c5bd43907a6cab079e990845a37a7c5730d9'): AssetoCurator(manager_name='Partners Group', curator_slug='partners-group'), (1, '0xf3a2a5de306b063d75c86b6352832639b7263a3b'): AssetoCurator(manager_name='Muzinich & Co.', curator_slug='muzinich'), (56, '0x1775504c5873e179ea2f8abfce3861ec74d159bc'): AssetoCurator(manager_name='CMS Asset Management', curator_slug='cms-asset-management-hk'), (56, '0x1ec3aa07e3898f1e6d4f23b5dce1bdbecb5c1fe1'): AssetoCurator(manager_name='China Asset Management', curator_slug='chinaamc-hong-kong'), (56, '0x50bf2924cee59737ead76e881643ed8569bae6e8'): AssetoCurator(manager_name='Partners Group', curator_slug='partners-group'), (56, '0xfb8cb7630bc3cb34a6a9846ec03de3a32393ee65'): AssetoCurator(manager_name='Muzinich & Co.', curator_slug='muzinich'), (43114, '0xb2ea3e7b80317c4e20d1927034162176e25834e2'): AssetoCurator(manager_name='DFZQ / Orient Securities International', curator_slug='dfzq')}
Reviewed manager attribution for Asseto products on supported EVM chains.
Asseto is the tokenisation and administration platform, not the portfolio manager. These exact mappings deliberately exclude HashKey, Pharos and Prospero deployments, which are not supported by the shared vault export.
- ASSETO_HARDCODED_LEADS = ((177, '0x80c080acd48ed66a35ae8a24bc1198672215a9bd', 3068926, datetime.datetime(2025, 2, 25, 12, 3, 7)),)
Hardcoded leads for tokenised funds that do not emit ERC-4626 events.