LLM Notice: This documentation site supports content negotiation for AI agents. Request any page with Accept: text/markdown or Accept: text/plain header to receive Markdown instead of HTML. Alternatively, append ?format=md to any URL. All markdown files are available at /md/ prefix paths. For all content in one file, visit /llms-full.txt
Skip to main content

MOET's Role in ALP

MOET plays a central role in ALP as the default token and primary unit of account. Understanding MOET's function is essential for effectively using ALP and Flow Credit Market (FCM).

What is MOET?​

MOET is a fungible token on Flow that serves as:

  • πŸ’° The primary borrowed asset - What you borrow from ALP
  • πŸ“Š The unit of account - All prices quoted in MOET terms
  • πŸ”„ The rebalancing medium - Used for all automated operations
  • πŸŒ‰ The value bridge - Flows between ALP and FYV

For more about MOET tokenomics, see the MOET documentation.

MOET as Unit of Account​

Think of MOET as the "common language" for all value in ALP - like how everything in a store is priced in dollars.

All Prices in MOET Terms​


_10
graph TD
_10
MOET[MOET<br/>Unit of Account]
_10
MOET --> FLOW[FLOW = 1.0 MOET]
_10
MOET --> USDC[USDC = 1.0 MOET]
_10
MOET --> stFLOW[stFLOW = 1.05 MOET]
_10
MOET --> Other[Other tokens...]
_10
_10
style MOET fill:#fbb,stroke:#333,stroke-width:4px

Why this matters: Using MOET as the unit of account simplifies calculations by expressing all values in one currency, standardizes pricing consistently across all tokens, enables multi-collateral positions by making it easy to compare different assets, and provides unified risk management through a single health metric.

Health factor calculation example:


_10
Collateral: 1000 FLOW @ 1.0 MOET each Γ— 0.8 factor = 800 MOET value
_10
Debt: 615.38 MOET
_10
Health Factor = 800 / 615.38 = 1.30
_10
_10
All in MOET terms = Simple and consistent!

Why Not Just Use USD?

MOET is designed specifically for Flow DeFi, ensuring deep on-chain liquidity, native protocol integration, optimized performance for Flow operations, and better composability with FYV and other protocols.

MOET in the Auto-Borrowing Flow​

When you deposit collateral with auto-borrowing enabled, MOET is what you borrow:


_14
sequenceDiagram
_14
participant User
_14
participant ALP
_14
participant MOET
_14
_14
User->>ALP: Deposit 1000 FLOW
_14
ALP->>ALP: Calculate: 1000 Γ— 0.8 = 800 effective
_14
ALP->>ALP: Target health: 1.3
_14
ALP->>ALP: Can borrow: 800 / 1.3 = 615.38
_14
ALP->>MOET: Auto-borrow 615.38 MOET
_14
MOET->>User: Receive 615.38 MOET
_14
ALP->>ALP: Health = 1.3 βœ“
_14
_14
Note over User,MOET: All automatic, no manual steps!

Why MOET?

  1. Standardization: One primary asset simplifies everything
  2. Liquidity: MOET designed for high liquidity
  3. Predictability: You always know what you'll receive
  4. Efficiency: No token choice complexity

MOET in Rebalancing​

Overcollateralized: Borrow More MOET​

When health rises above 1.5 (too safe), ALP automatically borrows more MOET:


_10
graph LR
_10
A[Health > 1.5<br/>Too Safe] --> B[Calculate Excess]
_10
B --> C[Auto-borrow MOET]
_10
C --> D[Push to DrawDownSink]
_10
D --> E[Health = 1.3 βœ“]
_10
_10
style A fill:#bfb
_10
style E fill:#bfb

Example:


_10
State: $1000 effective collateral, $400 MOET debt
_10
Health: 1000 / 400 = 2.5 (way too high!)
_10
_10
Action: Borrow 769.23 - 400 = 369.23 more MOET
_10
Result: $1000 / $769.23 = 1.3 (perfect!)

Undercollateralized: Repay MOET​

When health drops below 1.1 (risky), ALP automatically repays MOET debt:


_10
graph LR
_10
A[Health < 1.1<br/>Risky!] --> B[Calculate Shortfall]
_10
B --> C[Pull from TopUpSource]
_10
C --> D[Repay MOET debt]
_10
D --> E[Health = 1.3 βœ“]
_10
_10
style A fill:#fbb
_10
style E fill:#bfb

Example:


_10
State: $640 effective collateral (price dropped!), $615.38 MOET debt
_10
Health: 640 / 615.38 = 1.04 (danger zone!)
_10
_10
Action: Repay 615.38 - 492.31 = 123.07 MOET
_10
Result: $640 / $492.31 = 1.3 (safe again!)

Math reference: See FCM Mathematical Foundations for auto-borrowing formulas and Rebalancing Mathematics for rebalancing calculations.

MOET Flow Patterns​

Pattern 1: Simple Borrowing​

Use case: Borrow MOET, use it yourself


