FastQuant.InstrumentStrategy.CreateChildInstrumentStrategy C# (CSharp) Method

CreateChildInstrumentStrategy() private method

private CreateChildInstrumentStrategy ( Instrument instrument ) : Strategy
instrument Instrument
return Strategy
        private Strategy CreateChildInstrumentStrategy(Instrument instrument)
        {
            var name = $"{Name} ({instrument.Symbol})";
            var strategy = (InstrumentStrategy)Activator.CreateInstance(GetType(), this.framework, name);
            strategy.Instrument = instrument;
            strategy.Instruments.Add(instrument);
            strategy.SubscriptionList.Add(instrument, GetDataProvider(this, instrument));
            strategy.Portfolio = GetOrCreatePortfolio(strategy.Name);
            strategy.Portfolio.GetOrCreatePosition(instrument);
            strategy.raiseEvents = true;
            strategy.IsInstance = true;
            strategy.SetRawDataProvider(DataProvider);
            strategy.SetRawExecutionProvider(ExecutionProvider);
            CopyParameterValues(strategy);
            return strategy;
        }