Пример #1
0
        public Macd(ValueRow src, int longPeriod = 26, int shortPeriod = 12, int signalPeriod = 9, AverageMethod method = AverageMethod.Exponencial)
        {
            this.Source1    = new Ma(src, method, longPeriod);
            this.Source2    = new Ma(src, method, shortPeriod);
            this.CalcMethod = (s1, s2, i) => { return(s2[i] - s1[i]); };

            _signal = new Ma(this, method, signalPeriod);
            _hist   = new Calc2(this, _signal, (m, s, i) => { return(m[i] - s[i]); });
        }
Пример #2
0
 public BollingerBands()
 {
     _n        = 1;
     _width    = 2;
     _bbMiddle = new Ma();
     _stdDev   = new StdDev();
     _bbTop    = new ValueRow();
     _bbBottom = new ValueRow();
 }
Пример #3
0
        public BollingerBands(ValueRow source, int n, decimal width)
        {
            _source = source;
            _n      = n;
            _width  = width >= 0 ? width : 0;

            _bbMiddle = new Ma(source, AverageMethod.Simple, n);
            _stdDev   = new StdDev(source, n);
            _bbTop    = new ValueRow();
            _bbBottom = new ValueRow();
            if (source != null)
            {
                source.Change += Source_Change;
                Source_Change(null, true);
            }
        }