_10
graph LR
_10
User[Deposit FLOW] --> ALP[ALP Position]
_10
ALP --> Auto[Auto-borrow MOET]
_10
Auto --> Wallet[Your Wallet]
_10
Wallet --> Use[Use MOET<br/>Yield/Trading/etc]
_10
_10
style ALP fill:#f9f,stroke:#333,stroke-width:2px

Flow: Collateral β†’ Borrow MOET β†’ You control it

Pattern 2: FCM Integration (Full Automation)​

Use case: Maximum automation with FYV


_15
graph TB
_15
User[Deposit FLOW] --> ALP[ALP Position]
_15
ALP -->|Auto-borrow| MOET[MOET]
_15
MOET -->|DrawDownSink| FYV[FYV Strategy]
_15
FYV -->|Generate Yield| Yield[Yield Tokens]
_15
_15
Price[Price Drop] -.->|Triggers| Rebal[Rebalancing]
_15
Rebal -->|Pull via TopUpSource| FYV
_15
FYV -->|Provide MOET| ALP
_15
ALP -->|Repay| MOET
_15
ALP -->|Health Restored| Safe[Health = 1.3 βœ“]
_15
_15
style ALP fill:#f9f,stroke:#333,stroke-width:3px
_15
style FYV fill:#bfb,stroke:#333,stroke-width:3px
_15
style MOET fill:#fbb,stroke:#333,stroke-width:2px

Flow: Collateral β†’ Auto-borrow MOET β†’ FYV β†’ Yield protects position!

FCM's Innovation

This is why FCM is unique: Your MOET earnings from FYV automatically repay debt when needed. Yield-powered liquidation prevention!

Learn more: FCM Basics

Pattern 3: Liquidity Provision​

Use case: Earn trading fees with borrowed MOET


_10
graph LR
_10
Collateral[FLOW Collateral] --> ALP[ALP Position]
_10
ALP -->|Borrow| MOET[MOET]
_10
MOET -->|Add Liquidity| LP[LP Pool<br/>MOET/FLOW]
_10
LP -->|Earn| Fees[Trading Fees]
_10
_10
style LP fill:#bbf,stroke:#333,stroke-width:2px

Flow: Collateral β†’ Borrow MOET β†’ LP Pool β†’ Earn trading fees

Pattern 4: Yield Arbitrage​

Use case: Profit from rate differentials


_10
graph LR
_10
ALP[Borrow from ALP<br/>5% APY] -->|MOET| Protocol[Lend to Protocol<br/>8% APY]
_10
Protocol -->|Earn| Spread[3% Spread<br/>Profit!]
_10
_10
style Spread fill:#bfb,stroke:#333,stroke-width:2px

Flow: Borrow MOET cheap β†’ Lend MOET expensive β†’ Keep spread

MOET in Liquidations​

Keeper Liquidations​

Keepers repay MOET debt to seize collateral:


_12
sequenceDiagram
_12
participant Keeper
_12
participant ALP
_12
participant Position
_12
_12
Keeper->>Keeper: Detect HF < 1.0
_12
Keeper->>ALP: Repay 100 MOET
_12
ALP->>Position: Reduce debt by 100 MOET
_12
ALP->>Keeper: Seize collateral + bonus
_12
Position->>Position: Health = 1.05 βœ“
_12
_12
Note over Keeper,Position: Keeper earns liquidation bonus

Protocol DEX Liquidations​

Protocol swaps collateral to MOET automatically:


_10
graph LR
_10
A[Liquidatable Position] --> B[Seize FLOW Collateral]
_10
B --> C[Swap FLOW β†’ MOET<br/>via DEX]
_10
C --> D[Repay MOET Debt]
_10
D --> E[Health Restored]
_10
_10
style A fill:#fbb
_10
style E fill:#bfb

Example:


_10
Position: 1000 FLOW, 650 MOET debt, HF = 0.98
_10
↓
_10
Seize: 150 FLOW
_10
↓
_10
Swap: 150 FLOW β†’ 147 MOET (via DEX)
_10
↓
_10
Repay: 147 MOET debt
_10
↓
_10
Result: 850 FLOW, 503 MOET debt, HF = 1.05 βœ“

MOET Economics​

Supply & Demand​


_20
graph TB
_20
subgraph Demand
_20
D1[Users borrow for yield]
_20
D2[Liquidators need MOET]
_20
D3[Rebalancing operations]
_20
D4[Protocol integrations]
_20
end
_20
_20
subgraph Supply
_20
S1[MOET deposits as collateral]
_20
S2[Debt repayments]
_20
S3[Interest payments]
_20
S4[Protocol reserves]
_20
end
_20
_20
Demand --> Market[MOET Market]
_20
Supply --> Market
_20
Market --> Rate[Interest Rates]
_20
_20
style Market fill:#fbb,stroke:#333,stroke-width:3px

Interest Rate Dynamics​


