This bot is based on @GeekLad's Meteora DLMM Market Making Opportunities Google Sheet and his Solana DEX Volume to TVL Report on Dune. It provides users with useful data on potential market making opportunities on Meteora DLMMs.
The easiest way to use the bot is to simply join the join the 🤖 | dlmm-opps-bot channel on the Meteora Discord Server.
/help
: Display this info again/degen
minliquidity
estimationmode
minfdv
uptrendonly
:
Get a list of DLMM opportunities for tokens not on the strict list.
600
.min
or max
estimated fees. Default is min
.0
.False
(i.e. display all pairs regardless of trend)./strict
minliquidity
estimationmode
minfdv
uptrendonly
:
Get a list of DLMM opportunities for tokens on the strict list.
600
.min
or max
estimated fees. Default is min
.0
.False
(i.e. display all pairs regardless of trend)./bluechip
minliquidity
estimationmode
minfdv
uptrendonly
:
Get a list of DLMM opportunities for "blue chip" tokens.
600
.min
or max
estimated fees. Default is min
.0
.False
(i.e. display all pairs regardless of trend)./pair
pairname
estimationmode
: Get a list of DLMM opportunities
for a specific pair.
TOKEN1-TOKEN2
.min
or max
estimated fees. Default is min
./token
token
estimationmode
: Get a list of DLMM opportunities
for a specific token.
min
or max
estimated fees. Default is min
./all
type
: Get a list of all market making opportunities across all
of Solana.
degen
, strict
, or bluechip
./profit
txid
excludefromleaderboard
: Get the profit for a Meteora DLMM position.
/leaderboard
: Display the position leaderboard.If you want to install the bot on your own Discord server, go to this OAuth URL, and follow the steps to add it to your server:
https://discord.com/oauth2/authorize?client_id=1239340511765074061
The bot is written in TypeScript, and utilizes Bun. Bun
removes all friction for creating a TypeScript project. It also allows async
calls to be made in the entrypoint script, which is great for lazy people like
GeekLad.
The bot uses the Meteora API to obtain DLMM markets, as well as the DEX Screener API. For each market it:
The bot uses the Dune API to obtain data from a Dune query to obtain volume to tvl ratios across all DEXes/AMMs on Solana. Users can filter results down according to their investment preferences.
.env
with the following environment variables:
DISCORD_BOT_TOKEN
: Your Discord bot's tokenDUNE_API_KEY
: Your Dune API keyDLMM_REFRESH_MINUTES
: The number of minutes to wait between refreshes for
DLMM opportunities (defaults to 15 minutes)DUNE_REFRESH_MINUTES
: The number of minutes to wait between refreshes for
all opportunities (defaults to 60 minutes)ENABLE_DUNE_REFRESH
: Flag to enable the re-running of the Dune query.
This will cost API credits.DEBUG
: Flag to disable Dune, to avoid spending credits while testing out
other stuffRPC_MAX_TPS
: Maximium RPC requests per second (defaults to 10)METEORA_API_MAX_TPS
: Maximum Meteora requests per second (defaults to 10)./pm2-start.sh
./pm2-stop.sh
npx pm2
(npx pm2 status
, npx pm2 log
, etc.)To compile the app to use in Google Sheets, run ./build-gs.sh
. This will
output the google-app-script.gs
file, which will provide a valid Google App
Script that can be used in Google Sheets.
@MeteoraAG for creating Meteora
@GeekLad for creating the opportunity Google Sheet and this bot
@Foxtrot for looking at Geeklad's Google Apps script, and modifying it to create a Discord bot and inspiring GeekLad to create is own and open sourcing it.
@benchow.sol for suggesting adding the trend indicator