ciao ho questo codice ma non lavora da un segnale pari a zero.
come può essere corretto?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
///////////// Gaussian Filter /////////////
pr= medianprice
pi= 3.141592654
if pol> 4 then
pol= 4
endif
if pol= 2 then
sq= SQRT (2 )
elsif pol= 1 then
sq= 2
elsif pol= 3 then
sq= 1.12246
elsif pol= 4 then
sq= sqrt (sqrt (2 ))
endif
if barindex = 0 then
w= 2 * pi/ per
w= 180 * w/ pi
b= (1 - cos (w))/ (sq- 1 )
aa= - b+ sqrt (b* b+ 2 * b)
a1= 1 - aa
a12= a1* a1
a13= a1* a1* a1
a14= a12* a12
a2= aa* aa
a3= aa* aa* aa
a4= a2* a2
y1= pr
y2= y1
y3= y2
y4= y3
endif
if pol= 1 then
y= aa* pr+ a1* y1
elsif pol= 2 then
y= a2* pr+ 2 * a1* y1- a12* y2
elsif pol= 3 then
y= a3* pr+ 3 * a1* y1- 3 * a12* y2+ a13* y3
elsif pol= 4 then
y= a4* pr+ 4 * a1* y1- 6 * a12* y2+ 4 * a13* y3- a14* y4
endif
y4= y3
y3= y2
y2= y1
y1= y
gauss= y
return gauss