Exemplo n.º 1
0
        public IStockFilter generateFilter()
        {
            IStockFilter filter  = null;
            string       year    = GlobalConfig.getInstance().curYear;
            string       quarter = GlobalConfig.getInstance().curQuarter;

            switch (m_type)
            {
            case AppFilterType.FLTT_Cost:
                filter = generateCostFilter();
                break;

            case AppFilterType.FLTT_PE:
                filter = generatePEFilter();
                break;

            case AppFilterType.FLTT_InIndustry:
                filter = generateInIndustryFilter();
                break;

            case AppFilterType.FLTT_PriceScale:
                filter = new PriceScaleFilter(m_param1);
                break;

            case AppFilterType.FLTT_Distrib:
                filter = new DistribBonusFilter(year, quarter, m_param1);
                break;

            case AppFilterType.FLTT_ExcludeIndustry:
                filter = new IndustryExcludeFilter();
                break;

            case AppFilterType.FLTT_STStocks:
                filter = new STFilter();
                break;

            case AppFilterType.FLTT_ROE:
                filter = new ROESustainedFilter(year, quarter, m_param1, int.Parse(m_param2));
                break;

            case AppFilterType.FLTT_NetProfitRatio:
                filter = new NetProfitRatioSustainedFilter(year, quarter, m_param1, int.Parse(m_param2));
                break;

            case AppFilterType.FLTT_IncludeIndustry:
                string[]      arr        = m_param2.Split(';');
                List <string> industries = new List <string>();
                industries.AddRange(arr);
                filter = new IndustryIncludeFilter(industries);
                break;

            case AppFilterType.FLTT_HolderCount:
                filter = generateHolderCountFilter();
                break;

            case AppFilterType.FLTT_StableProfit:
                int yearsCount = int.Parse(m_param2);
                filter = new QuarterNetProfitFilter(year, quarter, yearsCount, 0.1);
                // AnnualNetProfitFilter(year, quarter, yearsCount, 0.1);
                break;

            case AppFilterType.FLTT_Amplitude:
                int daysCount = int.Parse(m_param2);
                filter = new AvgAmplitudeFilter(m_param1, daysCount);
                break;

            case AppFilterType.FLTT_SubNew:
                filter = new SubNewFilter();
                break;

            case AppFilterType.FLTT_PBCost:
                filter = new AnnualPBCostFilter(year, quarter, m_param1);
                break;

            case AppFilterType.FLTT_BlackList:
                filter = new BlackListFilter();
                break;

            default:
                break;
            }

            return(filter);
        }
Exemplo n.º 2
0
 public void SetUp()
 {
     blackList = A.Fake <IEnumerable <string> >();
     A.CallTo(() => blackList.GetEnumerator()).Returns(blackListWords.GetEnumerator());
     filter = new BlackListFilter(blackList);
 }