A simple python client for the VirgoCX API
Project description
VirgoCX Python Client
A simple Python client for the VirgoCX API.
For more information on the REST api on which this was built, please refer to the VirgoCX API Documentation.
Table of Contents
Setup
API Keys
Generate your API key and secret from the VirgoCX website. Ensure that the IP address of the machine you are running this client from is whitelisted.
Installation
From PyPi
You can install this package from PyPi by running the following command in your terminal:
pip install vcx-py
From Source
After setting up your environment, install this package from source by running the following command in the root directory of this project:
pip install . # Install the package to your environment
Usage
VirgoCXClient
Create a new instance of the VirgoCXClient
class with your API key and secret.
import vcx_py as vcx
vc = vcx.VirgoCXClient(api_key='your_api_key', api_secret='your_secret')
Get KLine Data
Get KLine data for a specific trading pair.
kline_data = vc.get_kline_data(symbol="BTC/CAD", period=vcx.Enums.KLineType.Minute)
Get Ticker Data
Get ticker data for a specific trading pair.
ticker_data = vc.get_ticker_data(symbol="BTC/CAD")
Or for all trading pairs.
ticker_data = vc.tickers()
Account Information
Get account information.
account_info = vc.account_info()
This will give you information regarding your balances across all trading pairs.
Query Orders
Retrieve your orders for a particular trading pair, optionally limited by order status.
orders = vc.query_orders(symbol="BTC/CAD", status=vcx.Enums.OrderStatus.CANCELED)
Query Trades
Retrieve trade (matching) information for a particular symbol.
trades = vc.query_trades(symbol="BTC/CAD")
Place Order
Place a new order.
re = vc.place_order("USDC/CAD", vcx.Enums.OrderType.MARKET, vcx.Enums.OrderDirection.SELL, qty=30)
Note that on success, the response (a dict
) will contain the order ID.
Cancel Order
For a specified order ID, cancel the order.
vc.cancel_order(order_id=12345)
Get Discount
Returns the same output as ticker
for a given symbol (or all symbols if one is not provided) with your account
discount applied to prices.
discount = vc.get_discount(symbol="BTC/CAD")
Warnings
Note that due to CloudFlare protection, this version of the client attempts to access the API through its
IP address and not the domain name. Should the IP address change, the client will need to be updated.
Moreover, you will receive InsecureRequestWarning
warnings when using the client until this issue is resolved.
To suppress these warnings, you can use the following code:
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
or you can use the environment variable PYTHONWARNINGS
to suppress the warnings:
export PYTHONWARNINGS="ignore:Unverified HTTPS request"
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file vcx_py-1.0.3.tar.gz
.
File metadata
- Download URL: vcx_py-1.0.3.tar.gz
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | eab7e8745c7994261aa9adeb18aae74ebcf3f7f310bbbc98b44e98dffa1f86dc |
|
MD5 | 291ea6841ef6f20a11027eaa780ac1a6 |
|
BLAKE2b-256 | df5e19ebe457a0ac6663f736b0f111d06a572cd4dabbd9742c5ae0647e026262 |
File details
Details for the file vcx_py-1.0.3-py3-none-any.whl
.
File metadata
- Download URL: vcx_py-1.0.3-py3-none-any.whl
- Upload date:
- Size: 8.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5364d85cdf37e31f2712c0a35fefd7335414f0ac0263e05264f8738b33743795 |
|
MD5 | 8a72010de4c2c5851f2623db6e4a7983 |
|
BLAKE2b-256 | 69dbab422ecfb3b4afb78011e8adc8c1a7f4592b2eb4218b24f2d0b0fc49ef97 |