Beginner-Friendly Guide

Set Up the unCoded Trading Bot on Your Own Server

Run the bot on your own server and connect it to your exchange -- without writing a single line of code.

Your Own Server

In Germany

Secured Exchange API

Sub-account + IP whitelist

Automated Trading

Dashboard + optional Telegram

Quick Glossary

Part 1

Before You Start -- Mandatory Prep

Without these three points the setup won't work. Skip them if you already actively use your exchange.

Prep A — Complete Exchange KYC

Outcome: A fully verified exchange account (required for APIs and sub-accounts).

Trading APIs and sub-accounts are only available to fully verified exchange users.

Prep B — Enable 2FA

Outcome: Two-factor authentication active on your exchange account.

Your exchange requires 2FA before you can create any API keys.

If you lose your phone without a backup key, you will lose access to your account. A YubiKey hardware key adds even stronger protection.

Prep C — Fund with USDC or FDUSD

Outcome: Quote currency ready to transfer into your sub-account.

The bot trades against a quote currency that must be in the sub-account before launch.

Part 2

Step-by-Step Setup

Fourteen steps from server purchase to a fully running bot.

1

Buy a Server on Zeabur

Outcome: A running server in Germany with its own IPv4 address.

  • Open the Zeabur dashboard and sign in with Google.
  • Click 'Buy More Servers'.
  • Select Hetzner in Germany (around 16 USD / month).
  • Specs: 4 vCPUs, location Germany, dedicated IP.

Safety net: within 7 days you can refund the server. You can also disable Auto-Renew if you only want to test for one month. Boot time is about 3–4 minutes.

Result: Server is running and the IPv4 address is noted.

2

Open the unCoded Template

Outcome: The Zeabur form open and ready to fill in.

  • In Zeabur go to 'Projects' → 'Generate Project'.
  • Under 'Deploy New Service' search for 'uncoded'.
  • Select the server you just bought.

Don't fill anything in yet — we'll collect the required values in the next steps.

3

Create an Exchange Sub-Account

Outcome: A second exchange account cleanly separated from your main account.

  • Click your profile picture in your exchange (top right).
  • Click 'Sub Accounts' (or equivalent) in the menu.
  • 'Create Sub Account' → 'Create with Mail'.
  • Enter a second email address and a password.
  • Enable 'Switchable' so you can swap between main and sub via one click.

4

Create an API Key on Your Exchange

Outcome: API Key and Secret Key entered into the Zeabur template.

Never enable withdrawal permissions on the API. Trading bots only need read + trade rights. The IP whitelist and trading permission are intentionally set later in Step 9.

  • Switch into the sub-account (top-left switcher).
  • Profile → 'API Management'.
  • 'Create API' → 'System Generated'.
  • Give it a name like 'uncoded Bot' → Next.
  • Confirm with 2FA / YubiKey.
  • Copy the API Key and Secret Key into the Zeabur fields 'Exchange API Key' / 'Exchange Secret Key'.

Copy the Secret Key immediately — it is never shown again after closing the page. Share it with nobody.

Result: API Key and Secret Key are entered into the Zeabur template.

5

Set Dashboard Passwords

Outcome: Two access passwords for your future dashboard.

The Zeabur template has two password fields:

Use strong passwords with special characters. No 'Test1' or similar.

  • Dashboard Admin Password — full access including all settings.
  • Dashboard View Password — read-only, e.g. for someone you want to show the bot to.

6

(Optional) Create a Telegram Bot

Outcome: A bot token for Telegram notifications.

If you don't want Telegram notifications, simply enter 00 in both Telegram fields and skip to Step 8. With Telegram you get a message per trade with profit, total profit and volume.

  • In Telegram search for @BotFather.
  • 'Start' → send the command /newbot.
  • Give a display name (e.g. 'Uncoded Trading Bot').
  • Give an internal username (must end in 'bot' and is globally unique).
  • BotFather returns a token like 123456789:ABCdefGhi… — paste it into the Zeabur field 'Telegram Bot Token'.

7

(Optional) Get the Telegram Group ID

Outcome: The group ID including the minus sign, entered into the Zeabur template.

The minus sign '-' must be copied along with the number. Without it the connection will fail.

  • In Telegram create a new group (e.g. 'Uncoded Trading').
  • Add your newly created uncoded bot to the group.
  • Also add the helper bot @myidbot to the group.
  • Promote both bots to admin (right-click / long-press on the bot → 'Promote to Admin' → Save).
  • In the group send /getgroupid to @myidbot.
  • You'll get a group ID with a minus sign, e.g. -1001234567890.

8

Set Domains and Launch Deployment

Outcome: Two own dashboard URLs and a running deployment.

Two domain names are required in the template:

  • Dashboard domain (e.g. uncoded-yourname-1) — web dashboard for configuration.
  • Signal domain (e.g. uncoded-yourname-2) — endpoint for TradingView signals.
  • Rules: lowercase only, both names must be different.
  • Optional: set a TradingView password now if you'll use TradingView signals later (can be changed any time).
  • Pick the correct server below and click 'Confirm'.

9

Whitelist the Server IP on Your Exchange (critical!)

Outcome: A trade-ready API key that can only be used from your server.

