/// <summary> /// Returns a TradeRule generated with two indicators and a CompareType /// </summary> /// <param name="indicator1">The first indicator</param> /// <param name="compareType">The comparison type</param> /// <param name="indicator2">The last indicator</param> /// <returns>Returns a new TradeRule object</returns> public static TradeRule GenerateTradeRule(string indicator1, IndicatorCompareType compareType, string indicator2) { try { TradeRule tr = null; switch (compareType) { case IndicatorCompareType.GT: case IndicatorCompareType.LT: tr = new SimpleCompareTradeRule(indicator1, compareType, indicator2); break; case IndicatorCompareType.crossesAbove: case IndicatorCompareType.crossesBelow: tr = new CrossesCompareTradeRule(indicator1, compareType, indicator2); break; case IndicatorCompareType.positiveDiverge: case IndicatorCompareType.negativeDiverge: tr = new DivergeCompareTradeRule(indicator1, compareType, indicator2); break; default: tr = null; break; } return(tr); } catch (TradeRuleException) { throw; } }
/// <summary> /// Returns a TradeRule generated with two indicators and a CompareType /// </summary> /// <param name="indicator1">The first indicator</param> /// <param name="compareType">The comparison type</param> /// <param name="indicator2">The last indicator</param> /// <returns>Returns a new TradeRule object</returns> public static TradeRule GenerateTradeRule(string indicator1, IndicatorCompareType compareType, string indicator2) { try { TradeRule tr = null; switch (compareType) { case IndicatorCompareType.GT: case IndicatorCompareType.LT: case IndicatorCompareType.DOWN_XUNDER: case IndicatorCompareType.UP_XOVER: tr = new SimpleCompareTradeRule(indicator1, compareType, indicator2); break; /// ********************************************** /// GDBCup - More compares could be added here /// ********************************************** default: tr = null; break; } return tr; } catch (TradeRuleException) { throw; } }