The OANDA v20 REST API provides programmatic access to OANDA's next generation v20 trading engine.
Install using pip:
pip install v20
If you don't wish to use pip:
git clone https://github.com/oanda/v20-python.git
For documentation, usage and examples, see: http://developer.oanda.com/rest-live-v20/introduction
Each REST V20 endpoint in the documentation maps to a Context object
property which then has get() and list() methods used to get a list of objects (ie. /v3/accounts) or a single
object (ie /v3/accounts/{accountId}).
import v20
# To use the v20 API, we start by creating a `Context` which first establishes what REST URL to use (ie Practice vs Prod)
ctx = v20.Context(OANDA_REST_URL, 443, ssl=True)
# Use your API Personal Access Token by setting it to our `Context` token
ctx.set_token(OANDA_API_KEY)See what accounts we have available to interact with. Notice that our account methods (like list, get, summary)
return Response objects which have to be drilled down into with their body property which is a dict with
keys matching what you see in the "HTTP 200" response documentation for the account endpoints:
Furthermore, the dict or list values are objects with dot-notation accessible properties matching the object type. For example, the list of AccountProperties objects has these properties
account_id = ctx.account.list().body['accounts'][0].id
# Now that we have an account_id, get the account summary.
account_summary = ctx.account.summary(account_id).body['account']We can access some properties matching documentation of an AccountSummary object
print account_summary.alias
print account_summary.balance