Skip to main content

Client for Capital.com REST API (demo and real)

Project description

CapitalCom PyPI Python License PyPI Publish

A lightweight Python wrapper for the Capital.com REST API. Supports demo and live accounts. Designed for algorithmic trading, market data exploration, and automated execution.


Features

  • Open and close market positions
  • Lot-based forex trading with SL/TP (in pips)
  • Automatic session token renewal
  • View and manage demo account balance
  • List and search tradable instruments
  • Colored CLI feedback (green/red/blue)

Installation

pip install capitalcom

Example usage

from capitalcom_client import CapitalClient

client = CapitalClient(
    api_key="your_api_key",
    login="your_email",
    password="your_password",
    demo=True  # Set to False for live account
)

# List your accounts
client.list_accounts()

# Check balance
balance = client.get_balance()
print("Current balance:", balance)

# Open and close a test trade
client.test_trade()

# Add demo funds
client.top_up_demo(5000)

)

# Open and close a test trade
client.test_trade()

Available Methods

Method Description
open_forex_position(epic, size, direction, stop_dist=None, profit_dist=None) Open forex trade (lot-based)
open_raw_position(epic, size, direction, ...) Open position with raw size
close_position_by_id(deal_id, size=None) Close full or partial position
get_open_positions() List all open positions
search_instrument(term) Search instruments via market navigation
search_markets(term) Search instruments via /markets endpoint
list_all_instruments() Recursively list all tradable instruments
get_session_info() View session, accountId, clientId
get_balance(account_id=None, raw=False) Fetch current account balance
list_accounts() List all your accounts and IDs
top_up_demo(amount) Add funds to demo account (up to 100K)
test_trade() Execute a small test trade (0.001 lot EUR/USD)

License

This project is licensed under the CC BY-NC 4.0 License.


Notes

  • Works with REST API only (not streaming).
  • requests is the only dependency.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

capitalcom-1.0.0.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

capitalcom-1.0.0-py3-none-any.whl (5.6 kB view details)

Uploaded Python 3

File details

Details for the file capitalcom-1.0.0.tar.gz.

File metadata

  • Download URL: capitalcom-1.0.0.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for capitalcom-1.0.0.tar.gz
Algorithm Hash digest
SHA256 7d6305d7c609cbc6fbe21d93c7bbeed24e01d90f5829376bb368ac72649ffe78
MD5 713cb050d8fcf98d3e50a3253bc7f033
BLAKE2b-256 9bde3ff85594e9bd6b290228eff1c18037658253990b2aeac2114d368e42cea9

See more details on using hashes here.

File details

Details for the file capitalcom-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: capitalcom-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 5.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for capitalcom-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 89ea4242253ce86e8b6ff649b4577ee3c7477495a24f121808ff26fa31a00b3d
MD5 cb2dcfbe637bdfcc394f371ab8fb01ea
BLAKE2b-256 ae8240faa36d34e43364eae6b3e246740c8e08ff51ef488a1e445463bccb475a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page