private int CalculateTiming(MacdCrossOver macd, ExponentialMovingAverage ma, MarketSeries series) { if (IsTrendUp(series, ma)) { if (macd.Histogram.LastValue > 0) { return(1); } else { return(2); } } else { if (macd.Histogram.LastValue <= 0) { return(-1); } else { return(-2); } } }
protected override void Initialize() { macd = Indicators.MacdCrossOver(MarketSeries.Close, 26, 12, 9); wma300 = Indicators.WeightedMovingAverage(MarketSeries.Close, 300); wma150 = Indicators.WeightedMovingAverage(MarketSeries.Close, 150); arrowOffset = Symbol.PipSize * 15; }
protected override void Initialize() { Result = CreateDataSeries(); iMACD = Indicators.MacdCrossOver(26, 12, 9); iBands = Indicators.BollingerBands(MarketSeries.Close, 20, 2, MovingAverageType.Simple); }
protected override void Initialize() { if (EnableATRInfo) { atr = Indicators.AverageTrueRange(14, MovingAverageType.Exponential); } if (EnableD1) { seriesD1 = MarketData.GetSeries(TimeFrame.Daily); macdD1 = Indicators.MacdCrossOver(seriesD1.Close, 26, 12, 9); mmD1 = Indicators.ExponentialMovingAverage(seriesD1.Close, 200); } if (EnableH4) { seriesH4 = MarketData.GetSeries(TimeFrame.Hour4); macdH4 = Indicators.MacdCrossOver(seriesH4.Close, 26, 12, 9); mmH4 = Indicators.ExponentialMovingAverage(seriesH4.Close, 200); } if (EnableH1) { seriesH1 = MarketData.GetSeries(TimeFrame.Hour); macdH1 = Indicators.MacdCrossOver(seriesH1.Close, 26, 12, 9); mmH1 = Indicators.ExponentialMovingAverage(seriesH1.Close, 200); } if (EnableM5) { seriesM5 = MarketData.GetSeries(TimeFrame.Minute5); macdM5 = Indicators.MacdCrossOver(seriesM5.Close, 26, 12, 9); mmM5 = Indicators.ExponentialMovingAverage(seriesM5.Close, 200); } }
protected override void Initialize() { // Initialize and create nested indicators _macdCrossOver = Indicators.MacdCrossOver(Source, SlowPeriodParameter, FastPeriodParameter, SignalPeriods); _priorBullishCrossIndex = 0; _priorBearishCrossIndex = 0; }
private int CalculateTiming(MacdCrossOver macd) { if (macd.Histogram.LastValue > 0) { return(1); } else { return(-1); } }
protected override void OnStart() { _SOC = Indicators.StochasticOscillator(KPeriods, KSlowing, DPeriods, MovingAverageType.Simple); _MACD = Indicators.MacdCrossOver(LongCycle, ShortCycle, MACDPeriod); _RSI = Indicators.RelativeStrengthIndex(MarketSeries.Close, RSIPeriods); fastMa = Indicators.ExponentialMovingAverage(MarketSeries.Close, FastPeriods); slowMa = Indicators.ExponentialMovingAverage(MarketSeries.Close, SlowPeriods); TakeProfit = TakeProfit * 10; PipStart = PipStep / 10; PipStep = PipStep * 10; PipMulti = PipStep / 100; }
protected override void OnStart() { barId = MarketSeries.Close.Count; pendingOrderBarId = barId; rseries = MarketData.GetSeries(MarketSeries.SymbolCode, TimeFrame.Day2); lmm50 = Indicators.ExponentialMovingAverage(MarketSeries.Close, 50); rmm200 = Indicators.SimpleMovingAverage(rseries.Close, 200); lmacd = Indicators.MacdCrossOver(MarketSeries.Close, 26, 12, 9); rmacd = Indicators.MacdCrossOver(rseries.Close, 26, 12, 9); atr = Indicators.AverageTrueRange(MarketSeries, 14, MovingAverageType.Simple); Positions.Closed += PositionsOnClosed; Positions.Opened += PositionsOnOpened; }
protected override void Initialize() { if (Show_WaveA) { MAC1 = Indicators.MacdCrossOver(34, 8, 34); MAC2 = Indicators.MacdCrossOver(55, 8, 55); } if (Show_WaveB) { MAC3 = Indicators.MacdCrossOver(89, 8, 89); MAC4 = Indicators.MacdCrossOver(144, 8, 144); } if (Show_WaveC) { MAC5 = Indicators.MacdCrossOver(233, 8, 233); MAC6 = Indicators.MacdCrossOver(377, 8, 377); } }
protected override void OnStart() { BarId = MarketSeries.Close.Count; LastPositionBarId = BarId; var reftf = GetReferenceTimeframe(MarketSeries.TimeFrame); rseries = MarketData.GetSeries(MarketSeries.SymbolCode, reftf); lmm50 = Indicators.ExponentialMovingAverage(MarketSeries.Close, 50); lmm100 = Indicators.WeightedMovingAverage(MarketSeries.Close, 100); lmm200 = Indicators.WeightedMovingAverage(MarketSeries.Close, 200); rmm200 = Indicators.WeightedMovingAverage(rseries.Close, 200); lmacd = Indicators.MacdCrossOver(MarketSeries.Close, 26, 12, 9); rmacd = Indicators.MacdCrossOver(rseries.Close, 26, 12, 9); rsi = Indicators.RelativeStrengthIndex(MarketSeries.Close, 6); Positions.Closed += PositionsOnClosed; }
private int CalculateTiming(MacdCrossOver macd, WeightedMovingAverage wma, MarketSeries series) { if (IsTrendUp(series, wma)) { if (macd.Histogram.LastValue > 0 && macd.Signal.LastValue > 0) { return(1); } else if (macd.Histogram.LastValue > 0 && macd.Signal.LastValue < 0) { return(4); } else if (macd.Histogram.LastValue <= 0 && macd.Signal.LastValue >= 0) { return(2); } else { return(3); } } else { if (macd.Histogram.LastValue < 0 && macd.Signal.LastValue < 0) { return(-1); } else if (macd.Histogram.LastValue < 0 && macd.Signal.LastValue > 0) { return(-4); } else if (macd.Histogram.LastValue >= 0 && macd.Signal.LastValue <= 0) { return(-2); } else { return(-3); } } }
protected override void Initialize() { reftf = GetReferenceTimeFrame(MarketSeries.TimeFrame); rseries = MarketData.GetSeries(reftf); lmacd = Indicators.MacdCrossOver(MarketSeries.Close, 26, 12, 9); rmacd = Indicators.MacdCrossOver(rseries.Close, 26, 12, 9); lma = Indicators.WeightedMovingAverage(MarketSeries.Close, 200); rma = Indicators.WeightedMovingAverage(rseries.Close, 200); Print("Load reference time frame: {0}", reftf); Reference = CreateDataSeries(); Local = CreateDataSeries(); var result = CalculateMarketTiming(); Reference[MarketSeries.Close.Count - 1] = result.Reference; Local[MarketSeries.Close.Count - 1] = result.Local; }
protected override void OnStart() { bars = MarketSeries.Close.Count; var reftf = GetReferenceTimeframe(MarketSeries.TimeFrame); rseries = MarketData.GetSeries(MarketSeries.SymbolCode, reftf); lmacd = Indicators.MacdCrossOver(MarketSeries.Close, 26, 12, 9); rmacd = Indicators.MacdCrossOver(rseries.Close, 26, 12, 9); atr = Indicators.AverageTrueRange(MarketSeries, 14, MovingAverageType.Exponential); rsi = Indicators.RelativeStrengthIndex(MarketSeries.Close, 6); lmm150 = Indicators.WeightedMovingAverage(MarketSeries.Close, 150); lmm300 = Indicators.WeightedMovingAverage(MarketSeries.Close, 300); rmm150 = Indicators.WeightedMovingAverage(rseries.Close, 150); rmm300 = Indicators.WeightedMovingAverage(rseries.Close, 300); Positions.Closed += PositionsOnClosed; }
protected override void OnStart() { var reftf = GetReferenceTimeframe(MarketSeries.TimeFrame); rseries = MarketData.GetSeries(MarketSeries.SymbolCode, reftf); atr = Indicators.AverageTrueRange(MarketSeries, 6, MovingAverageType.Weighted); sto = Indicators.StochasticOscillator(MarketSeries, 13, 9, 4, MovingAverageType.Simple); ema8 = Indicators.ExponentialMovingAverage(MarketSeries.Close, 8); ema3 = Indicators.ExponentialMovingAverage(MarketSeries.Close, 3); lmm150 = Indicators.WeightedMovingAverage(MarketSeries.Close, 150); lmm300 = Indicators.WeightedMovingAverage(MarketSeries.Close, 300); rmm150 = Indicators.WeightedMovingAverage(rseries.Close, 150); rmm300 = Indicators.WeightedMovingAverage(rseries.Close, 300); lmacd = Indicators.MacdCrossOver(MarketSeries.Close, 26, 12, 9); rmacd = Indicators.MacdCrossOver(rseries.Close, 26, 12, 9); Positions.Closed += PositionsOnClosed; }
protected override void OnStart() { BarId = MarketSeries.Close.Count; LastPositionBarId = BarId; var reftf = GetReferenceTimeframe(MarketSeries.TimeFrame); rseries = MarketData.GetSeries(MarketSeries.SymbolCode, reftf); lmm50 = Indicators.WeightedMovingAverage(MarketSeries.Close, 50); lmm100 = Indicators.WeightedMovingAverage(MarketSeries.Close, 100); lmm200 = Indicators.WeightedMovingAverage(MarketSeries.Close, 200); rmm200 = Indicators.WeightedMovingAverage(rseries.Close, 200); lmacd = Indicators.MacdCrossOver(MarketSeries.Close, 26, 12, 9); rmacd = Indicators.MacdCrossOver(rseries.Close, 26, 12, 9); rsi = Indicators.RelativeStrengthIndex(MarketSeries.Close, 6); sto = Indicators.StochasticOscillator(MarketSeries, 14, 3, 3, MovingAverageType.Simple); Positions.Closed += PositionsOnClosed; currentPosition = Positions.Find(Label, Symbol); }
//private HashSet<Int32> ignorableIds; protected override void OnStart() { //ignorableIds = new HashSet<int>(); BarId = MarketSeries.Close.Count; LastPositionBarId = BarId; var reftf = GetReferenceTimeframe(MarketSeries.TimeFrame); rseries = MarketData.GetSeries(MarketSeries.SymbolCode, reftf); lmm8 = Indicators.ExponentialMovingAverage(MarketSeries.Close, 8); lmm100 = Indicators.WeightedMovingAverage(MarketSeries.Close, 100); lmm200 = Indicators.WeightedMovingAverage(MarketSeries.Close, 200); rmm200 = Indicators.WeightedMovingAverage(rseries.Close, 200); lmacd = Indicators.MacdCrossOver(MarketSeries.Close, 26, 12, 9); rmacd = Indicators.MacdCrossOver(rseries.Close, 26, 12, 9); atr = Indicators.AverageTrueRange(MarketSeries, 14, MovingAverageType.Simple); sto = Indicators.StochasticOscillator(MarketSeries, 13, 3, 3, MovingAverageType.Simple); Positions.Closed += PositionsOnClosed; }
protected override void Initialize() { // Initialize and create nested indicators macdCrossOver = Indicators.MacdCrossOver(source, longCycle, shortCycle, Periods); rsi = Indicators.RelativeStrengthIndex(source, Periods); }
protected override void Initialize() { this.macd = this.Indicators.MacdCrossOver(source: this.Bars.ClosePrices, longCycle: this.SlowMA, shortCycle: this.FastMA, signalPeriods: this.SignalPeriod); }
protected override void Initialize() { OSMA = CreateDataSeries(); MAC = Indicators.MacdCrossOver(MarketSeries.Close, Long_Cycle, Short_Cycle, Signal); }