Sentence → rules
Claude turns your words into a closed set of rules you can read and edit. Anything it can't express, it refuses and names. It never guesses.
Describe it, review the rules, backtest on real candles and paper-trade it in public. Every signal is committed on chain. Real money only when you sign.
{ "timeframe": "5m", "budget_usd": 100, "rules": [ { "when": { "all": [ { "metric": "price_change_pct", "window": "10m", "op": "<=", "value": -2 }, { "metric": "budget_left_usd", "op": ">=", "value": 30 } ] }, "then": { "action": "buy_usd", "usd": 10 }, "cooldown": "30m" } ], "risk": {}}
Buy $25 when the price falls 5% within 1h and no position is open, at most once every 6h. Take profit at +15%, stop loss at −10%.
↑ Choppy, range-bound markets where sharp drops bounce.
↓ Steady downtrends: every dip is followed by a lower one.
15m · 5 parameterstemplateBuy $25 when the price breaks the high of the previous 96 candles (15m) with at least $50,000 of volume in the last hour. Trailing stop 8%, stop loss −6%.
↑ Tokens starting a trend, with fresh volume behind the move.
↓ Fake-outs in thin markets: a wick above the high that reverses.
1h · 2 parameterstemplateBuy $10 every 6h while the budget lasts. Never sells: it measures pure accumulation.
↑ Long horizons on tokens you'd hold anyway; it averages your entry.
↓ Tokens that only go down: it keeps buying all the way.
1h · 3 parameterstemplateBuy $10 at most every 6h, only while the price is below its 24h average. Never sells.
↑ Accumulating a token you like at better prices than plain DCA.
↓ Strong uptrends: the price rarely dips under its average, so it barely buys.
15m · 7 parameterstemplateBuy $40 after a 3% dip in 1h. Sell a quarter of the original position at +20%, +40% and +80%, and the rest at +150%. Stop loss −25%.
↑ Volatile tokens with spikes: it banks gains on the way up.
↓ Slow grinds up: small sells early cap the upside.
15m · 4 parameterstemplateBuy $25 when the price is above its 24h average and no position is open. Once the position is up 20%, a 10% trailing stop protects it. Stop loss −15%.
↑ Trends that run: the trailing stop lets winners ride.
↓ Sideways chop: it rarely arms, and the stop loss does the exiting.
Claude turns your words into a closed set of rules you can read and edit. Anything it can't express, it refuses and names. It never guesses.
Real candles, no lookahead, fills at the next open with DEX fees and constant-product slippage. Same input, same hash.
Every signal and simulated fill is appended, never edited. Each day's rows become one Merkle root, published on chain.
Leaderboard opens as dry runs reach 7 days · first entries expected Nov 3
A dry run enters once its current version has 7 days and 10 signals of public record.
Every rule, signal and simulated fill is public, with its fees and slippage, appended to a record nobody can rewrite, rooted on Solana every day.
On any signal you can open a live quote and sign one swap in your own wallet. Never automatic, never custodial, never mixed into the paper record.
Paper results and real trades never mix. Every real trade is a Jupiter swap you sign in your own wallet.
Remote MCP tools compile_strategy, backtest, get_strategy, leaderboard, and a JSON API for everything on the site.
claude mcp add --transport http dry-run https://dryrun.space/mcp