def get_executions(args): """Gets all (filtered) executions from last 24hrs """ client = connection.get_client() if client is None: return g.error_resp[-2] elif client.isConnected() is False: return g.error_resp[-1] g.executions_resp = dict(execDetailsEnd=False, execDetails=[], commissionReport=dict()) log.debug('Requesting executions for filter {}'.format(args)) filter = ExecutionFilter() for attr in dir(filter): if attr[:2] == 'm_' and attr[2:] in args: setattr(filter, attr, args[attr[2:]]) log.debug('Filter: {}'.format(filter.__dict__)) filter.m_clientId = 0 client.reqExecutions(1, filter) timeout = g.timeout / 2 while g.executions_resp['execDetailsEnd'] is False and client.isConnected( ) is True and timeout > 0: # log.debug("Waiting for responses on client {}...".format(client.clientId)) time.sleep(.25) timeout -= 1 log.debug('Current executions {}'.format(g.executions_resp)) connection.close_client(client) return g.executions_resp
def exec_filter(client_id): contract = make_contract('NVDA') filt = ExecutionFilter() filt.m_clientId = client_id filt.m_symbol = contract.m_symbol filt.m_secType = contract.m_secType filt.m_exchange = contract.m_exchange return filt
def exec_filter(client_id): contract = make_contract('NVDA') filt = ExecutionFilter() filt.m_clientId = client_id filt.m_symbol = contract.m_symbol filt.m_secType = contract.m_secType filt.m_exchange = contract.m_exchange return filt
def exec_filter(self, client_id, accountName, contract): filt = ExecutionFilter() filt.m_clientId = client_id filt.m_acctCode = accountName #filt.m_time = "20160122-00:00:00" filt.m_symbol = contract.m_symbol filt.m_secType = contract.m_secType filt.m_exchange = contract.m_exchange return filt
def exec_filter(self, client_id, accountName, contract): filt = ExecutionFilter() filt.m_clientId = client_id filt.m_acctCode = accountName #filt.m_time = "20160122-00:00:00" filt.m_symbol = contract.m_symbol filt.m_secType = contract.m_secType filt.m_exchange = contract.m_exchange return filt
def _download_account_details(self): exec_filter = ExecutionFilter() exec_filter.m_clientId = self.client_id self.reqExecutions(self.next_request_id, exec_filter) self.reqManagedAccts() while self.managed_accounts is None: sleep(_poll_frequency) for account in self.managed_accounts: self.reqAccountUpdates(subscribe=True, acctCode=account) while self.accounts_download_complete is False: sleep(_poll_frequency)
def _download_account_details(self): exec_filter = ExecutionFilter() exec_filter.m_clientId = self.client_id self.reqExecutions(self.next_request_id, exec_filter) self.reqManagedAccts() while self.managed_accounts is None: sleep(_poll_frequency) for account in self.managed_accounts: self.reqAccountUpdates(subscribe=True, acctCode=account) while self.accounts_download_complete is False: sleep(_poll_frequency)