Charters: agents that act for you, inside lines you draw.
A charter is an onchain limit on what an agent may do for you. Four kinds today: Loan Guard, Yield Sweep, Grid Band and Range Keeper.
What a charter is
An onchain limit on what an agent may do for you. You sign it once. It ends on the date you choose, or sooner if you end it. Everything it may do is fixed in its own small contract when you create it: nobody, including Marque, can widen it afterwards. It does one job, and only when the chain shows the condition, read in the same transaction.
The four kinds, one minute each
Loan Guard
If my loan health falls below 1.30, repay my USDT loan back to 1.80, using up to 500 USDT from my wallet, until 8 Dec.
Venus compares what your collateral is worth, weighted the way Venus weights it for liquidation, to what you owe: that is your health, and at 1.00 Venus can liquidate. The guard reads Venus's own number when it acts and repays exactly enough to reach your target, never past your budget. It does not spend on a loan it cannot lift back to 1.00, and it never makes a repayment smaller than its minimum unless that restores your target. Anyone may press its button. It can never borrow or touch your collateral, send money anywhere except your own loan, use more than its budget, or act above the trigger or after the end date.
Yield Sweep
Keep between 200 and 300 USDC in my wallet. Put the rest in Venus in my name, bring it back when I run low, supplying at most 5,000 USDC over the charter's life, until 8 Jan.
Above your ceiling it supplies down to the middle of your band with Venus's mintBehalf, so the vTokens land in your wallet. Below your floor it brings back, from what it supplied, up to the middle. If you borrow that stablecoin on Venus, supplying it would become collateral, so the sweep holds unless you turn on collateral mode with a health limit. Anyone may press its button. It can never move money anywhere but between your wallet and your own Venus balance, touch Venus supply you made yourself, supply more than its lifetime limit, or act after the end date.
Grid Band
Between $560 and $720 on BNB/USDT, buy 50 USDT of BNB at each of 8 levels as the price falls and sell each one a level higher, using at most 1,200 USDT and 2.1 BNB in total, until 8 Dec.
It trades one reviewed PancakeSwap v3 pool, paying the pool straight from your wallet and sending what it buys straight to your wallet. Decisions use the pool's 5-minute average price, never a single trade; every trade has a hard price limit close to that average, and the levels are spaced so that a completed round trip at the worst allowed prices, fees included, still returns at least what it spent. Only agents you name may trade. It can never trade another pair or pool, hold your funds, buy or sell more than its totals, or trade between levels.
Range Keeper
When BNB has been outside my 560 to 640 range for 10 minutes, move the range back around the price, same width. At most 12 moves, at most one an hour, each losing at most 1% at the average price, until 8 Feb.
When the average price has been outside your range, it removes the position, makes one bounded swap in the same pool, and mints the same width around the price. Fees go to your wallet, or into the position if you choose. Each move must keep at least your limit of the value at the average price, or the whole move is cancelled. Only agents you name may move it. It can never send your position or tokens anywhere but back to you, use another pool, move more often or more times than you set, or lose more than your limit per move.
Where your assets are
- Loan Guard, Yield Sweep, Grid Band: in your wallet, under exact allowances to that charter's own contract. Tokens move only at the moment it acts. Yield Sweep's Venus balance is your own vTokens, also in your wallet: you can redeem them in the Venus app at any time.
- Range Keeper: your position NFT moves into your own Range Keeper contract while the charter runs. Take it back any time with End. It mints each new position there and sends everything else to your wallet.
An allowance is a ceiling, not a reservation
If you approve 500 USDT for a charter, nothing is set aside. The money stays in your wallet, and you, other apps and other charters can spend it first. A charter uses what is there when it acts. When two charters draw the same token, My Marque shows them together beside your balance, and says Needs you when their next needs exceed it.
Who presses the button
- Open kinds (Loan Guard, Yield Sweep): anyone, because every possible action is safe for you whoever presses it and whenever.
- Named kinds (Grid Band, Range Keeper): only you and the agents you name, because the moment of a trade has value to whoever chooses it.
- Marque's agents: Keel (Loan Guard), Sluicegate (Yield Sweep), Lattice (Grid Band) and Bound (Range Keeper). Keel, Lattice and Bound act through an Altana session key that can call only your charter's act function, until it ends; anyone can see that key on Altana KeyStore. Sluicegate sends from its own account. A Marque backup acts if they are quiet (on Grid Band and Range Keeper only if you named it).
- Tips: optional, from a separate tip budget, paid after the action and only to a caller who is not you. A tip that cannot be paid is skipped, never blocking the action.
Ending, and recovery without Marque
End charter is one transaction from your wallet, and it works at any time, without Marque. You can clear the allowances in the same step. From the next block, nothing can act.
- Loan Guard, Grid Band:
end()on the charter, then set its allowances to zero, from BscScan's write tab if Marque is down. - Yield Sweep: the same; your vTokens are already in your wallet, so redeem them in the Venus app.
- Range Keeper:
end()sends your position back in the same transaction. After the end date anyone can callrelease()to send it to you.
Limits we state plainly
- The contracts are new and unaudited. Read them and their tests before you rely on one.
- No charter can act while Venus or the pool refuses: a paused market, an unavailable price, or a pool without enough history.
- Loan Guard: a crash faster than a check can still reach liquidation, and a dip that recovers minutes later still triggers a real repayment.
- Yield Sweep: it holds on a market you borrow, unless you choose collateral mode. Venus may not have free cash to pay out at a given moment.
- Grid Band: in a long fall it holds what it bought above the price until the price recovers.
- Range Keeper: a kept range can be worth less than holding the two tokens if the price trends. A kept position does not earn CAKE farm rewards.
Check it yourself
Every charter page has a Check it yourself panel. On BscScan you can read, without trusting Marque:
isCharter(charter)on the kind's factory: true only for charters it made.preview()on the charter: what it would do right now, in the same numbers it acts on.- The agent's key on Altana KeyStore: one contract, one function, until a date.
The source of every contract is in the public repository under contracts/src/charters, with its unit, fuzz, invariant, cross-category, differential and fork tests.