Beispiel #1
0
 private void AssertMockStrategy_TurningPoint(IStrategyInfo strategy)
 {
     //Assert.AreEqual(STRATEGY_TURNINGPOINT, strategy.StrategyID);
     Assert.AreEqual("转折点查找", strategy.Name);
     Assert.AreEqual("转折点查找,测试专用", strategy.Description);
     Assert.AreEqual("com.wer.sc.plugin.mock.strategy.MockStrategy_TurningPoint", strategy.StrategyClassType.FullName);
 }
Beispiel #2
0
 private void AssertMockStrategy_Volume(IStrategyInfo strategy)
 {
     //Assert.AreEqual(STRATEGY_VOLUME, strategy.StrategyID);
     Assert.AreEqual("量能过滤", strategy.Name);
     Assert.AreEqual("量能过滤,测试专用", strategy.Description);
     Assert.AreEqual("com.wer.sc.plugin.mock.strategy.MockStrategy_Volume", strategy.StrategyClassType.FullName);
 }
Beispiel #3
0
 private void AssertMockStrategy_Complex(IStrategyInfo strategy)
 {
     //Assert.AreEqual("MOCK.STRATEGY.COMPLEX.REAL", strategy.StrategyID);
     Assert.AreEqual("复杂策略", strategy.Name);
     Assert.AreEqual("复杂策略,测试专用", strategy.Description);
     Assert.AreEqual("com.wer.sc.plugin.mock.strategy.complex.MockStrategy_Real", strategy.StrategyClassType.FullName);
 }
Beispiel #4
0
 private void AssertMockStrategy_Ma(IStrategyInfo strategy)
 {
     //Assert.AreEqual(STRATEGY_MA, strategy.StrategyID);
     Assert.AreEqual("MA指标", strategy.Name);
     Assert.AreEqual("MA指标,测试专用", strategy.Description);
     Assert.AreEqual("com.wer.sc.plugin.mock.strategy.MockStrategy_Ma", strategy.StrategyClassType.FullName);
 }
Beispiel #5
0
        private void AddSubNodes(IStrategyAssembly assembly, string path, TreeNode treeNode)
        {
            IList <string> subPaths = assembly.GetSubPath(path);

            for (int i = 0; i < subPaths.Count; i++)
            {
                string   subPath  = subPaths[i];
                string   pathName = subPath.Substring(subPath.LastIndexOf("\\") + 1);
                TreeNode subNode  = treeNode.Nodes.Add(pathName);
                subNode.Tag = subPath;
                AddSubNodes(assembly, subPaths[i], subNode);
            }

            IList <IStrategyInfo> strategies = assembly.GetSubStrategyInfo(path);

            for (int i = 0; i < strategies.Count; i++)
            {
                IStrategyInfo strategyInfo = strategies[i];
                TreeNode      subNode      = treeNode.Nodes.Add(strategyInfo.Name);
                subNode.Tag = strategyInfo;
                if (strategyInfo.IsError)
                {
                    subNode.Text     += ":" + strategyInfo.ErrorInfo;
                    subNode.ForeColor = Color.Red;
                }
                else
                {
                    subNode.ForeColor = Color.Yellow;
                }
            }
        }
Beispiel #6
0
        public FormStrategyDescription(IStrategyInfo strategyInfo)
        {
            InitializeComponent();

            this.lbStrategyId.Text   = strategyInfo.StrategyID;
            this.lbStrategyName.Text = strategyInfo.StrategyName;
            this.lbStrategyDesc.Text = strategyInfo.StrategyDesc;
        }
Beispiel #7
0
        public FormStrategy(CompChartStrategyBinder binder, IStrategyInfo strategyInfo, IStrategy strategy, IDataPackage_Code dataPackage)
        {
            InitializeComponent();
            this.binder      = binder;
            this.dataPackage = dataPackage;

            InitStrategy(strategyInfo, strategy);
        }
Beispiel #8
0
 private void AddStrategies(TreeNode parentNode, List <IStrategyInfo> strategies)
 {
     for (int i = 0; i < strategies.Count; i++)
     {
         IStrategyInfo strategy = strategies[i];
         string        name     = strategy.Name;
         TreeNode      subNode  = parentNode.Nodes.Add(name);
         subNode.ForeColor = Color.Yellow;
         subNode.Tag       = strategy;
     }
 }
