Implement closing all positions

master
Mark Veidemanis 1 year ago
parent 9dda0e8b4a
commit b8b39ea8d3
Signed by: m
GPG Key ID: 5ACFCEED46C0904F

@ -16,3 +16,9 @@ def get_balance_hook(user_id, user_name, account_id, account_name, balance):
"balance": balance,
},
)
def convert_open_trades(open_trades):
"""
Convert a list of open trades into a list of Trade-like objects.
"""

@ -151,10 +151,17 @@ class OANDAExchange(BaseExchange):
return response
def close_all_positions(self):
# all_positions = self.get_all_positions()
# for position in all_positions["itemlist"]:
# print("POS ITER", position)
r = positions.PositionClose(accountID=self.account_id)
response = self.call(r)
return response
all_positions = self.get_all_positions()
responses = []
for position in all_positions:
side = position["side"]
symbol = position["symbol"]
data = {
f"{side}Units": "ALL",
}
r = positions.PositionClose(
accountID=self.account_id, instrument=symbol, data=data
)
response = self.call(r)
responses.append(response)
return responses

Loading…
Cancel
Save