The ELVIS trading bot supports paper trading mode with multi-asset balances. In paper trading mode, the bot starts with $1000 USDT and $1000 BNB for a total portfolio value of $2000.
- USDT: $1,000.00 (for general cryptocurrency trading)
- BNB: $1,000.00 (for Binance ecosystem trading and fee optimization)
- Total Portfolio: $2,000.00
TRADING_MODE=paper # Enable paper trading modeThe paper trading system uses PostgreSQL to track:
- Account balances for multiple assets
- Trade history
- Open positions
- Performance metrics
python reset_paper_trading.pyThis script:
- Clears all trade history
- Clears all open positions
- Resets USDT balance to $1000
- Resets BNB balance to $1000
- Initializes database structure
python check_paper_balances.pyThis script displays:
- Current balance for each asset
- Total portfolio value
- Trading status
- Trade multiple cryptocurrency pairs simultaneously
- Track individual asset balances
- Support for USDT and BNB trading pairs
- Use BNB to pay trading fees for discounts
- Automatic BNB balance management
- Fee optimization for better profitability
- Real-time P&L calculation
- Trade history and statistics
- Portfolio performance metrics
- BTCUSDT (Bitcoin trading)
- BNBUSDT (BNB trading)
- ETHUSDT (Ethereum trading)
- Other major cryptocurrencies
- Fee Discounts: BNB provides trading fee discounts on Binance
- Diversification: Start with exposure to both USDT and BNB
- Ecosystem Benefits: Access to Binance ecosystem features
- Fee Optimization: Automatic use of BNB for fee payments
-
Initialize Paper Trading:
python reset_paper_trading.py
-
Check Status:
python check_paper_balances.py
-
Start Trading:
# Set environment to paper mode export TRADING_MODE=paper # Start the bot python main.py
CREATE TABLE np.account_balances (
id SERIAL PRIMARY KEY,
asset TEXT UNIQUE NOT NULL,
balance REAL NOT NULL DEFAULT 0,
last_updated TIMESTAMP DEFAULT NOW()
);INSERT INTO np.account_balances (asset, balance) VALUES
('USDT', 1000.0),
('BNB', 1000.0);The paper trading system provides real-time monitoring of:
- Current balances
- Open positions
- Trade performance
- Fee costs
- Portfolio growth
To start fresh paper trading:
- Stop the trading bot if running
- Run the reset script:
python reset_paper_trading.py - Verify balances:
python check_paper_balances.py - Restart the trading bot in paper mode
- Paper trading uses simulated trades, no real money is involved
- All trading logic is identical to live trading
- Performance metrics accurately reflect trading strategy effectiveness
- Database persistence ensures trade history survives restarts