Three simple, honestly documented strategies. No ML theater — every entry/exit rule is
readable in one file, and every strategy's meta.edge / meta.failureModes
is a live object on the class, not a comment that can drift from the code.
src/strategies/launch-sniper.ts · quote token: WETH
Edge hypothesis: the first minutes after a NOXA instant-listing are the most information-rich and most volatile window a memecoin ever has. A disciplined buyer who only touches round-trippable, non-deployer-heavy launches, and exits mechanically instead of falling in love, harvests a slice of that opening volatility. The edge is speed + discipline, not prediction.
maxRoundTripLossPct (default 35%) of value is rejected.maxDeployerPct (default 15%) of total supply.maxLaunchAgeSeconds (default 5 min) are considered.takeProfitPct (default +60%)stopLossPct (default −35%)maxHoldSeconds (default 30 min), regardless of PnLsrc/strategies/momentum.ts · quote token: USDG
Edge hypothesis: a token that has already graduated to a locked Uniswap v3 pool survived the highest-mortality phase. A subsequent breakout — price up sharply over a short lookback — reflects real incoming demand rather than launch-day noise, and trend- following it with a trailing stop captures the middle of the move while giving back only the tail.
Price gain over lookbackSamples ticks (default 6) exceeds breakoutPct
(default 15%) → buy entryUsdg (default $10) worth.
trailingStopPct (default 20%) off the post-entry peakmaxHoldSeconds (default 60 min)src/strategies/premium-watch.ts · quote token: USDG · alerts-only by default
Edge hypothesis: Stock Token pools are much thinner than the underlying equity market, so DEX price can drift from the Chainlink oracle when flow is one-sided. If the drift is a liquidity artifact, buying the discount and later selling back at fair captures the reversion as the pool re-equilibrates.
enableTrading: true in its params and
HOOD_STOCK_TOKEN_ELIGIBLE=true in the environment. Missing either keeps it
strictly alerts-only, which is the default and the recommended mode. Displaying spread data
and alerting are never gated.
Spread = (dexPrice - oracle) / oracle, in bps. Alerts when
|spread| >= alertThresholdBps (default 50bps). Trades a discount (DEX cheap)
when spread <= -tradeThresholdBps (default 150bps) — only in eligible+opted-in
configuration.
exitThresholdBps (default 20bps)maxHoldSeconds (default 2h)