quiro-executor
v0.27.0
Published
Runs Quiro signals against your Kalshi account locally. Your Kalshi private key stays on your computer.
Readme
Quick start
Requires Node.js 20 or newer and a Quiro Advanced-plan API key.
npx quiro-executorThe first run opens a guided setup. Kalshi credentials are optional; without them, the executor stays in paper mode. You can choose foreground or background operation during setup.
npx quiro-executor setup
npx quiro-executor start --background
npx quiro-executor status
npx quiro-executor logs
npx quiro-executor stop
npx quiro-executor doctorUse npx quiro-executor ... for every command. A global installation is not required.
Windows, macOS, and Linux
The executor uses Node's cross-platform process APIs and supports Windows, macOS, and Linux. On Windows, run the commands in PowerShell or Windows Terminal. Background mode lasts until the process is stopped or the computer restarts; it does not install a startup service.
Configuration, state, logs, and the background PID live in ~/.quiro-executor/ (your Windows user profile on Windows).
Security and privacy
- Your Kalshi private key stays in the local config and is used only to sign requests sent directly to Kalshi.
- New and migrated setups cannot trade live until live trading is explicitly approved on that computer.
- Local contract, entry-price, daily-spend, and
KXBTC15Mmarket limits cannot be raised by remote website settings. - Remote responses, tickers, prices, counts, and settings are validated before an order is considered.
- API requests require HTTPS, have timeouts, and refuse redirects.
- Detailed telemetry is opt-in. Minimal telemetry reports lifecycle/health status but omits hostname, tickers, positions, and P&L.
- On Unix-like systems, local config/state files use owner-only permissions. Windows uses user-profile ACLs instead of Unix modes.
The executor still receives Quiro signals and website settings, and it sends heartbeat/event requests to quiro.bot. If detailed telemetry is enabled, those events can include hostname, tickers, positions, and P&L. Kalshi remains the source of truth for balances, orders, and fills.
Controls and safety defaults
The website's Account → Executor panel provides the kill switch, dry-run toggle, contract and price settings, edge and whale filters, daily-loss limit, exit handling, trading hours, position sizing, and auto-exits. The executor refreshes those controls every 15 seconds and stops new entries if settings become stale.
Position sizing has three modes. Fixed buys the max-contracts amount every entry (the original behavior). Percent stakes a share of the bankroll per trade. Kelly sizes from the model's edge and the ask price, scaled by a Kelly fraction (half-Kelly by default). Live bankroll is your real Kalshi balance; paper mode sizes against a configurable paper bankroll. A failed balance lookup falls back to the paper bankroll, so it can never upsize a live trade. Every mode stays floored by the local max-contracts ceiling and the daily-spend cap.
Auto-exits let the executor close an open position on its own, independently of the engine's exit advisory: reversal sells when the engine flips to the other side, stop-loss sells at a set number of cents below entry, and scalp takes profit a set number of cents above entry. When more than one applies they run in that order.
New setups are disabled and dry-run by default on the website. Live orders require all three: website trading enabled, website dry-run disabled, and local live approval with valid Kalshi credentials. Position P&L is an estimate based on engine settlement data.
Quiro Trader can also prepare a user-confirmed order. The confirmation wizard sends a short-lived instruction containing the market, side, contract count, limit, take-profit, and stop-loss prices. The executor accepts only instructions belonging to its Advanced API key, revalidates the current KXBTC15M market and every local safety ceiling, then signs the order locally. AI output alone can never submit an order.
Disclaimer
Quiro publishes research signals. This tool lets you act on them from your own machine at your discretion. It is not financial advice. Trading involves risk of loss, and you are responsible for your orders, account, and compliance.
Maintainer releases
GitHub Actions tests every push and pull request on supported Node.js versions. A push to main publishes automatically only when package.json contains a version that is not already on npm. Publishing uses npm Trusted Publishing through GitHub OIDC, so no long-lived npm token or per-release OTP is stored in GitHub.
For a normal patch release:
npm version patch
git push --follow-tagsThe npm version lifecycle runs the test suite, checks the executable, synchronizes the runtime version, commits, and tags the release. Use minor or major in place of patch when appropriate.
