Kaynak: Ehlers – “A Peek Into The Future” makalesi

Kod:
            var V =Sistem.GrafikVerileri ;
            var Price= Sistem.GrafikFiyatOku(V, "Kapanis") ;
            int n = Price.Count;
            int Period = 20;
 
         
            var BandPass = Sistem.Liste(0);
            var Voss = Sistem.Liste(0);
 
            double freq = 2.0 * Math.PI / Period;
            double alpha = Math.Exp(-1.414 * Math.PI / Period);
            double beta = 2.0 * alpha * Math.Cos(1.414 * Math.PI / Period);
            double gamma = alpha * alpha;
 
            for (int i = 2; i < n; i++)
            {
                BandPass[i] = (float)(
                    0.5 * (1 - beta + gamma) * (Price[i] - Price[i - 2])
                    + beta * BandPass[i - 1]
                    - gamma * BandPass[i - 2]
                );
            }
 
            int Fwd = Period / 2;
 
            for (int i = Fwd; i < n; i++)
            {
                double sum = 0;
                double coefSum = 0;
 
                for (int k = 1; k <= Fwd; k++)
                {
                    sum += k * BandPass[i - k];
                    coefSum += k;
                }
 
                if (coefSum != 0)
                    Voss[i] = (float)(sum / coefSum);
            }
            Sistem.Cizgiler[0].Deger = Voss;