{"skill":{"slug":"headless-crypto","displayName":"Headless  Crypto trading for agents","summary":"Autonomous trading for AI agents on Solana and BNB Chain. Use when: (1) executing token swaps on DEXs (Raydium, PancakeSwap), (2) checking token prices and b...","description":"---\nname: headless-trading\ndescription: \"Autonomous trading for AI agents on Solana and BNB Chain. Use when: (1) executing token swaps on DEXs (Raydium, PancakeSwap), (2) checking token prices and balances, (3) monitoring liquidity pools, (4) implementing trading strategies, (5) managing portfolio positions. Supports headless execution without browser interaction.\"\n---\n\n# Headless Trading\n\nAutonomous trading toolkit for AI agents on Solana (Raydium) and BNB Chain (PancakeSwap).\n\n## Core Capabilities\n\n### 1. Token Swaps\nExecute swaps on decentralized exchanges without browser interaction:\n- Raydium (Solana): SOL ↔ SPL tokens\n- PancakeSwap (BNB Chain): BNB ↔ BEP20 tokens\n\n### 2. Price Monitoring\nFetch real-time token prices:\n- DEX liquidity pool prices\n- Multiple pair support\n- Slippage calculation\n\n### 3. Portfolio Management\nCheck balances and positions:\n- Native token balances (SOL, BNB)\n- Token holdings across wallets\n- Transaction history\n\n### 4. Strategy Execution\nImplement automated trading strategies:\n- Limit orders (via monitoring + execution)\n- DCA (Dollar Cost Averaging)\n- Stop-loss / Take-profit\n- Arbitrage opportunities\n\n## Quick Start\n\n### Prerequisites\n\n1. **Private key** (environment variable or secure storage)\n2. **RPC endpoint** (public or private node)\n3. **Python 3.8+** with dependencies\n\n### Installation\n\n```bash\npip install solana web3 anchorpy raydium-py base58\npip install web3 pancakeswap-sdk\n```\n\n### Basic Swap Example\n\n```python\nfrom scripts.raydium_swap import swap_on_raydium\n\n# Swap 0.1 SOL for USDC\ntx_hash = swap_on_raydium(\n    input_token=\"SOL\",\n    output_token=\"USDC\",\n    amount=0.1,\n    slippage=1.0  # 1% slippage tolerance\n)\n```\n\n## Workflow Decision Tree\n\n**1. What chain are you trading on?**\n- Solana → Use `raydium_*` scripts + See [references/raydium.md](references/raydium.md)\n- BNB Chain → Use `pancakeswap_*` scripts + See [references/pancakeswap.md](references/pancakeswap.md)\n\n**2. What operation do you need?**\n- Get token price → `get_price.py`\n- Check wallet balance → `get_balance.py`\n- Execute swap → `swap.py`\n- Monitor liquidity → `monitor_pool.py`\n\n**3. What strategy are you implementing?**\n- One-time trade → Direct swap\n- Automated strategy → See [references/strategies.md](references/strategies.md)\n\n## Trading Operations\n\n### Get Token Price\n\n```python\nfrom scripts.get_price import get_token_price\n\n# Get current price of a token\nprice = get_token_price(\n    chain=\"solana\",\n    token_address=\"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v\",  # USDC\n    quote_token=\"SOL\"\n)\nprint(f\"Price: {price} SOL\")\n```\n\n### Check Wallet Balance\n\n```python\nfrom scripts.get_balance import get_balance\n\n# Check SOL balance\nbalance = get_balance(\n    chain=\"solana\",\n    wallet_address=\"YOUR_WALLET_ADDRESS\"\n)\nprint(f\"Balance: {balance} SOL\")\n```\n\n### Execute Swap\n\n```python\nfrom scripts.swap import execute_swap\n\n# Swap tokens with slippage protection\nresult = execute_swap(\n    chain=\"solana\",\n    input_token=\"SOL\",\n    output_token=\"USDC\",\n    amount=0.5,\n    slippage=1.0,\n    private_key=\"YOUR_PRIVATE_KEY\"  # Use env var in production\n)\n```\n\n### Monitor Liquidity Pool\n\n```python\nfrom scripts.monitor_pool import get_pool_info\n\n# Get liquidity pool stats\npool_info = get_pool_info(\n    chain=\"solana\",\n    token_a=\"SOL\",\n    token_b=\"USDC\"\n)\nprint(f\"Liquidity: ${pool_info['liquidity']}\")\nprint(f\"24h Volume: ${pool_info['volume_24h']}\")\n```\n\n## Security Best Practices\n\n### 1. Private Key Management\n\n**NEVER hardcode private keys.** Use environment variables or secure vaults:\n\n```python\nimport os\n\nPRIVATE_KEY = os.getenv(\"TRADING_PRIVATE_KEY\")\nif not PRIVATE_KEY:\n    raise ValueError(\"TRADING_PRIVATE_KEY not set\")\n```\n\n### 2. Slippage Protection\n\nAlways set reasonable slippage limits:\n- Stablecoins: 0.1-0.5%\n- Blue chips: 0.5-1%\n- Low liquidity: 1-3% (risky)\n\n### 3. Transaction Simulation\n\nTest swaps on devnet/testnet first:\n\n```python\nresult = execute_swap(\n    chain=\"solana\",\n    input_token=\"SOL\",\n    output_token=\"USDC\",\n    amount=0.01,  # Small test amount\n    slippage=1.0,\n    simulate=True  # Dry run\n)\n```\n\n### 4. Rate Limiting\n\nRespect RPC rate limits:\n- Public RPCs: ~5 req/sec\n- Private RPCs: Check provider limits\n\n### 5. Error Handling\n\nAlways handle transaction failures:\n\n```python\ntry:\n    tx_hash = execute_swap(...)\n    print(f\"Success: {tx_hash}\")\nexcept InsufficientFundsError:\n    print(\"Not enough balance\")\nexcept SlippageExceededError:\n    print(\"Price moved too much\")\nexcept RPCError as e:\n    print(f\"RPC failed: {e}\")\n```\n\n## Common Patterns\n\n### Pattern 1: Price Monitoring Bot\n\nMonitor token prices and execute when conditions are met:\n\n```python\nfrom scripts.get_price import get_token_price\nfrom scripts.swap import execute_swap\nimport time\n\nTARGET_PRICE = 100  # USDC per token\nCHECK_INTERVAL = 60  # seconds\n\nwhile True:\n    price = get_token_price(chain=\"solana\", token_address=\"...\", quote_token=\"USDC\")\n    \n    if price <= TARGET_PRICE:\n        execute_swap(\n            chain=\"solana\",\n            input_token=\"USDC\",\n            output_token=\"TARGET_TOKEN\",\n            amount=100,\n            slippage=1.0\n        )\n        break\n    \n    time.sleep(CHECK_INTERVAL)\n```\n\n### Pattern 2: DCA (Dollar Cost Averaging)\n\nBuy fixed amounts at regular intervals:\n\n```python\nimport schedule\n\ndef dca_buy():\n    execute_swap(\n        chain=\"solana\",\n        input_token=\"SOL\",\n        output_token=\"BTC\",\n        amount=0.1,  # 0.1 SOL every day\n        slippage=1.0\n    )\n\n# Run daily at 9 AM\nschedule.every().day.at(\"09:00\").do(dca_buy)\n```\n\n### Pattern 3: Stop-Loss\n\nSell when price drops below threshold:\n\n```python\nENTRY_PRICE = 100\nSTOP_LOSS_PERCENT = 10  # 10% loss\n\nwhile True:\n    current_price = get_token_price(...)\n    loss_percent = ((ENTRY_PRICE - current_price) / ENTRY_PRICE) * 100\n    \n    if loss_percent >= STOP_LOSS_PERCENT:\n        execute_swap(...)  # Sell position\n        break\n    \n    time.sleep(60)\n```\n\n## Resources\n\n### scripts/\n\nExecutable Python scripts for trading operations:\n\n- `get_price.py` - Fetch token prices from DEXs\n- `get_balance.py` - Check wallet balances\n- `swap.py` - Execute token swaps\n- `monitor_pool.py` - Get liquidity pool info\n- `raydium_swap.py` - Raydium-specific swap implementation\n- `pancakeswap_swap.py` - PancakeSwap-specific swap implementation\n\n### references/\n\n- `raydium.md` - Raydium DEX API reference and pool addresses\n- `pancakeswap.md` - PancakeSwap DEX API reference\n- `strategies.md` - Detailed trading strategy implementations\n- `rpc_endpoints.md` - List of public/private RPC providers\n\n## Limitations\n\n- **Gas fees**: Transactions require native tokens (SOL, BNB)\n- **Slippage**: High volatility can cause failed transactions\n- **RPC reliability**: Public RPCs may be slow/unstable\n- **MEV**: Transactions may be frontrun on popular pairs\n\n## Troubleshooting\n\n### \"Insufficient funds\"\n- Check wallet balance with `get_balance.py`\n- Ensure enough native token for gas fees\n\n### \"Slippage exceeded\"\n- Increase slippage tolerance (carefully)\n- Wait for lower volatility\n- Split large orders into smaller ones\n\n### \"Transaction failed\"\n- Check RPC endpoint is responsive\n- Verify token addresses are correct\n- Ensure wallet has approval for token spend\n\n### \"Rate limited\"\n- Switch to private RPC\n- Add delays between requests\n- Use multiple RPC endpoints\n","topics":["Browser","Trading"],"tags":{"latest":"1.0.1"},"stats":{"comments":0,"downloads":1043,"installsAllTime":39,"installsCurrent":1,"stars":0,"versions":2},"createdAt":1771545242443,"updatedAt":1779077080210},"latestVersion":{"version":"1.0.1","createdAt":1771545366909,"changelog":"Launching on pumpfun today !","license":null},"metadata":null,"owner":{"handle":"bnbcompanions","userId":"s17bx53n6a2q9j1n1bnfr3kmfs885hzf","displayName":"Crypto Dev","image":"https://avatars.githubusercontent.com/u/256779981?v=4"},"moderation":{"isSuspicious":false,"isMalwareBlocked":false,"verdict":"clean","reasonCodes":["review.llm_review"],"summary":"Review: review.llm_review","engineVersion":"v2.4.24","updatedAt":1779940067164}}