private void btnReqExecution_Click(object sender, EventArgs e)
        {
            ExecutionFilter filter = new ExecutionFilter();

            requestId = Int32.Parse(orderDlg.tbRequestId.Text, CultureInfo.InvariantCulture);
            ibClient.reqExecutions(requestId, filter);
        }
Exemple #2
0
        public void RequestExecution()
        {
            ExecutionFilter execFilter = new ExecutionFilter();

            execFilter.Time = DateTime.Now.ToShortDateString();

            IBClient.ClientSocket.reqExecutions(execRequestId, execFilter);
        }
Exemple #3
0
 //########################################################
 //      Executions
 //########################################################
 #region Executions
 public ExecDeatilAndCommReport_Struct reqExecutions(int reqId, ExecutionFilter filter)
 {
     testImpl.this_ExecDetails_List.Clear();
     testImpl.this_CommissionReport = null;
     clientSocket.reqExecutions(reqId, filter);
     while (testImpl.ExecDetailsActive || testImpl.this_CommissionReport.Equals(null))
     {
     }
     return(new ExecDeatilAndCommReport_Struct(testImpl.this_ExecDetails_List, testImpl.this_CommissionReport));
 }
Exemple #4
0
        /// <summary>
        /// Evaluate execution
        /// </summary>
        /// <param name="targetMethod"></param>
        /// <param name="filter"></param>
        /// <returns></returns>
        internal bool EvaluateExecution(MethodInfo targetMethod, ExecutionFilter filter)
        {
            if ("*".Equals(filter.Pattern) || Regex.IsMatch(targetMethod.Name, filter.Pattern))
            {
                bool isProperty = (targetMethod.Name.StartsWith("get_") || targetMethod.Name.StartsWith("set_")) && targetMethod.IsSpecialName;
                bool isMethod   = !isProperty;

                return((isProperty && filter.IncludeProperties) || (isMethod && filter.IncludeMethods));
            }

            return(false);
        }
Exemple #5
0
        /// <summary>
        /// When this method is called, the execution reports that meet the filter criteria are downloaded to the client via the execDetails() method.
        /// </summary>
        /// <param name="requestId">Id of the request</param>
        /// <param name="filter">the filter criteria used to determine which execution reports are returned.</param>
        public void RequestExecutions(int requestId, ExecutionFilter filter)
        {
            if (filter == null)
            {
                filter = new ExecutionFilter(0, "", DateTime.MinValue.ToString("yyyyMMdd-HH:mm:ss", CultureInfo.InvariantCulture), "", "", "", "");
            }

            lock (this)
            {
                ClientSocket.reqExecutions(requestId, filter);
            }
        }
Exemple #6
0
        private void refreshExecutionsButton_Click(object sender, EventArgs e)
        {
            tradeLogGrid.Rows.Clear();

            ExecutionFilter execFilter = new ExecutionFilter();

            if (!execFilterClientId.Text.Equals(String.Empty))
            {
                execFilter.ClientId = Int32.Parse(execFilterClientId.Text);
            }
            execFilter.AcctCode = execFilterAccount.Text;
            execFilter.Time     = execFilterTime.Text;
            execFilter.Symbol   = execFilterSymbol.Text;
            execFilter.SecType  = execFilterSecType.Text;
            execFilter.Exchange = execFilterExchange.Text;
            execFilter.Side     = execFilterSide.Text;

            ibClient.ClientSocket.reqExecutions(1, execFilter);
        }
Exemple #7
0
        public Trading.Trade[] FilterTrades(string userName, TradeFilter tradeFilter)
        {
            try
            {
                IBUser user = _userManager.GetUser(userName);
                if (user != null)
                {
                    ExecutionFilter             filter     = new ExecutionFilter(tradeFilter.ClientId, tradeFilter.AcctCode, tradeFilter.Time, tradeFilter.Symbol, tradeFilter.SecType, tradeFilter.Exchange, tradeFilter.Side);
                    Messages.ExecutionMessage[] executions = user.FilterExecutions(filter);
                    if (executions != null)
                    {
                        return(executions.Select(p => ConvertExecutionToTrade(p, user)).ToArray());
                    }
                }

                return(null);
            }
            catch (Exception ex)
            {
                _Logger.Error(ex);
                throw ex;
            }
        }
Exemple #8
0
        public ExecutionMessage[] FilterExecutions(ExecutionFilter execFilter)
        {
            if (execFilter == null)
            {
                execFilter = new ExecutionFilter();
            }

            lock (_filterExecutionLockObj)
            {
                if (_executionWait != null)
                {
                    try
                    {
                        _executionWait.Set();
                    }
                    catch (Exception)
                    {
                    }
                    _executionWait = null;
                }

                List <ExecutionMessage> reqExecutions = new List <ExecutionMessage>();

                if (_executionWait == null)
                {
                    _executionWait = new ManualResetEvent(false);
                    int reqId = _executionReqNextId;
                    _executionReqNextId++;
                    _requestExecutions[reqId] = reqExecutions;
                    _ibClient.ClientSocket.reqExecutions(reqId, execFilter);
                    _executionWait.WaitOne(TIME_OUT_VALUE);
                    _requestExecutions.Remove(reqId);
                }

                return(reqExecutions.ToArray());
            }
        }
 public void reqExecutions(int reqId, ExecutionFilter filter)
 {
     _Log.Debug().PrintFormat("> reqExecutions reqId={0}, filter={1}", reqId, filter);
     ThrowIfNotConnected();
     socket.reqExecutions(reqId, filter);
 }
Exemple #10
0
 //Executions
 public void reqExecutions(int reqId, ExecutionFilter filter)
 {
     throw new NotImplementedException();
 }