比如,我在某天,根据指标a一共选出了10个股票。我希望获得这10个股票的列表,然后从这10个股票中再优选出5个股票,并买入。 找了一圈,好像没看到合适的途径。 我想的一个方法:每次调用MySymbolScript::NewBar时,如果该股票符合指标a,那么就把该股票加入到一个列表里。最后在MySystem中获取该列表,再优选。关键的问题是在MySystem中找不到合适的位置来插入代码获取列表来优选。 有兄弟有好的办法吗?
可以在MySystem的NewBar()方法中插入代码。 有两种办法:一是在MySymbolScript中计算指标并存入MySystem中的列表后进行优选;二是在MySymbolScript计算指标,在MySystem里把指标存入列表、优选。MySystem可以访问每个MySymbolScript对象的,比如说MySymbolScript有个指标A,则在MySystem中可以这样获取: public override void NewBar() { base.NewBar(); foreach(Symbol symbol in this.Symbols) { ... ... this.SymbolScripts[symbol].A.Current ... //可以在这里将ABC存入列表 ... } //在这里对列表作优选等处理 }