FUZZY RSI

Back Home Up Next

 

Home
Software
Prices
Download
Yahoo Charts


NEW:
ADVANCED
TRADESTATION TECHNIQUE

US Markets Daily
snapshots

Technical
Description


Forthcoming Releases:

Fuzzy Logic:
sFLC3
DLL & API


Neural Net:
Release of NXL3
DLL & API


 

FUZZY RSI

This indicator uses the same template as Fuzzy StoK.  There is basically very little to change to create any new custom fuzzy indicator.  All you need is to make sure Input1 and Input2 are normalized to the [-1:+1] range.

 

EasyLanguage Code:

input: // The first 3 parameters are used by the FLC
int RSILen(14), // indicator specific
int SmoothingFactor(3), // indicator specific
int MomLen(1), // indicator specific
int Attenuation(2),

int Shape(0), // Shape : 0 for 3x3, 1 for 5x5
int FuzzySet1(0), // Fuzzy Set Model for Input1
int FuzzySet2(0), // Fuzzy Set Model for Input2
int FuzzySet3(0), // Fuzzy Set Model for Output

int FuzzySetLabels1(0), // Fuzzy Set labels for Input1
int FuzzySetLabels2(0), // Fuzzy Set labels for Input2
int FuzzySetLabels3(0), // Fuzzy Set labels for Output

int RuleSetModel(0); // Default Rule Set Model

vars:

bool Verbose(false),
int FLCnumber(0),
double Input1(0),
double Input2(0),
double Output(0),
double Output1(-1),
double Output2(-1),
double Output3(-1),
double Output4(-1),
double Output5(-1);

array:
double Outputs[5](-1);

Input1 = Xaverage(RSI(Close, SmoothingFactor) / 50 - 1,SmoothingFactor);;
Input2 = MomSigmoid(Input1,MomLen, Attenuation);

Output = FLC_Single(
FLCnumber,
Input1,
Input2,
Output1,
Output2,
Output3,
Output4,
Output5,
Shape,
FuzzySet1,
FuzzySet2,
FuzzySet3,
FuzzySetLabels1,
FuzzySetLabels2,
FuzzySetLabels3,
RuleSetModel);

if Currentbar = 1 then print ("FLC Number: ", FLCnumber:0:0);

if Output >= -1 then
begin
If Output>0 then
begin
if Output >= Output[1] then
SetPlotColor(1,Cyan)
else
SetPlotColor(1,Blue);
end
else
begin
if Output <= Output[1] then
SetPlotColor(1,Red)
else
SetPlotColor(1,DarkRed);
end;
plot1(Output,"FuzzyRSI");
plot2(Input1,"I1");
plot3(Input2,"I2");
if lastbaronchart and Verbose then print("FuzzyRSI FLC ", FLCnumber:0:0," ", output,
Output1, Output2, Output3, Output4, Output5);

end
else
begin
NoPlot(Plot1);
if lastbaronchart then print("FuzzyRSI FLC", FLCnumber:0:0, " runtime error: ", Output:0:0);
end;

 

MOMSIGMOID

MonSigmoid is a custom normalised gradient or momentum indicator:

Inputs:
double Series(numericseries),
int Length(numeric),
double Attenuation(numericsimple);

{
This function uses a standard sigmoid transform
to squash large momentum values.

Output is range bound: [-1:+1]

'Length' and 'Attenuation' must be positive
}

MomSigmoid = 2 / ( 1 + expvalue( -Attenuation * (Series - Series[Length]) ) ) - 1;
 

Home Up Best viewed with MS Internet Explorer 5 and above

Page last modified: May 08, 2008
Copyright ForeTrade Technologies 21st century and thereafter