Until the IP whitelist is set, 'Enable Spot & Margin Trading' on your exchange cannot even be selected. That's a security feature, not an error.

  • In Zeabur → 'Servers' → click your server → copy IPv4 address.
  • Back in your exchange → 'API Management' → click 'Edit restrictions' on your uncoded API key.
  • Enable 'Restrict access to trusted IPs only'.
  • Enter the server IP → Confirm.
  • Now you can tick 'Enable Spot & Margin Trading' → enable it.
  • Confirm with 2FA and 'Save'. Do NOT enable API withdrawals — trading only.

Why this is so secure: even if someone has your API Key and Secret, they can do nothing — only this one server IP is allowed to trade.

10

Log Into the Dashboard

Outcome: Access to the unCoded dashboard via your own domain.

Once the dashboard domain is green in Zeabur ('Online' / 'Running'), open it in the browser and log in with the admin password from Step 5.

11

Choose Trading Mode and Strategy

Outcome: A fully configured bot with mode, quote currency, pairs and risk profile.

In the dashboard pick the following in order:

  • Bot type: Multi-Token Bot (standard for most users). High-Frequency Bot is single-token market making — usually NOT what you want.
  • Quote currency: USDC inside the EU; FDUSD possible outside the EU (reduced / zero trading fees).
  • Trading pairs: BTC and ETH are good starters — high liquidity, lower slippage.
  • Risk profile: Low = conservative (recommended for starters). Medium / High = more aggressive (more splits, larger positions, less reserve).
  • → Confirm → Start.

12

Link Your Google Account

Outcome: Your license is mapped to your Google identity.

  • In the dashboard click 'Open'.
  • Sign in with your Google account.
  • Accept the Terms of Service.
  • Click 'Start'.

Pricing: the bot costs 20–30% of realized profit. No profit = no cost. New users currently get a 25 USD license credit.

13

Activate Your License

Outcome: Bot uniquely mapped to your account.

Only the public API Key — never the Secret Key.

  • In the dashboard click 'Top-up License' — you'll be redirected to your unCoded account.
  • Scroll to 'Your IDs'.
  • Enter the public Exchange API Key here.
14

Verify Everything Works

Outcome: Confidence that the bot runs cleanly.

  • Open the trading bot service in your Zeabur project → click 'Logs'.
  • No red errors should appear.
  • Trades run very fast (~40–50 ms each). Pause the log view if needed.

Result: Bot is running independently on your own server.

Part 3

What Success Looks Like

Here's how you can tell, in the first 1--24 hours, that everything is working.

Immediately (within 5 minutes)

  • Dashboard shows 'Bot Status: Running' (green).
  • Logs show regular entries like 'Checking conditions for BTCUSDC…' without red errors.

Within the first hour

  • When market conditions match: first buy orders appear in the logs.
  • If Telegram is enabled: first notification (e.g. 'BUY BTCUSDC at 65,420 — Split 1/2').

Within 24 hours

  • First completed trades (buy + sell) with profit display.
  • Dashboard stats begin to fill up.

If no trade has happened after 24 hours: this isn't necessarily an error. At low volatility or with conservative settings it can take 1--3 days before the first entry conditions are met.

Part 4

Troubleshooting

Part 5

Security Checklist

Never share or post your Secret Key
IP whitelist set on the exchange API
API withdrawals disabled
Strong dashboard password set
Using a sub-account, not the main account
2FA active on your exchange
2FA backup key stored safely
All passwords in a password manager
Part 6

Tune Strategies & Realistic Expectations

Customize Later

  • • Switch Mode (e.g. Basic mode for bull markets).
  • • Adjust Splits (e.g. 50/50).
  • • Change strategies for bull / bear markets.
  • • Browse public strategies and the leaderboard under "Backtesting".

Realistic Expectations

  • • Reference: ~17,000 trades / month, ~1,200 USD profit in the example period.
  • • Daily results typically 12--27 USD with upside outliers.
  • • Rough orientation: 30--40% annual return as a realistic ballpark.
  • • Profit grows in steps (positions must close), not linearly.

Sideways and bear markets are where the bot can clearly beat hodling. In extreme bull runs hodling can occasionally win -- which is why stop-loss and emergency indicators matter.

Part 7

Risks & Disclaimer

  • Usage:at your own risk.
  • Returns:no guarantee of future profits. Past results are not a forecast.
  • Taxes:this is not tax advice. Trading profits may be taxable depending on your country.
  • Losses:crypto trading can lead to losses up to total capital loss.
  • Responsibility:you are responsible for your configuration, API keys and server.

Quick Reference

For repeat setups.

  1. 1Buy Hetzner server on Zeabur (4 vCPU, Germany)
  2. 2Open the unCoded template
  3. 3Create exchange sub-account + transfer USDC / FDUSD
  4. 4Create API Key + Secret Key (no withdrawal rights)
  5. 5Set dashboard passwords
  6. 6(Optional) Create Telegram bot via BotFather
  7. 7(Optional) Get Telegram group ID via @myidbot (include the minus!)
  8. 8Set dashboard + signal domains, launch deployment
  9. 9Whitelist server IP in your exchange + enable trading
  10. 10Log into the dashboard
  11. 11Pick Multi-Token, quote currency, pairs and risk
  12. 12Link Google account
  13. 13Activate license (public API Key)
  14. 14Verify logs

Need the Full Documentation?

The complete documentation is available at /docs.