_10
Utilization = Total MOET Borrowed / Total MOET Available
_10
_10
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
_10
β”‚ Utilization β”‚ Interest Rate β”‚ Result β”‚
_10
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
_10
β”‚ 0-80% (Low) β”‚ 2-8% APY β”‚ Cheap borrowing β”‚
_10
β”‚ 80-90% (Medium) β”‚ 8-20% APY β”‚ Balanced β”‚
_10
β”‚ 90-100% (High) β”‚ 20-50%+ APY β”‚ Discourages borrowβ”‚
_10
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Why it matters: Low utilization makes MOET cheap to borrow, while high utilization makes borrowing expensive and encourages repayment. This dynamic allows the system to self-balance supply and demand.

Why MOET vs Other Tokens?​

Comparison Table​

FeatureMOETFLOWUSDC
Primary borrowed assetβœ… Yes⚠️ Possible⚠️ Possible
Unit of accountβœ… Yes❌ No❌ No
Auto-borrow defaultβœ… Yes❌ No❌ No
Rebalancing tokenβœ… Yes❌ No❌ No
FCM integrationβœ… Deep⚠️ Moderate⚠️ Moderate
FYV integrationβœ… Native⚠️ Limited⚠️ Limited

MOET Advantages​

  1. Designed for DeFi: Built specifically for Flow DeFi operations
  2. High Liquidity: Deep markets ensure efficient operations
  3. Composability: Works seamlessly with FYV and other protocols
  4. Predictability: Standard token across all FCM operations
  5. Efficiency: Single token simplifies everything

Can I Use Other Tokens?​

Yes, but with limitations:

For Developers

You can manually borrow other tokens:


_10
// Borrow FLOW instead of MOET
_10
let flowBorrowed <- position.borrow(
_10
type: Type<@FlowToken.Vault>(),
_10
amount: 100.0
_10
)

However:

  • Auto-borrowing always uses MOET
  • Rebalancing always uses MOET
  • Health calculations still in MOET terms
  • FYV integration requires MOET

Best Practices​

For Borrowers​

βœ… Do:

  • Maintain MOET buffer in wallet for emergencies
  • Set up TopUpSource with MOET for auto-protection
  • Monitor MOET interest rates
  • Diversify yield strategies with borrowed MOET

❌ Don't:

  • Assume MOET will always be cheap to borrow
  • Put all borrowed MOET in one place
  • Ignore MOET balance in TopUpSource
  • Forget MOET debt accumulates interest

For Yield Seekers​

βœ… Do:

  • Use full FCM integration (ALP + FYV)
  • Let MOET flow automatically to FYV
  • Let yield protect your position
  • Monitor FYV MOET liquidity

❌ Don't:

  • Manually manage MOET if using FYV
  • Interrupt the automated flow
  • Remove MOET from FYV when position needs it

Real-World Example​

Complete MOET Lifecycle​


_16
graph TB
_16
Start[User deposits<br/>1000 FLOW] --> Calc[ALP calculates:<br/>Can borrow 615 MOET]
_16
Calc --> Borrow[Auto-borrow<br/>615 MOET]
_16
Borrow --> Deploy[MOET β†’ FYV<br/>via DrawDownSink]
_16
Deploy --> Earn[FYV generates<br/>yield in MOET]
_16
_16
Price[FLOW price<br/>drops 20%] -.-> Detect[ALP detects<br/>HF = 1.04]
_16
Detect --> Need[Need 123 MOET<br/>to rebalance]
_16
Need --> Pull[Pull from FYV<br/>via TopUpSource]
_16
Pull --> Repay[Repay 123 MOET]
_16
Repay --> Safe[Health = 1.3 βœ“<br/>Liquidation avoided]
_16
_16
style Start fill:#bbf
_16
style Earn fill:#bfb
_16
style Price fill:#fbb
_16
style Safe fill:#bfb

What happened:

  1. Deposited FLOW β†’ Auto-borrowed 615 MOET
  2. MOET deployed to FYV β†’ Earned yield
  3. Price dropped β†’ Position at risk
  4. FYV provided 123 MOET β†’ Debt repaid
  5. Result: Your MOET yield prevented liquidation!

Summary​

MOET's Three Roles:

  1. πŸ’° Borrowed Asset: What you borrow from ALP
  2. πŸ“Š Unit of Account: How all prices are quoted
  3. πŸ”„ Rebalancing Medium: Flows between ALP and FYV

Key Points:

  • All auto-borrowing is in MOET
  • All rebalancing uses MOET
  • All health calculations in MOET terms
  • MOET enables FCM's yield-powered liquidation prevention

Why MOET Matters: Without MOET as the standard, FCM's automation wouldn't work. MOET is the "common currency" that lets ALP and FYV communicate seamlessly, enabling the unique liquidation prevention mechanism.

Mathematical Foundation​

MOET is central to all FCM calculations:

Next Steps​


Key Takeaway

MOET isn't just another token - it's the backbone of FCM. It standardizes pricing, enables automation, and makes yield-powered liquidation prevention possible. Think of it as the "blood" flowing through FCM's veins, carrying value between ALP and FYV.