Setup Guide
Get Xiznit Bot running on your own server in 30–45 minutes. Follow each step in order. If you get stuck, email support@xiznit-bot.com.
Create Your VPS Server
Your bot needs a server that runs 24/7. DigitalOcean offers a $6/month cloud server (called a Droplet) that is perfect for Xiznit Bot.
1.1 — Create a DigitalOcean Account
Go to digitalocean.com and sign up. You can use a credit card or PayPal.
1.2 — Create a Droplet
- Click Create in the top right → select Droplets
- Choose the region closest to you
- Under image, select Ubuntu 24.04 LTS
- Under size, choose Basic → $6/month (1GB RAM)
- Under authentication, choose Password and set a strong password
- Click Create Droplet and wait ~60 seconds
- Copy your Droplet's IP address — you'll need it shortly
1.3 — Connect to Your Server
Click the Console button in DigitalOcean to open a browser terminal. Log in with username root and the password you set.
Tip: Save your IP address and root password somewhere safe. You'll need these every time you log in to manage the bot.
Run the Installer
One command installs everything automatically — Docker, the bot, and all dependencies. Replace YOUR_LICENSE_KEY with the key from your purchase email.
Paste this single command into your server terminal
The installer will: validate your license key, install Docker automatically if needed, download the bot image, and start it — all in one shot. Takes about 2 minutes.
When complete you'll see your Webhook URL printed on screen. Your bot is now running 24/7 and will auto-update whenever we release new versions.
Verify it's running (optional)
You should see xiznit-bot listed with status Up.
Set Up Broker API Keys
Choose your broker below. You only need to set up one. Both are supported — Alpaca for stocks & crypto, Tradier for stocks, options & futures.
Alpaca supports stocks and crypto. Paper trading is completely free with no deposit required — perfect for testing.
- Go to alpaca.markets and create a free account
- Click Paper Trading in the left sidebar
- Click Your API Keys on the right side
- Click Generate New Key
- Copy your API Key ID and Secret Key — save them somewhere safe, the secret is only shown once
- For live trading, switch to Live Trading and repeat
Tradier supports stocks, options, and futures. Free API access — no monthly fee for the API itself.
- Go to tradier.com and create a free account
- Complete identity verification (takes 1 business day)
- Once approved, log in and go to Settings → API Access
- Copy your Access Token — this is your TRADIER_TOKEN
- Copy your Account ID from the top of your account page
- For paper trading, use the Sandbox Token instead
⚠ Futures: Futures trading on Tradier requires a separate Tradier Futures account in addition to the standard brokerage account.
Add Your Broker API Keys
The installer created your config file at /opt/xiznit-bot/config.env. Open it and add your broker API keys, then restart the bot.
4.1 — Open the config file
4.2 — Fill in your broker details
Save with Ctrl+X → Y → Enter
Using Tradovate? Leave the API keys blank. After the bot starts, connect your Tradovate account via the dashboard at http://YOUR_SERVER_IP:8000.
4.3 — Restart the bot to apply changes
Your bot is now configured and running 24/7. It will auto-update whenever we release new versions — no action needed on your end.
Set Up TradingView Alerts
Configure TradingView to fire your strategy signals directly to your bot's webhook URL. This is where automation happens.
5.1 — Your Webhook URL
Replace YOUR_SERVER_IP with your DigitalOcean Droplet's IP address.
5.2 — Create a TradingView Alert
- Open TradingView and load your strategy on a chart
- Click the Alert button (clock icon) in the top toolbar
- Set the Condition to your strategy signal
- Under Actions, check Webhook URL
- Paste your webhook URL into the field
- Under Message, paste the JSON payload (see examples below)
- Click Create
5.3 — Example Payloads
Basic buy order:
Full bracket order with TP and SL:
Close all positions (EOD flatten):
Verify & Test
6.1 — Check Bot Health
Open a browser and go to:
You should see: {"status":"online","bot":"Xiznit-Trading-Bot"} — this confirms your bot is live.
6.2 — Send a Test Webhook
You should get back: {"status":"received","broker_response":{...}}
6.3 — View Live Logs
JSON Field Reference
Only "ticker" and "action" are required. All other fields are optional.
| Field | Type | Required | Description |
|---|---|---|---|
| "ticker" | string | YES | Trading symbol (e.g. BTCUSDT, AAPL, MNQ1!) |
| "action" | string | YES | Trade action: buy, sell, close, close_all, exit, update_sl |
| "price" | number | optional | Current price. Use {{close}} in TradingView. Logged only. |
| "qty" | number | optional | Number of shares/contracts. Defaults to bot preset if omitted. |
| "lots" | number | optional | Alternative to qty. Some strategies use "lots" instead. |
| "sl" | number | optional | Stop loss price. Used with update_sl action. |
| "tp" | string | optional | Take profit level: "TP1", "TP2", or "TP3". Used with exit action. |
| "reason" | string | optional | Close reason: eod_flatten, sl, max_duration, weekend_gap, blackout |
| "side" | string | optional | Explicit side override: "buy" or "sell" |
| "comment" | string | optional | Strategy label. Logged but not acted on. |
| "strategy" | string | optional | Strategy name for logging purposes. |
| "interval" | string | optional | Timeframe label (e.g. "15m", "1h"). Logged only. |
Commands Reference
Troubleshooting
Bot won't start
Check your license key is correct in config.env. Run docker logs xiznit-bot to see the error message.
Orders not executing
Check your API keys are correct. Make sure TRADING_MODE matches your account type (paper vs live). Verify your broker account is active and funded if using live mode.
TradingView alerts not firing
Make sure your webhook URL is correct and includes the correct IP address. Check that port 8000 is open on your server. Verify your JSON payload is valid using a JSON validator.
Invalid license key error
Email support@xiznit-bot.com with your license key and order confirmation and we'll verify it within 24 hours.
Bot stopped unexpectedly
Run docker-compose up -d to restart. The restart: always setting means this should happen automatically after server reboots.
Download the PDF Guide
Prefer a printable version? Download the complete setup guide as a PDF.
↓ Download PDF Guide