Table of Contents

Паттерны

Паттерн (от англ. pattern — модель, образец) — в техническом анализе называются устойчивые повторяющиеся сочетания данных цены, объёма или индикаторов. Анализ паттернов основывается на одной из аксиом технического анализа: «история повторяется» — считается, что повторяющиеся комбинации данных приводят к аналогичному результату.

Паттерны также называют «шаблонами» или «фигурами» технического анализа.

Паттерны условно разделяются на:

  • Неопределённые (могут вести и к продолжению и к смене текущего тренда).
  • Паттерны продолжения текущего тренда.
  • Паттерны смены существующего тренда.

Использование паттернов

В Designer

В Designer встроены предустановленные свечные паттерны, которые можно использовать в вашей торговой стратегии. Паттерны вызываются через кубик индикатор с последующим выбором соответствующего значения. Сам паттерн выбирается из выпадающего списка в окне справа.

IndicatorPatternCommon

Также возможно редактирование существующих и добавление собственных пользовательских паттернов. Для этого, нужно нажать на кнопку Designer edit button после чего будет показано окно редактирования паттернов.

IndicatorPatternCommon01

Для того, чтобы создать собственный паттерн необходимо нажать кнопку DesignerPlusButton в верхней части окна. Нажатие кнопки DesignerDeleteButton удаляет паттерн.

В Terminal

В Terminal паттерны добавляются на график как любой другой индикатор. Для этого достаточно нажать правой кнопкой мыши на график и выбрать соответствующий индикатор из списка доступных.

В StockSharp API

При использовании S# (или при создании стратегий из кода в Designer), работа с паттернами производится как с любым другим индикатором. Пример использования:

// Создание индикатора паттерна
var patternIndicator = new CandlePatternIndicator
{
    // Установка нужного паттерна
    Pattern = new ExpressionCandlePattern("Мой паттерн", new[]
    {
        new CandleExpressionCondition("C > O"), // Текущая свеча - растущая
        new CandleExpressionCondition("pC < pO") // Предыдущая свеча - падающая
    })
};

// Добавляем индикатор в коллекцию
Indicators.Add(patternIndicator);

// Обработка свечи
var result = patternIndicator.Process(candle);

// Проверка результата
if (result.GetValue<bool>())
{
    // Паттерн обнаружен, выполняем нужные действия
}

Формат описания паттернов

При редактировании паттерна каждая строка представляет собой отдельную свечу. Самая верхняя строка - это текущая свеча, соответственно вторая строка - одна свеча назад, третья и последующие строки соответственно минус 2 и более свечей.

В редакторе используются следующие параметры:

  • O - цена открытия,
  • H - максимум,
  • L - минимум,
  • C - цена закрытия,
  • V - объем,
  • OI - открытый интерес,
  • B - тело свечи,
  • LEN - длина свечи (от максимума до минимума),
  • BS - нижняя тень свечи,
  • TS - верхняя тень свечи.

С параметрами возможно использование следующих индексов (ссылок) на нужные значения. Например, для цены закрытия:

  • C: цена закрытия текущей свечи,
  • C1: цена закрытия 1-ой свечи после текущей,
  • C2: цена закрытия 2-ой свечи после текущей,
  • pC: цена закрытия предыдущей свечи,
  • pC1: цена закрытия пред-предыдущей свечи, Все ссылки должны быть в диапазоне текущего паттерна. Например, диапазон паттерна 3 Black Crows составляет текущую и две предыдущих свечи, соответственно обращение к третьей предыдущей свече не допускается.

Для дополнительной проверки параметров во взаимосвязи используется выражение && представляющее собой логическое И.

При описании паттерна также возможно использование следующих функций: abs, acos, asin, atan, ceiling, cos, exp, floor, log, log10, max, min, pow, round, sign, sin, sqrt, tan, truncate. Подробнее об использовании функций рассказывается при описании кубика формула.

При использовании ExpressionCandlePattern в коде, формулы создаются по тем же правилам, что описаны выше, и используют те же переменные.

Стандартные паттерны

Для быстрого создания паттернов на базе существующих можно использовать раздел в нижней части окна редактора паттернов. При нажатии кнопки DesignerPlusButton в нижней части окна добавляет в окно редактирования логику паттерна выбранного из выпадающего списка напротив. Кнопка DesignerDeleteButton в нижней части окна удаляет выделенную строку в окне редактирования.