Example #1
0
        protected override decimal Calculate()
        {
            var emaShort = Short.Calculate();
            var emaLong  = Long.Calculate();
            var macd     = emaShort - emaLong;

            Signal.Add(macd);
            var signalLine = Signal.Calculate();

            currentmacd       = macd;
            currentSignalLine = signalLine;

            return(macd - signalLine);
        }
Example #2
0
        //public decimal CurrentSpeed { get; set; }

        //private readonly FilterNearZero _filterNearZero = new FilterNearZero();

        public override void Add(decimal value)
        {
            this.Short.Add(value);
            this.Long.Add(value);
            // CurrentSpeed = Derivative(value);

            if (!this.Signal.IsValid())
            {
                var emaShort = Short.Calculate();
                var emaLong  = Long.Calculate();
                var macd     = emaShort - emaLong;
                Signal.Add(macd);
            }

            this.CurrentValue = Calculate();

            Derivative.Add(this.CurrentValue);
        }