{Gaussian Filter}
{Ported to EasyLanguage by: atavachron}
{Original author: DrKoch}
Inputs: Price(NumericSeries), Period(NumericSimple), poles(NumericSimple);
variables: aa(0), b(0), w(0), x(0), y(0), y1(0), y2(0), y3(0), y4(0),
a_1(0), a_12(0), a_13(0), a_14(0), a2(0), a3(0), a4(0), Pi(3.141592654),
sqrtOf2(1.414213562);
{If number of poles is < 0 or > 4 then return 0.}
{Number of filter poles must be between 1 and 4, inclusive}
If (poles >= 1) and (poles <= 4) then
begin
{initialization - performed only for first bar}
if CurrentBar = 1 then
begin
w = 2 * Pi / Period; {omega}
w = 180 * w / Pi; {in degrees}
b = (1 - cosine(w)) / (power(sqrtOf2, 2.0/poles) - 1.0);
aa = -b + squareroot(b*b + 2*b);
a_1 = 1.0 - aa;
a_12 = a_1 * a_1;
a_13 = a_1 * a_1 * a_1;
a_14 = a_12 * a_12;
a2 = aa * aa;
a3 = aa * aa * aa;
a4 = a2 * a2;
y1 = Price;
y2 = y1;
y3 = y2;
y4 = y3;
end;
{Calculate your indicator value here}
x = Price;
if (poles = 1) then
y = aa * x + a_1 * y1
else if (poles = 2) then
y = a2 * x + 2 * a_1 * y1 - a_12 * y2
else if (poles = 3) then
y = a3 * x + 3 * a_1 * y1 - 3 * a_12 * y2 + a_13 * y3
else if (poles = 4) then
y = a4 * x + 4 * a_1 * y1 - 6 * a_12 * y2 + 4 * a_13 * y3 - a_14 * y4;
y4 = y3; {delayed by four bars}
y3 = y2; {delayed by three bars}
y2 = y1; {delayed by two bars}
y1 = y; {delayed by one bar}
Gauss = y;
end
else
Gauss = 0.0;
Announcement
Collapse
No announcement yet.
Partner 728x90
Collapse
NinjaTrader
Porting Gauss filter
Collapse
X
-
Porting Gauss filter
this is a tradestation function code,have I tried to write the code for Ninja but not plot nothing.
I attach file CS MaGaussCode:Tags: None
-
Originally posted by Mauro60 View Postthis is a tradestation function code,have I tried to write the code for Ninja but not plot nothing.
I attach file CS MaGaussCode:{Gaussian Filter} {Ported to EasyLanguage by: atavachron} {Original author: DrKoch} Inputs: Price(NumericSeries), Period(NumericSimple), poles(NumericSimple); variables: aa(0), b(0), w(0), x(0), y(0), y1(0), y2(0), y3(0), y4(0), a_1(0), a_12(0), a_13(0), a_14(0), a2(0), a3(0), a4(0), Pi(3.141592654), sqrtOf2(1.414213562); {If number of poles is < 0 or > 4 then return 0.} {Number of filter poles must be between 1 and 4, inclusive} If (poles >= 1) and (poles <= 4) then begin {initialization - performed only for first bar} if CurrentBar = 1 then begin w = 2 * Pi / Period; {omega} w = 180 * w / Pi; {in degrees} b = (1 - cosine(w)) / (power(sqrtOf2, 2.0/poles) - 1.0); aa = -b + squareroot(b*b + 2*b); a_1 = 1.0 - aa; a_12 = a_1 * a_1; a_13 = a_1 * a_1 * a_1; a_14 = a_12 * a_12; a2 = aa * aa; a3 = aa * aa * aa; a4 = a2 * a2; y1 = Price; y2 = y1; y3 = y2; y4 = y3; end; {Calculate your indicator value here} x = Price; if (poles = 1) then y = aa * x + a_1 * y1 else if (poles = 2) then y = a2 * x + 2 * a_1 * y1 - a_12 * y2 else if (poles = 3) then y = a3 * x + 3 * a_1 * y1 - 3 * a_12 * y2 + a_13 * y3 else if (poles = 4) then y = a4 * x + 4 * a_1 * y1 - 6 * a_12 * y2 + 4 * a_13 * y3 - a_14 * y4; y4 = y3; {delayed by four bars} y3 = y2; {delayed by three bars} y2 = y1; {delayed by two bars} y1 = y; {delayed by one bar} Gauss = y; end else Gauss = 0.0;
may someone could help me porting this indicator? I made some piece of code...help please
Comment
-
I believe I have it working (see attachment)...but my research on the internet didn't find any documents that covered the topic of "Gauss Moving Average".
Let me know how it works for you!
BenAttached Files
Comment
Latest Posts
Collapse
| Topics | Statistics | Last Post | ||
|---|---|---|---|---|
|
Started by Geovanny Suaza, 02-11-2026, 06:32 PM
|
0 responses
562 views
0 likes
|
Last Post
|
||
|
Started by Geovanny Suaza, 02-11-2026, 05:51 PM
|
0 responses
329 views
1 like
|
Last Post
|
||
|
Started by Mindset, 02-09-2026, 11:44 AM
|
0 responses
101 views
0 likes
|
Last Post
by Mindset
02-09-2026, 11:44 AM
|
||
|
Started by Geovanny Suaza, 02-02-2026, 12:30 PM
|
0 responses
547 views
1 like
|
Last Post
|
||
|
Started by RFrosty, 01-28-2026, 06:49 PM
|
0 responses
547 views
1 like
|
Last Post
by RFrosty
01-28-2026, 06:49 PM
|

Comment