Ejemplo n.º 1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="QCAlgorithmFramework"/> class
        /// </summary>
        public QCAlgorithmFramework()
        {
            _securityValuesProvider = new AlgorithmSecurityValuesProvider(this);

            // set model defaults
            Execution      = new ImmediateExecutionModel();
            RiskManagement = new NullRiskManagementModel();
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="QCAlgorithmFramework"/> class
        /// </summary>
        public QCAlgorithmFramework()
        {
            _securityValuesProvider = new AlgorithmSecurityValuesProvider(this);

            // set model defaults
            Execution      = new ImmediateExecutionModel();
            RiskManagement = new NullRiskManagementModel();

            // set generated and close times on all insights
            InsightsGenerated += (algorithm, data) =>
            {
                foreach (var insight in data.Insights)
                {
                    SetGeneratedAndClosedTimes(insight);
                }
            };
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Adds a new risk management model
 /// </summary>
 /// <param name="riskManagement">Model defining how risk is managed to add</param>
 public void AddRiskManagement(IRiskManagementModel riskManagement)
 {
     if (RiskManagement.GetType() != typeof(NullRiskManagementModel))
     {
         var compositeRiskModel = RiskManagement as CompositeRiskManagementModel;
         if (compositeRiskModel != null)
         {
             compositeRiskModel.AddRiskManagement(riskManagement);
         }
         else
         {
             RiskManagement = new CompositeRiskManagementModel(RiskManagement, riskManagement);
         }
     }
     else
     {
         RiskManagement = riskManagement;
     }
 }
Ejemplo n.º 4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="QCAlgorithmFramework"/> class
 /// </summary>
 public QCAlgorithmFramework()
 {
     // set model defaults
     Execution      = new ImmediateExecutionModel();
     RiskManagement = new NullRiskManagementModel();
 }
Ejemplo n.º 5
0
 /// <summary>
 /// Sets the risk management model
 /// </summary>
 /// <param name="riskManagement">Model defining </param>
 public void SetRiskManagement(IRiskManagementModel riskManagement)
 {
     RiskManagement = riskManagement;
 }
Ejemplo n.º 6
0
 /// <summary>
 /// Adds a new <see cref="IRiskManagementModel"/> instance
 /// </summary>
 /// <param name="riskManagementModel">The risk management model to add</param>
 public void AddRiskManagement(IRiskManagementModel riskManagementModel)
 {
     _riskManagementModels.Add(riskManagementModel);
 }