[docs]classBrokerConnection:def__init__(self,data:BrokerConnectionResponse,client:'WTClient',auto_refresh:bool=True):self._BrokerConnectionResponse:BrokerConnectionResponse=data#: raw response data from APIself.client:'WTClient'=client#: the WTClient object that created this instanceself.auto_refresh:bool=auto_refresh#: auto_refresh toggle inherited from WTClientself.name:Optional[str]=data.name#: name of the connection as set by userself.number:str=data.number#: connection numberself.account_number:str=data.account_number#: account numberself.broker:str=data.broker#: broker nameself.status:Literal["Active","Inactive"]=data.status#: connection statusself.net_liquidation_value:float=data.net_liquidation_value#: net liquidation valueself.expires_at:Optional[datetime]=data.expires_at#: expiration date. Only for brokers without permanent connection. e.g. Schwabself.endpoint:str=f'{self.client.endpoint}broker_connections/{self.number}/'def__repr__(self):returnstr(self._BrokerConnectionResponse)
[docs]defrebalance_collateral(self):""" Rebalance your collateral position for a given broker connection. This requires that the collateral be configured and enabled at Whispertrades. If your current collateral balance is within the minimum and maximum target amounts, a transaction will not happen. Auth Required: Write Broker Connections """response=self.client.session.put(self.endpoint+'collateral/rebalance',headers=self.client.headers)response=BaseResponse(**orjson.loads(response.text))ifnotresponse.success:raiseAPIError(response.message)