Параметры
PeriodRSI - период индикатора RSI
nK, nD, nS - параметры индикатора SO (Stochastic Oscillator)
Авторы
Тушард Чейнд и Стэнли Кролл
Автор (исходный код АД4)
AlfaDirect 2016. OX
Пример
Код: Выделить всё
function Initialize()
{
IndicatorName = "StochRSI";
AddInput("Input", Inputs.Candle);
PriceStudy = false;
AddParameter("PeriodRSI", 20, 1);
AddParameter("nK", 20, 1);
AddParameter("nD", 10, 1);
AddParameter("nS", 10, 1);
AddSeries("sK", DrawAs.Line, Color.Gray, false);
AddSeries("sD", DrawAs.Line, Color.Blue);
AddSeries("Signal", DrawAs.Line, Color.Gray);
AddLevel(20, Color.Gray, "Signal");
AddLevel(80, Color.Gray, "Signal");
}
function Evaluate()
{
// AlfaDirect 2016. OX
// RSI
var s = RSI(Input.Close, PeriodRSI);
// SO
var i = 0;
var eMax = 0.0;
var eMin = 100000000.0;
if (CurrentIndex < (nK + nD + nS))
{
sK = 0.0;
sD = 0.0;
Signal = 0.0;
}
else
{
for (i=0; i < nK; i++)
{
if (s[-i] > eMax)
eMax = s[-i];
if (s[-i] < eMin)
eMin = s[-i];
}
var a = (eMax - eMin);
if (a > 0.0)
sK = (s[0] - eMin) / (eMax - eMin) * 100.0;
else
sK = 100.0;
sD = sD[-1] - (sK[-nD] - sK[0])/nD;
Signal = Signal[-1] - (sD[-nS] - sD[0])/nS;
}
}
Скачать исходный текст