A free and open-source trading bot built on the AxiomTrade API with comprehensive features for token sniping, wallet tracking, and automated trading.
- Token Sniping: Real-time new token detection and automated buying
- Wallet Tracking: Monitor specific wallets for copy trading opportunities
- Take-Profit & Stop-Loss: Automated position management with customizable rules
- Portfolio Management: Track and manage multiple token positions
- Risk Management: Built-in safeguards and position sizing
- Multi-Exchange Support: Primary focus on AxiomTrade with extensible architecture
- Real-time WebSocket: Live price feeds and transaction monitoring
- Discord Integration: Notifications and bot control via Discord
- Database Tracking: Persistent storage for trades, profits, and analytics
- Backtesting: Test strategies against historical dataaweso
- Configuration Management: Flexible YAML-based configuration
AxiomTradeBot/
βββ axiomtradeapi/ # AxiomTrade API wrapper (existing)
βββ bot/ # Main bot modules
β βββ core/ # Core bot functionality
β βββ strategies/ # Trading strategies
β βββ monitoring/ # Price and wallet monitoring
β βββ risk_management/ # Risk and position management
β βββ notifications/ # Alert and notification systems
βββ config/ # Configuration files
βββ data/ # Database and data storage
βββ tests/ # Test suite
βββ examples/ # Usage examples and tutorials
βββ docs/ # Documentation
-
Clone the repository
git clone https://github.com/ChipaDevTeam/AxiomTradeBot.git cd AxiomTradeBot
-
Create virtual environment
python -m venv .venv .venv\Scripts\activate # Windows # source .venv/bin/activate # Linux/Mac
-
Install dependencies
pip install -r requirements.txt
-
Configure the bot
cp config/config.example.yaml config/config.yaml # Edit config/config.yaml with your settings
Create a config/config.yaml
file with your settings:
# AxiomTrade API Configuration
axiom_trade:
email: "your-email@example.com"
password: "your-base64-encoded-password"
# Trading Configuration
trading:
default_buy_amount: 0.1 # SOL
max_position_size: 1.0 # SOL
take_profit_percentage: 50.0
stop_loss_percentage: 20.0
# Token Sniping
sniping:
enabled: true
min_liquidity: 5.0 # SOL
max_buy_tax: 10.0 # %
max_sell_tax: 10.0 # %
# Notifications
notifications:
discord:
enabled: true
webhook_url: "your-discord-webhook-url"
from bot.core.trading_bot import AxiomTradingBot
from bot.strategies.token_sniper import TokenSniper
from bot.strategies.wallet_tracker import WalletTracker
# Initialize the bot
bot = AxiomTradingBot(config_path="config/config.yaml")
# Add token sniping strategy
sniper = TokenSniper(bot)
bot.add_strategy(sniper)
# Add wallet tracking strategy
tracker = WalletTracker(bot, target_wallets=["wallet_address_1", "wallet_address_2"])
bot.add_strategy(tracker)
# Start the bot
await bot.start()
from bot.strategies.token_sniper import TokenSniper
# Configure token sniper
sniper_config = {
"buy_amount": 0.05, # SOL
"min_liquidity": 10.0,
"max_buy_tax": 5.0,
"take_profit": 100.0, # %
"stop_loss": 15.0 # %
}
sniper = TokenSniper(bot, config=sniper_config)
await sniper.start()
from bot.strategies.wallet_tracker import WalletTracker
# Track profitable wallets
profitable_wallets = [
"11111111111111111111111111111112", # System program
"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" # Token program
]
tracker = WalletTracker(
bot,
target_wallets=profitable_wallets,
copy_percentage=50.0, # Copy 50% of their trade size
min_trade_size=0.01 # Minimum 0.01 SOL trades
)
await tracker.start()
pytest tests/
black bot/ tests/
flake8 bot/ tests/
- Create a new strategy class inheriting from
BaseStrategy
- Implement required methods:
initialize()
,execute()
,cleanup()
- Add your strategy to the bot configuration
Example:
from bot.core.base_strategy import BaseStrategy
class MyCustomStrategy(BaseStrategy):
async def initialize(self):
# Setup strategy
pass
async def execute(self):
# Main strategy logic
pass
async def cleanup(self):
# Cleanup resources
pass
We welcome contributions from the community! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
- Follow the existing code style and formatting
- Add tests for new features
- Update documentation as needed
- Ensure all tests pass before submitting
- Token Sniping
- Wallet Tracking
- Take-Profit & Stop-Loss
- Basic Risk Management
- Advanced Technical Analysis
- Machine Learning Models
- Multi-DEX Support
- Advanced Portfolio Optimization
- Web Dashboard Interface
- Mobile App
- Advanced Backtesting Engine
- Community Signal Sharing
- DeFi Yield Farming Integration
This software is for educational and research purposes only. Trading cryptocurrencies involves substantial risk and may result in significant financial losses. Always do your own research and never invest more than you can afford to lose.
This project is licensed under the MIT License - see the LICENSE file for details.
- AxiomTrade for providing the API
- The open-source community for inspiration and tools
- All contributors and testers
- Discord: Join our community
- Issues: GitHub Issues
- Documentation: Full Documentation
Built with β€οΈ by the community, for the community