Beispiel #9
0
        /// <summary>
        /// 创建一个新的插件对象实例
        /// </summary>
        /// <param name="strategyInfo"></param>
        /// <returns></returns>
        public IStrategy CreateStrategyObject(IStrategyInfo strategyInfo)
        {
            if (strategyInfo == null)
            {
                return(null);
            }
            object obj = Activator.CreateInstance(strategyInfo.StrategyClassType);

            return((IStrategy)obj);
            //assembly.CreateInstance("", false, BindingFlags.CreateInstance, null, null, null, null);
            //return (IStrategy)assembly.CreateInstance(strategyInfo.StrategyClassType.ToString());
        }
        public void TestAssemblyCreate()
        {
            string fileName = "strategy.common.strategyconfig";
            string filePath = TestCaseManager.GetTestCasePath(typeof(TestStrategyAssemblyConfig), fileName);
            //StrategyAssembly config = new StrategyAssembly();
            //config.Load(filePath);

            StrategyAssembly strategyAssembly = StrategyAssembly.Create(filePath);
            IStrategyInfo    strategyInfo     = strategyAssembly.GetStrategyInfo("com.wer.sc.strategy.common.ma.Strategy_MultiMa");

            Console.WriteLine(strategyInfo);
        }
Beispiel #11
0
        private void btChangeStrategy_Click(object sender, EventArgs e)
        {
            FormStrategyLoader form         = new FormStrategyLoader();
            DialogResult       dialogResult = form.ShowDialog();

            if (dialogResult == DialogResult.OK)
            {
                IStrategyInfo strategyInfo = form.SelectedStrategy;
                IStrategyData strategyData = strategyInfo.CreateStrategyData();
                this.chartComponent.StrategyData = strategyData;
                Init(strategyData);
            }
        }
Beispiel #12
0
 private void InitPathStrategies(List <IStrategyInfo> strategies)
 {
     for (int i = 0; i < strategies.Count; i++)
     {
         IStrategyInfo strategy = strategies[i];
         string        path     = strategy.StrategyPath;
         if (!dic_Path_Strategies.ContainsKey(path))
         {
             List <IStrategyInfo> strategiesInPath = new List <IStrategyInfo>();
             dic_Path_Strategies.Add(path, strategiesInPath);
             strategiesInPath.Add(strategy);
         }
         else
         {
             dic_Path_Strategies[path].Add(strategy);
         }
     }
 }
Beispiel #13
0
        private void TreeStrategy_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
        {
            TreeNode treeNode = e.Node;
            object   tag      = treeNode.Tag;

            if (tag == null || (!(tag is IStrategyInfo)))
            {
                return;
            }
            this.strategy = (IStrategyInfo)tag;
            if (strategy.IsError)
            {
                MessageBox.Show("选中策略有错误");
                return;
            }

            this.DialogResult = DialogResult.OK;
            this.Close();
        }
Beispiel #14
0
        private void btRefresh_Click(object sender, EventArgs e)
        {
            IStrategyAssemblyMgr mgr = StrategyCenter.Default.GetStrategyMgr();

            if (this.strategyData == null)
            {
                mgr.Refresh();
                return;
            }
            string assemblyId = this.strategyData.StrategyInfo.StrategyAssembly.AssemblyName;
            string className  = this.strategyData.StrategyInfo.ClassName;

            mgr.Refresh();

            IStrategyInfo strategyInfo = mgr.GetStrategyAssembly(assemblyId).GetStrategyInfo(className);
            IStrategyData strategyData = strategyInfo.CreateStrategyData();

            this.chartComponent.StrategyData = strategyData;
            this.Init(strategyData);
            MessageBox.Show("策略刷新成功");
        }
Beispiel #15
0
 private void BindDefaultStrategy()
 {
     try
     {
         IStrategyAssembly strategyAssembly = null;// StrategyMgrFactory.DefaultPluginMgr.GetStrategyAssembly("com.wer.sc.strategy.common");
         if (strategyAssembly == null)
         {
             return;
         }
         strategyInfo = strategyAssembly.GetStrategy("STRATEGY.DEFAULT");
         //strategyInfo = strategyAssembly.GetStrategy("STRATEGY.ZIGZAG");
         if (strategyInfo == null)
         {
             return;
         }
         strategy = strategyInfo.CreateStrategy().Strategy;
         binder   = new CompChartStrategyBinder(this.compChart1);
         binder.BindStrategy(strategy);
     }
     catch (Exception e)
     {
     }
 }
Beispiel #16
0
 private void InitStrategy(IStrategyInfo strategyInfo, IStrategy strategy)
 {
     this.strategy     = strategy;
     this.strategyInfo = strategyInfo;
     this.compParameters1.Parameters = strategy.Parameters;
 }
Beispiel #17
0
 public StrategyData(IStrategyInfo strategyInfo)
 {
     this.strategyInfo = strategyInfo;
 }