NashPoint
NashPoint
  • Introduction
    • Introduction To Nashpoint
    • Current Features & Capabilities
    • Post Launch Roadmap
  • User Documentation
    • Node Contract Overview
    • Node Owner & Rebalancer Roles
    • Portfolio Management
    • Rebalancing & Strategy Execution
    • User Deposits & Shares
    • Asynchronous Redemptions
      • Two Step Process
    • Swing Pricing
    • Processing User Redemptions
    • Management & Execution Fees
  • Developer Documentation
    • Overview
    • Role-Based Access Control
    • Smart Contract Architecture
  • Routers
    • ERC-4626 Router
    • ERC-7540 Router
    • Router Tolerance
  • Creating A Node
  • Asynchronous Redemptions
  • Managing a Node
    • Adding & Removing Components
    • Updating Component Allocations
    • Rebalance Window & Cooldown
    • Rebalancing a Node
    • Managing Rebalancers
    • Processing User Redemptions
      • Reserve vs Component Fulfillment
    • Reserve Management
    • Fees Configuration
    • Liquidation Queue Configuration
    • Max Deposit Limits
    • Operator Permissions
    • Emergency Controls
  • Upgrading a Node
    • Adding Quoters & Routers
    • Custom Router Development
    • Multi-Tier Permissioning
  • Cached Data & Gas Efficiency
  • Swing Pricing Calculations
  • Adding Routers and Components - Step by Step Guide
  • Node Execute Function
  • Resources
    • FAQ
    • Glossary
    • Supported Networks & Protocols
    • Deployments
    • Audits
    • GitHub
    • Telegram
    • NashPoint
  • Node Strategies
    • Test Node A
Powered by GitBook
On this page
  • Smart Contract Topography
  • Core Contracts
  • Extensible Contract Classes
  • Libraries
  • Protocol Extensibility
Edit on GitHub
  1. Developer Documentation

Smart Contract Architecture

PreviousRole-Based Access ControlNextRouters

Last updated 2 months ago

Smart Contract Topography

Core Contracts

NodeRegistry

The central registry and governance contract for the protocol. It:

  • Maintains whitelist of protocol participants (factories, routers, quoters, rebalancers)

  • Store a list of valid Nodes

  • Stores protocol-wide parameters and fee settings

  • Controls deployment permissions through role-based access

  • Acts as the source of truth for valid protocol components

NodeFactory

A factory pattern contract that standardizes and controls Node deployment. It:

  • Creates new Node instances with standardized initialization

  • Deploys associated Escrow contracts

  • Registers new Nodes with the NodeRegistry

  • Ensures proper initialization of Node parameters and permissions

Escrow

A simple but critical security contract that:

  • Holds assets during the withdrawal process

  • Provides secure asset custody during async operations

  • Grants specific permissions to its associated Node

  • Prevents direct manipulation of held assets

Extensible Contract Classes

Nodes

Nodes are the core investment vehicle contracts that can be implemented for different investment strategies and mechanics.

Current Implementation - Node.sol:

  • Implements an MMF (Money Market Fund) style investment vehicle using swing pricing

  • Manages reserve ratios and component allocations

  • Handles deposits and redemptions with dynamic pricing

  • Coordinates with Routers for component interactions

  • Processes management and execution fees

  • Controls rebalancing windows and cooldowns

Future Node implementations could support:

  • Different pricing mechanisms

  • Various investment strategies

  • Alternative asset management approaches

  • Specialized financial instruments

Routers

Routers are specialized contracts that handle interactions with specific asset types or protocols. They abstract away the complexity of different asset interfaces.

Current Implementations:

  1. ERC4626Router

    • Handles standard yield-bearing vault interactions

    • Manages deposits and withdrawals

    • Tracks component assets

  2. ERC7540Router

    • Manages async vault interactions

    • Handles request/claim patterns

    • Coordinates multi-step operations

Future Router implementations could support:

  • DEX integrations

  • Lending protocol interactions

  • Complex derivative positions

  • Cross-chain assets

  • Other specialized protocols

Quoters

Quoters are contracts that calculate pricing and execution parameters. They can be implemented for different pricing strategies.

Current Implementation - QuoterV1:

  • Implements swing pricing calculations

  • Computes deposit bonuses and withdrawal penalties

  • Manages reserve ratio impacts

  • Uses exponential scaling for price adjustments

Future Quoter implementations could support:

  • Alternative pricing models

  • Reading oracle data onchain

  • Interacting with offchain data sources such as ZKVMs

Libraries

BaseRouter

A foundational library that:

  • Provides common Router functionality

  • Implements standard security checks

  • Manages component whitelisting

  • Handles fee calculations

BaseQuoter

A foundational library that:

  • Provides common Quoter functionality

  • Implements access controls

  • Manages Node validation

  • Standardizes interface requirements

Other Libraries

  • ErrorsLib: Standardized error handling

  • EventsLib: Standardized event emissions

  • MathLib: Safe mathematical operations

Protocol Extensibility

The protocol is designed for extensibility through:

  1. Modular Architecture: Clear separation of concerns between contracts

  2. Abstract Base Contracts: Common functionality in base contracts

  3. Standardized Interfaces: Clear interface definitions for new implementations

  4. Registry Pattern: Centralized control and validation

This architecture allows for:

  • New asset type support through additional Routers

  • Different investment strategies through new Node implementations

  • Alternative pricing mechanisms through new Quoters

  • Protocol evolution without core contract modifications

The current implementation focuses on MMF-style functionality with swing pricing, but the architecture supports expansion into various other financial instruments and strategies while maintaining security and standardization.