Bot & Automation
Market AI
/root/hermes-projects/Market AI
README.md
text
# Meme Coin Trading Bot Telegram bot dan internal dashboard khusus meme coin. Project ini fokus pada realtime token discovery, risk-first analysis, paper trading, dan guarded live execution melalui executor eksternal. Bot tidak memberi jaminan profit. Semua sinyal bersifat probabilistik dan live trade dikunci oleh environment variable serta konfirmasi Telegram. ## Fitur - Meme coin scanner berbasis DexScreener untuk pair metrics, liquidity, volume, buy/sell pressure, dan momentum. - Scoring kandidat dengan verdict `PRIORITY_WATCH`, `RESEARCH`, atau `SKIP`. - Analisis token lewat command Telegram dan pertanyaan bebas. - Trade preview untuk `/buy` dan `/sell` dengan confirm/cancel. - Paper trading sebagai default runtime. - Live execution opsional lewat `TRADE_EXECUTOR_URL` dan `TRADE_EXECUTOR_TOKEN`. - Optional Jupiter quote untuk Solana. - AI risk review opsional via GitHub Models. - Admin web Next.js untuk status provider dan guardrail runtime. ## Struktur Project ```text apps/ api/ Fastify API untuk scanner, analysis, quote, execute, health bot/ Telegram bot memecoin-only worker/ BullMQ worker untuk meme scan, analysis, alert scan admin-web/ Next.js internal dashboard packages/ core/ Types, constants, scoring engine, formatter, validation database/ Prisma schema untuk token, scan, trade, position, alert provider-adapters/ DexScreener, mock fallback, trade executor, AI provider prompts/ Prompt AI risk review queue/ Queue names docs/ Product, architecture, operations, security notes ``` ## File Penting - `apps/bot/src/index.ts`: menu Telegram, scanner, analysis, buy/sell preview, confirm/cancel trade. - `apps/api/src/server.ts`: endpoint `/meme/scan`, `/meme/search`, `/meme/analyze`, `/trade/quote`, `/trade/execute`. - `packages/core/src/analysis-engine.ts`: scoring, filtering, mode inference, signal generation. - `packages/provider-adapters/src/dexscreener.ts`: adapter DexScreener. - `packages/provider-adapters/src/trade-executor.ts`: paper/live executor guardrail. - `packages/database/prisma/schema.prisma`: schema persistence memecoin. - `.env.example`: daftar env tanpa secret. ## Install ```bash corepack enable pnpm install --no-frozen-lockfile pnpm db:generate ``` ## Jalankan ```bash cp .env.example .env nano .env docker compose up --build -d ``` Telegram command utama: ```text /scan solana /top /analyze BONK /buy TOKEN_ADDRESS 0.05 /sell TOKEN_ADDRESS 25 /settings ``` ## Build dan Quality Gate ```bash pnpm typecheck pnpm lint pnpm test pnpm build ``` ## Environment Variable - `TELEGRAM_BOT_TOKEN`: token BotFather. - `DATABASE_URL`: koneksi PostgreSQL container. - `REDIS_URL`: koneksi Redis container. - `TRADING_MODE`: `paper` atau `live`; default wajib `paper`. - `DEFAULT_SLIPPAGE_BPS`: default slippage, misalnya `300` untuk 3%. - `DEXSCREENER_BASE_URL`: default `https://api.dexscreener.com`. - `TRADE_EXECUTOR_URL`: endpoint executor live eksternal. - `TRADE_EXECUTOR_TOKEN`: bearer token executor live. - `JUPITER_API_BASE_URL`: default `https://api.jup.ag`. - `JUPITER_API_KEY`: optional untuk quote/rate limit Jupiter. - `GITHUB_MODELS_TOKEN`: optional untuk AI risk review. ## Checklist Testing Manual - `/start` menampilkan menu memecoin-only. - `/scan solana` menampilkan kandidat atau empty state. - `/analyze BONK` menghasilkan analysis card dengan warning dan disclaimer. - Free text seperti `BONK bagus dibeli?` tetap menghasilkan analysis. - `/buy TOKEN_ADDRESS 0.05` membuat trade preview mode paper. - Tombol `Confirm` pada preview menghasilkan paper trade result. - `/buy TOKEN_ADDRESS 0.05 live` ditolak jika executor belum dikonfigurasi. - `/alert` menampilkan format alert. - `/settings` menampilkan trading mode runtime dan slippage. - API `/health`, `/meme/scan`, dan `/providers/status` merespons. ## Saran Pengembangan Berikutnya - Tambahkan persistence penuh untuk scan run, trade order, dan positions. - Hubungkan alert worker ke scheduler dan Telegram notification. - Bangun executor live terpisah dengan wallet custody yang diaudit. - Tambahkan rug-check provider, holder distribution, token lock, dan honeypot scanner. - Tambahkan dashboard positions dan PnL dari database.