DRIFT started as two ideas that almost merged completely. DRIP was an on-chain yield optimizer. DRIFT was the AI trading layer that would sit on top. We merged them, scoped the MVP to what we could verify in a weekend, and shipped: the Python engine, Bybit CeFi execution, and MacroGuard — an on-chain risk guard on BNB Chain.
Why BNB Chain
BNB Smart Chain is EVM-compatible, cheap and fast enough that recording every bot decision on-chain is practical, and it has deep stablecoin liquidity (USDT, USDC, FDUSD), PancakeSwap as its main DEX and Chainlink price feeds. That makes it a natural home for a transparent, non-custodial risk layer that sits under an off-chain trading engine.
What we built (and shelved)
The DRIP contracts exist, are tested (17 forge tests), and are not yet deployed. Three components:
- AgentController.sol — enforces rebalance bounds on-chain: max allocation per asset, turnover limit, correlation check, drawdown stop. Seven invariants (I1 through I7).
- Venue adapters — lending-market supply of stablecoins for yield on BNB Chain.
- DripVault.sol — ERC-4626 NAV accounting, non-custodial deposits.
None of that is in DRIFT today beyond MacroGuard. The MVP is CeFi-only, in-memory, no persistence. But the architecture is compatible: the signal layer DRIFT runs on Bybit can be replicated as a signed intent that the on-chain AgentController validates before executing a venue-adapter rebalance.
What is next
The roadmap: a strategy that routes idle capital into stablecoin yield while the bot is flat, managed by an on-chain risk guard that cannot be overridden by a dashboard toggle. The alpha is generated off-chain (Python, Bybit signals). The safety floor is on-chain (BNB Chain, AgentController). Neither can be gamed without changing both.
A trading system whose risk controls live on-chain is categorically harder to manipulate than one that lives in a Python process. That is the thesis.