Exemplo n.º 1
0
        public async Task <OrderClientContract[]> GetAccountOpenPositions(string clientId, string accountId)
        {
            var backendRequest = new AccountClientIdBackendRequest {
                AccountId = accountId, ClientId = clientId
            };
            var backendResponse = await _httpRequestService.RequestWithRetriesAsync <OrderBackendContract[]>(backendRequest,
                                                                                                             "order.account.list", IsLiveAccount(backendRequest.AccountId));

            return(backendResponse.Select(item => item.ToClientContract()).ToArray());
        }
Exemplo n.º 2
0
        public OrderBackendContract[] GetAccountOpenPositions([FromBody] AccountClientIdBackendRequest request)
        {
            var account = _accountsCacheService.Get(request.ClientId, request.AccountId);

            var positions = _ordersCache.ActiveOrders.GetOrdersByAccountIds(account.Id).Select(item => item.ToBackendContract()).ToList();
            var orders    = _ordersCache.WaitingForExecutionOrders.GetOrdersByAccountIds(account.Id).Select(item => item.ToBackendContract()).ToList();

            positions.AddRange(orders);
            var result = positions.ToArray();

            return(result);
        }