PositionCloseRequest

class oandapyV20.contrib.requests.PositionCloseRequest(longUnits=None, longClientExtensions=None, shortUnits=None, shortClientExtensions=None)

Bases: oandapyV20.contrib.requests.baserequest.BaseRequest

create a PositionCloseRequest.

PositionCloseRequest is used to build the body to close a position. The body can be used to pass to the PositionClose endpoint.

__init__(longUnits=None, longClientExtensions=None, shortUnits=None, shortClientExtensions=None)

Instantiate a PositionCloseRequest.

Parameters:
  • longUnits (integer (optional)) – the number of long units to close
  • longClientExtensions (dict (optional)) – dict representing longClientExtensions
  • shortUnits (integer (optional)) – the number of short units to close
  • shortClientExtensions (dict (optional)) – dict representing shortClientExtensions

One of the parameters or both must be supplied.

Example

>>> import json
>>> from oandapyV20 import API
>>> import oandapyV20.endpoints.positions as positions
>>> from oandapyV20.contrib.requests import PositionCloseRequest
>>>
>>> accountID = "..."
>>> client = API(access_token=...)
>>> ordr = PositionCloseRequest(longUnits=10000)
>>> print(json.dumps(ordr.data, indent=4))
{
   "longUnits": "10000"
}
>>> # now we have the order specification, create the order request
>>> r = position.PositionClose(accountID,
>>>                            instrument="EUR_USD", data=ordr.data)
>>> # perform the request
>>> rv = client.request(r)
>>> print(rv)
>>> ...