Moon Dev's AI Trading Agents System
Expert knowledge for working with Moon Dev's experimental AI trading system that orchestrates 48+ specialized AI agents for cryptocurrency trading across Hyperliquid, Solana (BirdEye), Asterdex, and Extended Exchange.
When to Use This Skill
Use this skill when:
Working with Moon Dev's trading agents repository Need to understand agent architecture and capabilities Running, modifying, or creating trading agents Configuring trading system, exchanges, or LLM providers Debugging trading operations or agent interactions Understanding backtesting with RBI agent Setting up new exchanges or strategies Environment Setup Note
For New Users: This repo uses Python 3.10.9. If using conda, the README shows setting up an environment named tflow, but you can name it whatever you want. If you don't use conda, standard pip/venv works fine too.
Quick Start Commands
Activate your Python environment (conda, venv, or whatever you use)
Example with conda: conda activate tflow
Example with venv: source venv/bin/activate
Use whatever environment manager you prefer
Run main orchestrator (controls multiple agents)
python src/main.py
Run individual agent
python src/agents/trading_agent.py python src/agents/risk_agent.py python src/agents/rbi_agent.py
Update requirements after adding packages
pip freeze > requirements.txt
Core Architecture Directory Structure src/ ├── agents/ # 48+ specialized AI agents (<800 lines each) ├── models/ # LLM provider abstraction (ModelFactory) ├── strategies/ # User-defined trading strategies ├── scripts/ # Standalone utility scripts ├── data/ # Agent outputs, memory, analysis results ├── config.py # Global configuration ├── main.py # Main orchestrator loop ├── nice_funcs.py # Core trading utilities (~1,200 lines) ├── nice_funcs_hl.py # Hyperliquid-specific functions ├── nice_funcs_extended.py # Extended Exchange functions └── ezbot.py # Legacy trading controller
Key Components
Agents (src/agents/)
Each agent is standalone executable Uses ModelFactory for LLM access Stores outputs in src/data/[agent_name]/ Under 800 lines (split if longer)
LLM Integration (src/models/)
ModelFactory provides unified interface Supports: Claude, GPT-4, DeepSeek, Groq, Gemini, Ollama Pattern: ModelFactory.create_model('anthropic')
Trading Utilities
nice_funcs.py: Core functions (Solana/BirdEye) nice_funcs_hl.py: Hyperliquid exchange nice_funcs_extended.py: Extended Exchange (X10)
Configuration
config.py: Trading settings, risk limits, agent behavior .env: API keys and secrets (never expose these) Agent Categories
Trading: trading_agent, strategy_agent, risk_agent, copybot_agent
Market Analysis: sentiment_agent, whale_agent, funding_agent, liquidation_agent, chartanalysis_agent
Content: chat_agent, clips_agent, tweet_agent, video_agent, phone_agent
Research: rbi_agent (codes backtests from videos/PDFs), research_agent, websearch_agent
Specialized: sniper_agent, solana_agent, tx_agent, million_agent, polymarket_agent, compliance_agent, swarm_agent
See AGENTS.md for complete list with descriptions.
Common Workflows 1. Run Single Agent
Activate your environment first
python src/agents/[agent_name].py
Each agent is standalone and can run independently.
- Run Main Orchestrator python src/main.py
Runs multiple agents in loop based on ACTIVE_AGENTS dict in main.py.
- Change Exchange
Edit agent file or config:
EXCHANGE = "hyperliquid" # or "birdeye", "extended"
Then import corresponding functions:
if EXCHANGE == "hyperliquid": from src import nice_funcs_hl as nf elif EXCHANGE == "extended": from src import nice_funcs_extended as nf
- Switch AI Model
Edit src/config.py:
AI_MODEL = "claude-3-haiku-20240307" # Fast, cheap
AI_MODEL = "claude-3-sonnet-20240229" # Balanced
AI_MODEL = "claude-3-opus-20240229" # Most powerful
Or use ModelFactory per-agent:
from src.models.model_factory import ModelFactory model = ModelFactory.create_model('deepseek') # or 'openai', 'groq', etc. response = model.generate_response(system_prompt, user_content, temperature, max_tokens)
- Backtest Strategy (RBI Agent) python src/agents/rbi_agent.py
Provide: YouTube URL, PDF, or trading idea text → DeepSeek-R1 extracts strategy logic → Generates backtesting.py compatible code → Executes backtest, returns metrics
See WORKFLOWS.md for more examples.
Development Rules CRITICAL Rules Keep files under 800 lines - split into new files if longer NEVER move files - can create new, but no moving without asking Use existing environment - don't create new virtual environments, use the one from initial setup Update requirements.txt after any pip install: pip freeze > requirements.txt Use real data only - never synthetic/fake data Minimal error handling - user wants to see errors, not over-engineered try/except Never expose API keys - don't show .env contents Agent Development Pattern
Creating new agents:
1. Use ModelFactory for LLM
from src.models.model_factory import ModelFactory model = ModelFactory.create_model('anthropic')
2. Store outputs in src/data/
output_dir = "src/data/my_agent/"
3. Make independently executable
if name == "main": # Standalone logic here
4. Follow naming: [purpose]_agent.py
5. Add to config.py if needed
Backtesting Use backtesting.py library (NOT built-in indicators) Use pandas_ta or talib for indicators Sample data: src/data/rbi/BTC-USD-15m.csv Configuration Files
config.py: Trading settings
MONITORED_TOKENS, EXCLUDED_TOKENS Position sizing: usd_size, max_usd_order_size Risk: CASH_PERCENTAGE, MAX_LOSS_USD, MAX_GAIN_USD Agent: SLEEP_BETWEEN_RUNS_MINUTES, ACTIVE_AGENTS AI: AI_MODEL, AI_MAX_TOKENS, AI_TEMPERATURE
.env: Secrets (NEVER expose)
Trading APIs: BIRDEYE_API_KEY, MOONDEV_API_KEY, COINGECKO_API_KEY AI: ANTHROPIC_KEY, OPENAI_KEY, DEEPSEEK_KEY, GROQ_API_KEY, GEMINI_KEY Blockchain: SOLANA_PRIVATE_KEY, HYPER_LIQUID_ETH_PRIVATE_KEY, RPC_ENDPOINT Extended: X10_API_KEY, X10_PRIVATE_KEY, X10_PUBLIC_KEY, X10_VAULT_ID Exchange Support
Hyperliquid (nice_funcs_hl.py)
EVM-compatible perpetuals DEX Functions: market_buy(), market_sell(), get_position(), close_position() Leverage up to 50x
BirdEye/Solana (nice_funcs.py)
Solana spot token data and trading Functions: token_overview(), token_price(), get_ohlcv_data() Real-time market data for 15,000+ tokens
Extended Exchange (nice_funcs_extended.py)
StarkNet-based perpetuals (X10) Auto symbol conversion (BTC → BTC-USD) Leverage up to 20x Functions match Hyperliquid API for compatibility
See docs/hyperliquid.md, docs/extended_exchange.md for exchange-specific guides.
Data Flow Pattern Config/Input → Agent Init → API Data Fetch → Data Parsing → LLM Analysis (via ModelFactory) → Decision Output → Result Storage (CSV/JSON in src/data/) → Optional Trade Execution
Common Tasks
Add new package:
Make sure your environment is activated first
pip install package-name pip freeze > requirements.txt
Read market data:
from src.nice_funcs import token_overview, get_ohlcv_data, token_price
overview = token_overview(token_address) ohlcv = get_ohlcv_data(token_address, timeframe='1H', days_back=3) price = token_price(token_address)
Execute trade (Hyperliquid):
from src import nice_funcs_hl as nf nf.market_buy("BTC", usd_amount=100, leverage=10) position = nf.get_position("BTC") nf.close_position("BTC")
Execute trade (Extended):
from src import nice_funcs_extended as nf nf.market_buy("BTC", usd_amount=100, leverage=15) position = nf.get_position("BTC") nf.close_position("BTC")
Git Operations
Current branch: main Main branch for PRs: main
Recent commits:
dc55e90: websearch agent 921ead6: websearch_agent launched and rbi agent updated 6bb55c2: backtest dash
Modified files (current):
.env_example src/agents/swarm_agent.py src/agents/trading_agent.py src/data/ohlcv_collector.py Documentation
Main docs (docs/):
CLAUDE.md: Project overview and development guidelines hyperliquid.md, hyperliquid_setup.md: Hyperliquid exchange extended_exchange.md: Extended Exchange (X10) setup rbi_agent.md: Research-Based Inference agent websearch_agent.md: Web search capabilities swarm_agent.md: Multi-agent coordination [agent_name].md: Individual agent docs
README files:
Root README.md: Project overview src/models/README.md: LLM provider guide Risk Management Risk Agent runs FIRST before any trading decisions Circuit breakers: MAX_LOSS_USD, MINIMUM_BALANCE_USD AI confirmation for position-closing (configurable) Default loop: every 15 minutes (SLEEP_BETWEEN_RUNS_MINUTES) Philosophy
This is an experimental, educational project:
No guarantees of profitability Open source and free YouTube-driven development Community-supported via Discord No official token (avoid scams)
Goal: Democratize AI agent development through practical trading examples.
Additional Resources
For complete agent list, see AGENTS.md For workflow examples, see WORKFLOWS.md For architecture details, see ARCHITECTURE.md
Built with 🌙 by Moon Dev
"Never over-engineer, always ship real trading systems."