Страница 1 из 1

SO (Stochastic Oscillator) – стохастический осциллятор

Добавлено: 08 фев 2016, 07:47
evge
Стохастический осциллятор – является еще одним ярким представителем нормированных осцилляторов, т.е. его значения колеблются в диапазоне от 0 до 100. Индикатор показывает положение и направление движения текущей цены относительно максимума и минимума за выбранный период.

Сигнальная линия строится как простое среднее от основной линии стохастика.

Signal = SMA(SO, N3).

N1 – период поиска максимального и минимального значения, N2 – период сглаживания быстрого стохастика, N3 – период сигнальной линии

Сигналы

  • Шорт – индикатор пересекает вниз уровень «80»; лонг – индикатор пересекает вверх уровень «20».
  • SO пересекает сигнальную линию вверх или вниз.
  • Анализ дивергенций между экстремумами индикатора MFI и ценой.

Автор: Джордж Лэйн (George Lane).
Источник: Стивен Б. Акелис, Технический анализ от А до Я.

Пример:

SO-00.png
SO-00.png (42.28 КБ) 33698 просмотров


Исходный текст:

Код: Выделить всё

function Initialize()
{
   IndicatorName = "SO";   
   AddInput("Input", Inputs.Candle);   
   PriceStudy = false;   
   AddSeries("sK", DrawAs.Line, Color.White, false);   
   AddSeries("sD", DrawAs.Line, Color.Green);
   AddSeries("Signal", DrawAs.Line, Color.Gray);

   AddParameter("nK", 5);   
   AddParameter("nD", 3);
   AddParameter("nSignal", 3);

   AddLevel(20.0 , Color.Gray, "sD");
   AddLevel(80.0 , Color.Gray, "sD");
}

function Evaluate()
{
// AlfaDirect. 2015. OX
// SO - Совпадает со встроенным SO AlfaDirect
 var i = 0;
 var eMax = 0.0;
 var eMin = 100000000.0;
 if (CurrentIndex < (nK + nD + nSignal))
 {
   sK = 0.0;
   sD = 0.0;
   Signal = 0.0;
 }
 else
 {
   for (i=0; i < nK; i++)
   { 
      if (Input.High[-i] > eMax)
         eMax = Input.High[-i];
      if (Input.Low[-i] < eMin)
         eMin = Input.Low[-i];
   }
   var a = (eMax - eMin);
   if (a > 0.0)
       sK = (Input.Close[0] - eMin) / (eMax - eMin) * 100.0;
   else
       sK = 100.0;

   sD = sD[-1] - (sK[-nD] - sK[0])/nD;
   Signal = Signal[-1] - (sD[-nSignal] - sD[0])/nSignal;
 }
}


Индикатор является встроенным индикатором, поэтому создавать пользовательский индикатор не имеет смысла.

Re: SO (Stochastic Oscillator) – стохастический осциллятор

Добавлено: 17 сен 2017, 06:44
abelok
Если установлен стохастик , то во вкладке "графические объекты" часто отображаются уровни 20 и 80. Причём их может быть много.

Re: SO (Stochastic Oscillator) – стохастический осциллятор

Добавлено: 01 июн 2019, 21:52
spekt
Лонг – индикатор пересекает вниз уровень «80»; шорт – индикатор пересекает вверх уровень «20».


Евгений, тут точно нет ошибки? Вроде ведь наоборот.

Re: SO (Stochastic Oscillator) – стохастический осциллятор

Добавлено: 02 июн 2019, 11:35
evge
spekt писал(а):Евгений, тут точно нет ошибки? Вроде ведь наоборот.


Всё верно. Спасибо. Поправил выше.
Копировал описание из библиотеки индикаторов очень давно .

Re: SO (Stochastic Oscillator) – стохастический осциллятор

Добавлено: 11 апр 2022, 21:41
Evgeny_Gen_Zaytsev
Добрый день! А если я хочу расширить границы диапазона стохастического осциллятора сделать их не 20-80%, а например 5-90%. Возможно ли это реализовать? Заранее спасибо!!! :geek: :geek: :geek: