Understanding FCM Basics
To understand how Flow Credit Market (FCM) works, let's build up from simple lending concepts to FCM's innovative three-component architecture.
FCM = Traditional Lending + Automation + Yield Generation + Liquidation Protection
It's not just "another lending protocol" - it's a complete yield-generating system with automated risk management.
From Traditional Lending to FCM
Level 1: Traditional Lending (Aave, Compound)
In traditional DeFi lending protocols:
_10graph LR_10 User[User] -->|Deposit FLOW| Protocol[Lending Protocol]_10 Protocol -->|Borrow USDC| User_10 User -->|Repay + Interest| Protocol_10_10 style Protocol fill:#bbf,stroke:#333,stroke-width:2px
How it works:
- Deposit collateral (e.g., 1000 FLOW worth $1000)
- Borrow up to ~75% of collateral value (e.g., $750 USDC)
- Pay interest on borrowed amount
- Your responsibility: Monitor health factor and manually manage position
Limitations: Traditional lending requires you to manually monitor and rebalance positions, quickly add collateral or repay debt if collateral price drops, manually deploy borrowed funds to avoid them sitting idle, and act fast enough to prevent liquidation.
Level 2: Automated Lending (ALP)
ALP adds automation to traditional lending:
_10graph LR_10 User[User] -->|Deposit FLOW| ALP[ALP Position]_10 ALP -->|Auto-borrow MOET| User_10_10 Price[Price Drop] -.->|Triggers| Rebalance[Auto-Rebalance]_10 Rebalance -->|Pulls funds| Source[TopUpSource]_10 Source -->|Repays debt| ALP_10_10 style ALP fill:#f9f,stroke:#333,stroke-width:2px
New features:
- ✅ Auto-borrowing: Automatically borrows optimal amount when you deposit
- ✅ Auto-rebalancing: Maintains target health ratio automatically
- ✅ TopUpSource integration: Can pull from external sources to prevent liquidation
Better, but:
- ⚠️ TopUpSource must have funds available
- ⚠️ Borrowed MOET still needs manual deployment for yield
- ⚠️ Still some manual intervention required
Level 3: FCM (ALP + FYV + MOET)
FCM completes the automation by adding yield generation:
_15graph TB_15 User[User] -->|1. Deposit FLOW| ALP[ALP Position]_15 ALP -->|2. Auto-borrow MOET| DrawDown[DrawDownSink]_15 DrawDown -->|3. Deploy| FYV[FYV Strategy]_15 FYV -->|4. Generate yield| Yield[Yield Tokens]_15_15 Price[Price Drop] -.->|Triggers| ALP_15 FYV -->|5. Provide liquidity| TopUp[TopUpSource]_15 TopUp -->|6. Repay debt| ALP_15_15 Yield -.->|Accumulates| FYV_15_15 style ALP fill:#f9f,stroke:#333,stroke-width:4px_15 style FYV fill:#bfb,stroke:#333,stroke-width:4px_15 style DrawDown fill:#bbf,stroke:#333,stroke-width:2px
Complete automation:
- ✅ Auto-borrowing: Instantly borrow optimal amount
- ✅ Auto-deployment: Borrowed MOET flows directly to yield strategies
- ✅ Auto-compounding: FYV strategies reinvest yields
- ✅ Auto-protection: FYV provides liquidity to prevent liquidations
- ✅ Auto-everything: True set-and-forget experience
FCM's innovation is that your generated yield protects your position by maintaining health automatically, requiring no manual intervention as everything happens seamlessly in the background. This creates true capital efficiency where borrowed capital works for you immediately upon deployment.
Understanding the Three Components
Component 1: ALP (The Lending Engine)
ALP manages collateral and debt positions with automated rebalancing. You deposit collateral such as FLOW or stFLOW, and the system applies a collateral factor that determines what percentage of your collateral's value you can borrow—for example, a 0.8 collateral factor means you can borrow up to 80% of your collateral's value. The system continuously monitors your health factor, which is the ratio of your collateral to debt and must remain above 1.0 to avoid liquidation. ALP automatically maintains your position at a target health level, typically around 1.3, to provide a safety buffer.
Example:
_10Deposit: 1000 FLOW @ $1 = $1000_10Collateral Factor: 0.8 (80%)_10Effective Collateral: $800_10_10Target Health: 1.3_10Max Safe Borrow: $800 / 1.3 ≈ $615.38 MOET_10_10ALP auto-borrows: 615.38 MOET_10Position Health: 800 / 615.38 = 1.3
Learn more: ALP Documentation
Component 2: FYV (The Yield Engine)
TracerStrategy acts as the smart converter that takes your borrowed MOET, converts it into yield-earning tokens, and converts them back to MOET when your position needs protection, handling all the conversion logic between MOET and yield opportunities. AutoBalancer acts as the smart wallet that holds and manages your yield tokens, automatically monitoring the value of your yield position and rebalancing your holdings as needed to optimize returns and maintain liquidity. Together, TracerStrategy handles the conversion logic while AutoBalancer handles the holding and management of those yield tokens.
FYV deploys capital into yield-generating strategies and provides liquidity for liquidation prevention. The system uses predefined strategies like TracerStrategy to generate returns, with an AutoBalancer that manages your exposure to yield tokens and handles rebalancing automatically. When ALP borrows MOET on your behalf, the DrawDownSink receives it and deploys it into yield strategies, while the TopUpSource stands ready to provide liquidity back to ALP whenever your position needs debt repayment to maintain health.
Example strategy (TracerStrategy):
_101. Receive MOET from ALP → DrawDownSink_102. Swap MOET → YieldToken (e.g., LP token, farm token)_103. Hold YieldToken in AutoBalancer_104. Accumulate yield over time_105. When ALP needs funds:_10 - Swap YieldToken → MOET_10 - Provide via TopUpSource_10 - ALP repays debt
Learn more: FYV Documentation
Component 3: MOET (The Unit of Account)
MOET serves as the currency for all operations within FCM, functioning simultaneously as the borrowed asset, pricing unit, and value transfer medium. As the system's unit of account, all prices are quoted in MOET terms—whether FLOW/MOET or USDC/MOET. MOET is the primary borrowed asset that ALP auto-borrows and FYV receives for deployment. As a synthetic stablecoin with value pegged to maintain stability, MOET acts as the medium of exchange that flows seamlessly between ALP and FYV components. This design standardizes all valuations, simplifies multi-collateral calculations, and provides deep integration with the Flow ecosystem specifically for DeFi operations.
Learn more: MOET Documentation
The Capital Flow Cycle
Let's follow $1000 of FLOW through the entire FCM system:
Phase 1: Initial Deposit and Borrowing
_17You deposit: 1000 FLOW worth $1000_17↓_17ALP calculates:_17 - Effective collateral: $1000 × 0.8 = $800_17 - Target health: 1.3_17 - Borrow amount: $800 / 1.3 = $615.38 MOET_17↓_17ALP auto-borrows: 615.38 MOET_17↓_17MOET flows to: FYV strategy (via DrawDownSink)_17↓_17FYV swaps: 615.38 MOET → 615.38 YieldToken_17↓_17Status:_17 - Your ALP position: 1000 FLOW collateral, 615.38 MOET debt_17 - Your FYV position: 615.38 YieldToken generating yield_17 - Health factor: 1.3 ✓
Phase 2: Yield Generation
_14Time passes..._14↓_14FYV Strategy generates yield:_14 - Trading fees from LP positions_14 - Farming rewards_14 - Interest from lending_14↓_14Example after 1 month:_14 - YieldToken value: 615.38 → 625.00 (+1.5% return)_14 - Yield earned: ~$10_14↓_14FYV holds:_14 - Original: 615.38 YieldToken_14 - Plus accumulated yield
Phase 3: Price Drop & Auto-Protection
_24FLOW price drops: $1.00 → $0.80 (-20%)_24↓_24ALP detects:_24 - Collateral: 1000 FLOW @ $0.80 = $800 × 0.8 = $640 effective_24 - Debt: 615.38 MOET_24 - New health: 640 / 615.38 = 1.04 (below min 1.1!)_24↓_24ALP triggers rebalancing:_24 - Calculates required repayment_24 - Target debt: $640 / 1.3 = $492.31 MOET_24 - Needs to repay: 615.38 - 492.31 = 123.07 MOET_24↓_24ALP pulls from FYV (TopUpSource):_24 - FYV swaps: 123.07 YieldToken → 123.07 MOET_24 - Sends MOET to ALP_24↓_24ALP repays debt:_24 - New debt: 492.31 MOET_24 - New health: 640 / 492.31 = 1.3 ✓_24↓_24Status:_24 - ALP position: 1000 FLOW, 492.31 MOET debt, HF=1.3_24 - FYV position: ~492 YieldToken remaining_24 - Liquidation prevented! ✓
Phase 4: Price Recovery
_24FLOW price recovers: $0.80 → $1.00_24↓_24ALP detects:_24 - Collateral: 1000 FLOW @ $1.00 = $1000 × 0.8 = $800 effective_24 - Debt: 492.31 MOET_24 - New health: 800 / 492.31 = 1.625 (above max 1.5!)_24↓_24ALP triggers rebalancing:_24 - Can borrow more to reach target health_24 - Target debt: $800 / 1.3 = $615.38 MOET_24 - Can borrow: 615.38 - 492.31 = 123.07 MOET_24↓_24ALP auto-borrows:_24 - Borrows: 123.07 MOET_24 - Pushes to FYV (DrawDownSink)_24↓_24FYV deploys:_24 - Swaps: 123.07 MOET → 123.07 YieldToken_24 - Back to ~615 YieldToken_24↓_24Status:_24 - ALP position: 1000 FLOW, 615.38 MOET debt, HF=1.3_24 - FYV position: ~615 YieldToken generating yield_24 - Fully rebalanced and optimized! ✓
Key Benefits Explained
1. Yield-Powered Liquidation Prevention
Traditional protocol:
_10Price drops → Health factor drops → You must manually:_10 1. Monitor the drop_10 2. Decide: add collateral or repay debt?_10 3. Find liquidity_10 4. Execute transaction_10 5. Hope you're not liquidated first
FCM:
_10Price drops → Health factor drops → System automatically:_10 1. Detects drop instantly_10 2. Calculates exact repayment needed_10 3. Pulls from your yield_10 4. Repays debt_10 5. Restores health_10_10All in one transaction, no intervention needed!
2. Capital Efficiency
Without FCM:
_16Scenario: Have 1000 FLOW, want to generate yield_16_16Option A: Just hold FLOW_16 - Capital: $1000 working_16 - Opportunity cost: Missing yield opportunities_16_16Option B: Deposit in lending protocol_16 - Earn deposit interest: ~3% APY_16 - Capital: $1000 working_16 - Yield: ~$30/year_16_16Option C: Manual yield farming_16 - Borrow against FLOW: ~$750_16 - Deploy to farm: Complex, risky_16 - Must monitor constantly_16 - Risk liquidation
With FCM:
_10Deposit 1000 FLOW → FCM does everything:_10 - Borrow optimal amount: ~$615 MOET_10 - Deploy to best yield: Automatic_10 - Compound returns: Automatic_10 - Prevent liquidation: Automatic_10 - Potential yield: 5-15% APY (varies by strategy)_10_10Capital efficiency: Using collateral to earn yield on borrowed funds_10Risk management: Yield protects against liquidation_10Effort: Set and forget
3. Composability
Each component has value independently, allowing you to choose the level of integration that matches your needs. You can use ALP alone when you want simple lending and borrowing, have your own yield strategies, or need DeFi Actions integration for custom workflows. You can use FYV alone when you want yield aggregation without leverage, or prefer direct yield farming without the complexity of borrowing. You can use FCM together when you want maximum automation with liquidation protection and optimal capital efficiency through the integrated system.
Understanding the Math
Health Factor Calculation
The health factor is the core metric that determines whether your position is safe or at risk of liquidation. It compares the value of your collateral (adjusted by the collateral factor) against the value of your debt.
_10Health Factor = Effective Collateral / Effective Debt_10_10Effective Collateral = Token Amount × Price × Collateral Factor_10Effective Debt = Borrowed Amount × Price_10_10Example:_10 - 1000 FLOW @ $1 each × 0.8 factor = $800 effective collateral_10 - 615.38 MOET @ $1 each = $615.38 effective debt_10 - Health Factor = 800 / 615.38 = 1.30
Target Health Ranges
Different health factor values indicate different states of your position, from dangerous (below 1.0) to overcollateralized (above 1.5). Understanding these ranges helps you know when to take action.
_10Health Factor States:_10_10HF < 1.0 → Liquidatable (immediate danger!)_10HF = 1.0-1.1 → At risk (very close to liquidation)_10HF = 1.1-1.3 → Below target (should rebalance up)_10HF = 1.3 → Target (optimal!)_10HF = 1.3-1.5 → Above target (can borrow more)_10HF > 1.5 → Overcollateralized (should rebalance down)
Borrowing Capacity
This shows how much you can safely borrow while maintaining your target health factor. Borrowing up to this limit ensures you have a safety buffer to protect against price volatility.
_10Maximum Safe Borrow = Effective Collateral / Target Health_10_10Example with target health of 1.3:_10 - Effective collateral: $800_10 - Max borrow: $800 / 1.3 = $615.38 MOET_10_10Why not borrow more?_10 - Need safety buffer for price volatility_10 - Target of 1.3 means 30% buffer above liquidation_10 - If you borrowed $800, health would be 1.0 (liquidatable immediately!)
Learn more: Mathematical Foundations
Next Steps
Now that you understand the basics:
- Learn the architecture: Architecture Overview
- Understand the math: Mathematical Foundations
- Explore components: ALP, FYV, MOET