Beispiel #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="FixedIncomeHighVolumeJudgement"/> class.
        /// </summary>
        /// <param name="market">
        /// Venue that the trade executed on
        /// </param>
        /// <param name="ruleRunId">
        /// The rule run id.
        /// </param>
        /// <param name="ruleRunCorrelationId">
        /// The rule run correlation id.
        /// </param>
        /// <param name="orderId">
        /// The order id.
        /// </param>
        /// <param name="clientOrderId">
        /// The client order id.
        /// </param>
        /// <param name="parameters">
        /// The parameters.
        /// </param>
        /// <param name="hadMissingMarketData">
        /// The had missing market data.
        /// </param>
        /// <param name="noAnalysis">
        /// The no analysis.
        /// </param>
        /// <param name="windowAnalysis">
        /// The window analysis
        /// </param>
        /// <param name="dailyAnalysis">
        /// The daily analysis
        /// </param>
        public FixedIncomeHighVolumeJudgement(
            Market market,
            string ruleRunId,
            string ruleRunCorrelationId,
            string orderId,
            string clientOrderId,
            string parameters,
            bool hadMissingMarketData,
            bool noAnalysis,
            BreachDetails windowAnalysis,
            BreachDetails dailyAnalysis)
        {
            this.Market               = market;
            this.RuleRunId            = ruleRunId;
            this.RuleRunCorrelationId = ruleRunCorrelationId;
            this.OrderId              = orderId;
            this.ClientOrderId        = clientOrderId;

            this.Parameters           = parameters;
            this.HadMissingMarketData = hadMissingMarketData;
            this.NoAnalysis           = noAnalysis;

            this.WindowAnalysisAnalysis = windowAnalysis;
            this.DailyAnalysisAnalysis  = dailyAnalysis;
        }
Beispiel #2
0
        public HighVolumeRuleBreach(
            IFactorValue factorValue,
            ISystemProcessOperationContext operationContext,
            string correlationId,
            TimeSpan window,
            ITradePosition trades,
            FinancialInstrument security,
            IHighVolumeRuleEquitiesParameters equitiesParameters,
            BreachDetails dailyBreach,
            BreachDetails windowBreach,
            BreachDetails marketCapBreach,
            decimal totalOrdersTradedInWindow,
            string description,
            string caseTitle,
            DateTime universeDateTime)
        {
            this.FactorValue = factorValue;

            this.Window             = window;
            this.Trades             = trades;
            this.Security           = security;
            this.EquitiesParameters = equitiesParameters;

            this.DailyBreach     = dailyBreach;
            this.WindowBreach    = windowBreach;
            this.MarketCapBreach = marketCapBreach;

            this.TotalOrdersTradedInWindow = totalOrdersTradedInWindow;
            this.RuleParameterId           = equitiesParameters?.Id ?? string.Empty;
            this.SystemOperationId         = operationContext.Id.ToString();
            this.CorrelationId             = correlationId;
            this.RuleParameters            = equitiesParameters;
            this.Description      = description ?? string.Empty;
            this.CaseTitle        = caseTitle ?? string.Empty;
            this.UniverseDateTime = universeDateTime;
        }