Linux/DevOps Contractor for Trading Bot

Posted 3 weeks ago

Worldwide

Summary

Summary : Seeking a Linux/DevOps contractor to harden a 24/7 Python trading bot on a Hetzner VPS. The task involves converting a screen-based process to a systemd service with auto-restart. The ideal candidate will have experience in managing processes and ensuring system reliability. This is a part-time engagement with a short-term project duration. What this is A systematic futures trading engine that runs 24/7 on a Linux VPS. It reads live market data from Interactive Brokers, generates trade signals in Python, and fires those signals via webhook to TradersPost, which executes orders on Tradovate/Apex accounts. It also sends status and trade alerts to Telegram. The strategy logic works and is not the problem. Help is wanted only on infrastructure reliability — keeping the process alive, connected, and self-healing without manual babysitting. You do not need to understand trading strategy to help. This is a "keep a Python process connected and running 24/7" problem. The stack: VPS: Hetzner (Ubuntu), single box, root access. IB Gateway: runs in Docker (gnzsnz/ib-gateway image). Provides market data only — no orders go through it. Requires a manual 2FA login each morning after its nightly auto-restart. Engine: Python 3, ~5 modules, uses the ib_async library. Runs inside a screen session. Reads data from IB Gateway, computes signals, posts JSON to TradersPost webhooks, sends Telegram messages. Order execution: TradersPost → Tradovate → Apex (entirely outside the VPS; not in scope). Remote viewing: noVNC (browser, port 6081 via websockify) and a direct VNC app (port 5900) to see the Gateway login screen. What already works: Engine seeds historical bars, builds live bars, generates signals, sends webhooks + Telegram alerts. Auto-reconnect logic: if the IB API connection drops, the engine catches it, retries with fresh client IDs, re-seeds, and alerts Telegram. Tested and working. 4 instruments live across 2 accounts. Known snags / what we'd want help hardening: Process death survival. Reconnect handles a dropped connection, but if the Python process itself dies (or the box reboots), nothing brings it back. We want a systemd service that runs the engine, auto-restarts on crash, and survives reboot — replacing the manual screen workflow. noVNC/websockify instability. The browser VNC proxy (websockify, port 6081) drops on reboot/gaps and needs a manual restart each time. Want it as a systemd service too so it auto-starts. IB Gateway 2FA persistence. Gateway logs out on its nightly restart and needs a manual VNC + phone-2FA login each morning. We'd like to know if IBC config can reduce or remove this daily manual step (or confirm it genuinely can't, given 2FA). Seeding depends on start order. The engine must only be started after IB Gateway is fully connected/green, or it seeds badly. Ideally the engine should detect a not-ready Gateway and wait/retry rather than seeding from incomplete data. Security. VNC port 5900 is currently exposed to the public internet with a weak password. Want it firewalled (IP allowlist) and/or hardened. Nice-to-haves (lower priority) A watchdog/heartbeat that alerts if the engine goes silent. Tidy up leftover/stale screen sessions (moot once systemd replaces screen). Skills to look for A freelance DevOps / Linux systems contractor. Keywords: systemd, Docker, Python process management, VPS hardening, ufw/iptables. They do not need trading or quant experience. (A separate algo-trading developer would only be needed for strategy/engine logic changes, which are not the issue here.) Access they'd need SSH to the VPS (root or sudo user). Ability to view the IB Gateway screen via VNC. Read access to the engine code in /root/v3trading/. Do not hand over broker/TradersPost/Apex credentials — none of the infra work requires placing real orders. Testing can be done on connection/seeding/restart behaviour without live trading.

  • Less than 30 hrs/week
    Hourly
  • < 1 month
    Duration
  • Intermediate
    Experience Level
  • $20.00

    -

    $40.00

    Hourly
  • Remote Job
  • One-time project
    Project Type
Skills and Expertise
Mandatory skills
Python
Linux System Administration
Nice-to-have skills
Ubuntu
C
Activity on this job
  • Proposals:20 to 50
  • Interviewing:
    0
  • Invites sent:
    0
  • Unanswered invites:
    0
About the client
Member since Jun 4, 2026
  • Ireland
    2:27 PM

Explore similar jobs on Upwork

Job Aggregation and Dashboard CreationHourly‐ Posted 8 months ago
Automation
Data Scraping
Data Extraction
API
UI/UX Prototyping
Web Scraping
Discord Bot Video Tutorial CreatorHourly‐ Posted 1 month ago
Video Production
Video Stream
Video Editing
Video Ripping

How it works

  • Post a job icon
    Create your free profile
    Highlight your skills and experience, show your portfolio, and set your ideal pay rate.
  • Talent comes to you icon
    Work the way you want
    Apply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
  • Payment simplified icon
    Get paid securely
    From contract to payment, we help you work safely and get paid securely.
Want to get started? Create a profile

About Upwork

  • Rating is 4.9 out of 5.
    4.9/5
    (Average rating of clients by professionals)
  • G2 2021
    #1 freelance platform
  • 49,000+
    Signed contract every week
  • $2.3B
    Freelancers earned on Upwork in 2020

Find the best freelance jobs

Growing your career is as easy as creating a free profile and finding work like this that fits your skills.

Trusted by

  • Microsoft Logo
  • Airbnb Logo
  • Bissell Logo
  • GoDaddy Logo