Command Line Interface for Oanda API
Project description
oanda-cli
Command Line Interface for Oanda V20 REST API
Installation
$ pip install -U oanda-cli
Docker image
The image is available at Docker Hub.
$ docker pull dceoy/oanda-cli
Getting started
-
Create and edit a configuration YAML file.
$ oanda-cli init $ vim oanda.yml # => edit
An account ID and an API token are required to be set in the configuration file.
-
Execute commands.
# Print information $ oanda-cli info account $ oanda-cli info instruments $ oanda-cli info positions # Fetch past rates $ oanda-cli track # Stream market prices or authorized account transactions $ oanda-cli stream # prices $ oanda-cli stream --target=transaction # transactions # Close all positions $ oanda-cli close # Fetch transactions and visualize cumulative PL $ oanda-cli transaction --from=2020-09-01 --pl-graph=./pl.pdf
Usage
$ oanda-cli --help
Command Line Interface for Oanda API
Usage:
oanda-cli -h|--help
oanda-cli --version
oanda-cli init [--debug|--info] [--file=<yaml>]
oanda-cli info [--debug|--info] [--file=<yaml>] [--json] <info_target>
[<instrument>...]
oanda-cli track [--debug|--info] [--file=<yaml>] [--csv-dir=<path>]
[--sqlite=<path>] [--granularity=<code>] [--count=<int>]
[--json] [--quiet] [<instrument>...]
oanda-cli stream [--debug|--info] [--file=<yaml>] [--target=<str>]
[--timeout=<sec>] [--csv=<path>] [--sqlite=<path>]
[--use-redis] [--redis-host=<ip>] [--redis-port=<int>]
[--redis-db=<int>] [--redis-max-llen=<int>]
[--ignore-api-error] [--quiet] [<instrument>...]
oanda-cli transaction [--debug|--info] [--file=<yaml>] [--from=<date>]
[--to=<date>] [--csv=<path>] [--sqlite=<path>]
[--pl-graph=<path>] [--json] [--quiet]
oanda-cli plotpl [--debug|--info] <data_path> <graph_path>
oanda-cli spread [--debug|--info] [--file=<yaml>] [--csv=<path>] [--quiet]
[<instrument>...]
oanda-cli close [--debug|--info] [--file=<yaml>] [<instrument>...]
Options:
-h, --help Print help and exit
--version Print version and exit
--debug, --info Execute a command with debug|info messages
--file=<yaml> Set a path to a YAML for configurations [$OANDA_YML]
--quiet Suppress messages
--csv-dir=<path> Write data with daily CSV in a directory
--sqlite=<path> Save data in an SQLite3 database
--granularity=<code>
Set a granularity for rate tracking [default: S5]
--count=<int> Set a size for rate tracking (max: 5000) [default: 60]
--json Print data with JSON
--target=<str> Set a streaming target [default: pricing]
{ pricing, transaction }
--timeout=<sec> Set senconds for response timeout
--csv=<path> Write data with CSV into a file
--use-redis Use Redis for data store
--redis-host=<ip> Set a Redis server host (override YAML configurations)
--redis-port=<int> Set a Redis server port (override YAML configurations)
--redis-db=<int> Set a Redis database (override YAML configurations)
--redis-max-llen=<int>
Limit Redis list length (override YAML configurations)
--ignore-api-error Ignore Oanda API connection errors
--from=<date> Specify the starting time
--to=<date> Specify the ending time
--pl-graph=<path> Visualize PL in a graphics file such as PDF or PNG
Commands:
init Create a YAML template for configuration
info Print information about <info_target>
track Fetch past rates
stream Stream market prices or authorized account events
transaction Fetch the latest transactions
plotpl Visualize cumulative PL in a file
spread Print the ratios of spread to price
close Close positions (if not <instrument>, close all)
Arguments:
<info_target> { instruments, prices, account, accounts, orders,
trades, positions, position, order_book,
position_book }
<instrument> { AUD_CAD, AUD_CHF, AUD_HKD, AUD_JPY, AUD_NZD, AUD_SGD,
AUD_USD, CAD_CHF, CAD_HKD, CAD_JPY, CAD_SGD, CHF_HKD,
CHF_JPY, CHF_ZAR, EUR_AUD, EUR_CAD, EUR_CHF, EUR_CZK,
EUR_DKK, EUR_GBP, EUR_HKD, EUR_HUF, EUR_JPY, EUR_NOK,
EUR_NZD, EUR_PLN, EUR_SEK, EUR_SGD, EUR_TRY, EUR_USD,
EUR_ZAR, GBP_AUD, GBP_CAD, GBP_CHF, GBP_HKD, GBP_JPY,
GBP_NZD, GBP_PLN, GBP_SGD, GBP_USD, GBP_ZAR, HKD_JPY,
NZD_CAD, NZD_CHF, NZD_HKD, NZD_JPY, NZD_SGD, NZD_USD,
SGD_CHF, SGD_HKD, SGD_JPY, TRY_JPY, USD_CAD, USD_CHF,
USD_CNH, USD_CZK, USD_DKK, USD_HKD, USD_HUF, USD_INR,
USD_JPY, USD_MXN, USD_NOK, USD_PLN, USD_SAR, USD_SEK,
USD_SGD, USD_THB, USD_TRY, USD_ZAR, ZAR_JPY }
<data_path> Path to an input CSV or SQLite file
<graph_path> Path to an output graphics file such as PDF or PNG
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
oanda-cli-1.1.3.tar.gz
(25.9 kB
view hashes)
Built Distribution
oanda_cli-1.1.3-py3-none-any.whl
(29.7 kB
view hashes)
Close
Hashes for oanda_cli-1.1.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4edeca8cbd7e80425677583cc823cb3ad9d57a982bb75d042d58b62e9f7a9b10 |
|
MD5 | c94ed959b2e1549038dee0a8d45f4a59 |
|
BLAKE2b-256 | 33253b8f9cc1879db72c57d97b0f6e5d7085ac2b43cbffc5471050b11ba8ea88 |