
Trading Automation
headless-trading
Headless Trading is an autonomous, headless toolkit for AI agents to execute on-chain trading across Solana (Raydium) and BNB Chain (PancakeSwap). It provides programmatic token swaps without browser interaction, real-time price retrieval from DEX liquidity pools with multi-pair support and slippage
Overview
Headless Trading is an autonomous, headless toolkit for AI agents to execute on-chain trading across Solana (Raydium) and BNB Chain (PancakeSwap).
Headless Trading is an autonomous, headless toolkit for AI agents to execute on-chain trading across Solana (Raydium) and BNB Chain (PancakeSwap). It provides programmatic token swaps without browser interaction, real-time price retrieval from DEX liquidity pools with multi-pair support and slippage calculation, wallet and portfolio inspection (native balances, token holdings, transaction history), and automated strategy execution including limit-style orders (monitor-and-execute), DCA, stop-loss/take-profit, and arbitrage detection. Designed for secure, scriptable deployment, it requires a private key, RPC endpoint, and Python environment and ships with ready-to-use scripts for price queries, swaps, balance checks, and pool monitoring. Core advantages are low-latency on-chain execution, multi-chain interoperability, and rapid integration for algorithmic trading, portfolio rebalancing, and automated market strategies.
Skill.md
How this skill works
Headless Trading is an autonomous, headless toolkit for AI agents to execute on-chain trading across Solana (Raydium) and BNB Chain (PancakeSwap). It provides programmatic token swaps without browser interaction, real-time price retrieval from DEX liquidity pools with multi-pair support and slippage
Headless Trading
Autonomous trading toolkit for AI agents on Solana (Raydium) and BNB Chain (PancakeSwap).
Core Capabilities
1. Token Swaps
Execute swaps on decentralized exchanges without browser interaction:
- Raydium (Solana): SOL ↔ SPL tokens
- PancakeSwap (BNB Chain): BNB ↔ BEP20 tokens
2. Price Monitoring
Fetch real-time token prices:
- DEX liquidity pool prices
- Multiple pair support
- Slippage calculation
3. Portfolio Management
Check balances and positions:
- Native token balances (SOL, BNB)
- Token holdings across wallets
- Transaction history
4. Strategy Execution
Implement automated trading strategies:
- Limit orders (via monitoring + execution)
- DCA (Dollar Cost Averaging)
- Stop-loss / Take-profit
- Arbitrage opportunities
Quick Start
Prerequisites
- Private key (environment variable or secure storage)
- RPC endpoint (public or private node)
- Python 3.8+ with dependencies
Installation
pip install solana web3 anchorpy raydium-py base58
pip install web3 pancakeswap-sdk
Basic Swap Example
from scripts.raydium_swap import swap_on_raydium
# Swap 0.1 SOL for USDC
tx_hash = swap_on_raydium(
input_token="SOL",
output_token="USDC",
amount=0.1,
slippage=1.0 # 1% slippage tolerance
)
Workflow Decision Tree
1. What chain are you trading on?
- Solana → Use
raydium_*scripts + See references/raydium.md - BNB Chain → Use
pancakeswap_*scripts + See references/pancakeswap.md
2. What operation do you need?
- Get token price →
get_price.py - Check wallet balance →
get_balance.py - Execute swap →
swap.py - Monitor liquidity →
monitor_pool.py
3. What strategy are you implementing?
- One-time trade → Direct swap
- Automated strategy → See references/strategies.md
Trading Operations
Get Token Price
from scripts.get_price import get_token_price
# Get current price of a token
price = get_token_price(
chain="solana",
token_address="EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", # USDC
quote_token="SOL"
)
print(f"Price: {price} SOL")
Check Wallet Balance
from scripts.get_balance import get_balance
# Check SOL balance
balance = get_balance(
chain="solana",
wallet_address="YOUR_WALLET_ADDRESS"
)
print(f"Balance: {balance} SOL")
Execute Swap
from scripts.swap import execute_swap
# Swap tokens with slippage protection
result = execute_swap(
chain="solana",
input_token="SOL",
output_token="USDC",
amount=0.5,
slippage=1.0,
private_key="YOUR_PRIVATE_KEY" # Use env var in production
)
Monitor Liquidity Pool
from scripts.monitor_pool import get_pool_info
# Get liquidity pool stats
pool_info = get_pool_info(
chain="solana",
token_a="SOL",
token_b="USDC"
)
print(f"Liquidity: ${pool_info['liquidity']}")
print(f"24h Volume: ${pool_info['volume_24h']}")
Security Best Practices
1. Private Key Management
NEVER hardcode private keys. Use environment variables or secure vaults:
import os
PRIVATE_KEY = os.getenv("TRADING_PRIVATE_KEY")
if not PRIVATE_KEY:
raise ValueError("TRADING_PRIVATE_KEY not set")
2. Slippage Protection
Always set reasonable slippage limits:
- Stablecoins: 0.1-0.5%
- Blue chips: 0.5-1%
- Low liquidity: 1-3% (risky)
3. Transaction Simulation
Test swaps on devnet/testnet first:
result = execute_swap(
chain="solana",
input_token="SOL",
output_token="USDC",
amount=0.01, # Small test amount
slippage=1.0,
simulate=True # Dry run
)
4. Rate Limiting
Respect RPC rate limits:
- Public RPCs: ~5 req/sec
- Private RPCs: Check provider limits
5. Error Handling
Always handle transaction failures:
try:
tx_hash = execute_swap(...)
print(f"Success: {tx_hash}")
except InsufficientFundsError:
print("Not enough balance")
except SlippageExceededError:
print("Price moved too much")
except RPCError as e:
print(f"RPC failed: {e}")
Common Patterns
Pattern 1: Price Monitoring Bot
Monitor token prices and execute when conditions are met:
from scripts.get_price import get_token_price
from scripts.swap import execute_swap
import time
TARGET_PRICE = 100 # USDC per token
CHECK_INTERVAL = 60 # seconds
while True:
price = get_token_price(chain="solana", token_address="...", quote_token="USDC")
if price <= TARGET_PRICE:
execute_swap(
chain="solana",
input_token="USDC",
output_token="TARGET_TOKEN",
amount=100,
slippage=1.0
)
break
time.sleep(CHECK_INTERVAL)
Pattern 2: DCA (Dollar Cost Averaging)
Buy fixed amounts at regular intervals:
import schedule
def dca_buy():
execute_swap(
chain="solana",
input_token="SOL",
output_token="BTC",
amount=0.1, # 0.1 SOL every day
slippage=1.0
)
# Run daily at 9 AM
schedule.every().day.at("09:00").do(dca_buy)
Pattern 3: Stop-Loss
Sell when price drops below threshold:
ENTRY_PRICE = 100
STOP_LOSS_PERCENT = 10 # 10% loss
while True:
current_price = get_token_price(...)
loss_percent = ((ENTRY_PRICE - current_price) / ENTRY_PRICE) * 100
if loss_percent >= STOP_LOSS_PERCENT:
execute_swap(...) # Sell position
break
time.sleep(60)
Resources
scripts/
Executable Python scripts for trading operations:
get_price.py- Fetch token prices from DEXsget_balance.py- Check wallet balancesswap.py- Execute token swapsmonitor_pool.py- Get liquidity pool inforaydium_swap.py- Raydium-specific swap implementationpancakeswap_swap.py- PancakeSwap-specific swap implementation
references/
raydium.md- Raydium DEX API reference and pool addressespancakeswap.md- PancakeSwap DEX API referencestrategies.md- Detailed trading strategy implementationsrpc_endpoints.md- List of public/private RPC providers
Limitations
- Gas fees: Transactions require native tokens (SOL, BNB)
- Slippage: High volatility can cause failed transactions
- RPC reliability: Public RPCs may be slow/unstable
- MEV: Transactions may be frontrun on popular pairs
Troubleshooting
"Insufficient funds"
- Check wallet balance with
get_balance.py - Ensure enough native token for gas fees
"Slippage exceeded"
- Increase slippage tolerance (carefully)
- Wait for lower volatility
- Split large orders into smaller ones
"Transaction failed"
- Check RPC endpoint is responsive
- Verify token addresses are correct
- Ensure wallet has approval for token spend
"Rate limited"
- Switch to private RPC
- Add delays between requests
- Use multiple RPC endpoints
Best used for
When to use it
Headless Trading is an autonomous, headless toolkit for AI agents to execute on-chain trading across Solana (Raydium) and BNB Chain (PancakeSwap). It provides programmatic token swaps without browser interaction, real-time price retrieval from DEX liquidity pools with multi-pair support and slippage

01 · PRE-MEETING
Prepare a decision brief
Turn scattered evidence into a structured case before an investment committee meeting.

02 · TEAM WORKFLOW
Standardize handoffs
Create consistent research outputs across analysts, portfolio managers, and agents.

03 · LIVE UPDATE
Refresh the thesis
Update scenarios after a new catalyst, KPI release, or earnings result.
Community notes
Built to improve with use.
Feedback will appear here as this skill is used and reviewed.
Discover more
Related skills
View allquant-analysis
Quantitative Analysis Skill provides an end-to-end toolkit for quantitative finance research and production analysis. It automates data ingestion, interactive analysis in Jupyter (jupyter_execute,…
bankr
Bankr enables executing crypto trading and DeFi operations via natural-language commands. It offers two integration options: a batteries-included Bankr CLI and a REST API at https://api.bankr.bot,…
pine-backtester
pine-backtester provides comprehensive backtesting for Pine Script indicators and strategies. Use it to append performance metrics, analyze trades, generate equity curves, compute win rates, track…