Examples
Realistic definitions, one per feature, each tested by Rout's interface suite to parse, match the schema, pass a host's admission and build.
Examples whose name ends in "shadow" or "host-required" need host features that a given deployment may not have.
examples/bond-snipe.json
{
"name": "clean-graduations",
"required": {
"target": "any"
},
"order": {
"quote": "native",
"amount": {
"id": "buy",
"name": "buy",
"mint": "So11111111111111111111111111111111111111112",
"pick": {
"fixed": {
"raw": 1000000000
}
}
},
"slippage_bps": 500
},
"execution": {
"tip_lamports": 1000000,
"nonce": true
},
"limits": {
"quote": "native",
"max_spend_per_day_raw": 5000000000,
"max_open_positions": 4,
"max_open_cost_raw": 4000000000,
"stop_after_loss_raw": 2000000000
},
"user_id": "018f3c1e-0000-7000-8000-000000000001",
"wallets": [
"018f3c20-0000-7000-8000-000000000001"
],
"wallet_policy": "first",
"rules": [
{
"name": "migrated-and-deep",
"firing": "once",
"when": {
"all": [
{
"graduated": {
"venues": {
"one_of": [
"pump-fun"
]
},
"step": "migrated",
"window_slots": 300
}
},
{
"liquidity": {
"quote_mint": "So11111111111111111111111111111111111111112",
"bounds_raw": {
"at_least": 50000000000,
"at_most": null
},
"window_slots": 300
}
},
{
"not": {
"creator_claimed_fees": {
"venues": "any",
"window_slots": 9000
}
}
}
]
}
},
{
"name": "bonded-under-a-cap",
"firing": "once",
"when": {
"all": [
{
"bonded": {
"venues": "any",
"window_slots": 4096
}
},
{
"market_cap": {
"bounds_usd_micros": {
"at_least": null,
"at_most": 600000000000
},
"window_slots": 300
}
}
]
}
}
],
"sells": {
"proceeds": "native",
"rules": [
{
"name": "half-at-plus-50",
"firing": "once",
"when": {
"gain": {
"at_least_bps": 5000,
"window_slots": 150
}
},
"sell": {
"amount": {
"of_entry_bps": 5000
},
"slippage": {
"start_bps": 300,
"max_bps": 1200
}
}
},
{
"name": "stop",
"firing": "once",
"when": {
"loss": {
"at_least_bps": 2500,
"window_slots": 150
}
},
"sell": {
"amount": "all",
"slippage": {
"start_bps": 1000,
"max_bps": 4000
}
}
}
]
}
}sha256 5cd271b9…62296380