Добавляйте переменные значения в оповещениях

31 окт, 2019

Теперь в оповещениях доступны сообщения с переменными значениями! В качестве переменных можно использовать: цены, значения индикаторов, время бара и другие. Когда оповещение сработает, вы получите актуальное значение переменной в сообщении о срабатывании.

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

Например, вы можете создать оповещение на символ NASDAQ:AAPL и написать в сообщении:

{{exchange}}:{{ticker}}, Price = {{close}}, Volume = {{volume}}

Когда оповещение сработает, вы увидите те значения вместо плейсхолдеров, которые были на момент срабатывания.

Список доступных плейсхолдеров:

1. {{ticker}} — тикер символа, на который установлено оповещение (например, AAPL, BTCUSD).

2. {{exchange}} — биржа символа, на который установлено оповещение (например, NASDAQ, NYSE, MOEX). Обратите внимание, что для данных, которые идут с задержкой, название биржи будет оканчиваться на “_DL” или “_DLY”. Например, “NYMEX_DL”.

3. {{close}}, {{open}}, {{high}}, {{low}}, {{time}}, {{volume}} — соответствующие значения на том баре, на котором произошло срабатывание. Не забывайте, что оповещения на индикаторы, объекты рисования и экзотические типы графиков зависят от резолюции, в то время как оповещения на цену всегда считаются на минутной резолюции. {{time}} — это время бара в часовом поясе UTC в формате yyyy-MM-ddTHH:mm:ssZ. Например, 2019-08-27T09:56:00Z. Остальные значения — числа с фиксированной точкой. Например, 1245.25.

4. {{timenow}} — точное время срабатывания, форматируется так же, как и время бара {{time}}. Указывается с точностью до секунд, независимо от выбранной резолюции.

5.  {{plot_0}}, {{plot_1}}, … {{plot_19}} — соответствующие серии индикатора, на который установлено оповещение. Серии индикатора — это те значения, которые вы видите на графике. Например, у встроенного индикатора Объём есть две серии — Объём и Средняя по объёму. Вы можете создать оповещение на такой индикатор и написать в сообщении следующее:

Volume: {{plot_0}}, Volume average: {{plot_1}}

В момент срабатывания вы увидите соответствующие значения индикатора:

Обратите внимание, что плоты нумеруются, начиная с нуля.

Для скриптов, написанных на Pine Script, действуют те же правила. Серии считаются по их порядку вызова в коде. Список функций, серии которых могут использоваться в сообщениях оповещений:

  • plot;
  • plotshape;
  • plotchar;
  • plotarrow;
  • plotbar;
  • plotcandle.

Если аргумент series таких функций содержит булево значение, в сообщении оповещения будут подставлены значения 0 или 1. Имейте в виду, что некоторые функции — plotcandle и plotbar — выводят на график по 4 серии, и каждая из них будет учтена в механизме нумерации. 

Однако такой способ обращения к плотам не всегда удобен. Чтобы облегчить эту задачу, мы добавили поддержку обращения к плотам по их названиям. Для этого нужно использовать плейсхолдер:

 {{plot("Name")}}

Где Name — название серии.

Для встроенных индикаторов поддерживаются только те названия, которые используются в английской версии. В примере с индикатором объёма для обращения к сериям по их названиям вы бы указали в сообщении следующее:

Volume: {{plot("Volume")}}, Volume average: {{plot("Volume MA")}}

Аналогично и для Pine Script, но в случае скриптов для обращения к сериям нужно указывать название из аргумента title соответствующей функции (поддерживается для всех plot-функций, кроме plotcandle и plotbar), и язык уже не будет иметь значения. Если у вас нет доступа к коду, название можно увидеть в настройках стиля.

Например, чтобы обратиться к значениям такого скрипта:

//@version=4
study("My Script")
plot(close, title="Series")

Укажите в сообщении оповещения:

{{plot("Series")}}

То же название отображается в настройках скрипта:

При использовании нескольких индикаторов в одном оповещении обратиться можно к значениям только первого из них — того, который указан в первом выпадающем списке. Например, в оповещении с такими настройками:

можно обратиться только к значениям MA. Чтобы обратиться к значениям скрипта “My Script”, его нужно выбрать в первом выпадающем списке. 

Вы также можете указать новые плейсхолдеры в аргументе message функции alertcondition.

Например:

//@version=4
study("My Script")
alertcondition(close>open, message="Price {{ticker}} = {{close}}")

Сообщение из аргумента автоматически подтянется в окно сообщения в диалоге создания оповещения, как это работает и сейчас. 

Обратите внимание, что при создании оповещения с условием из функции alertcondition подстановка значений будет работать только для скриптов v4 и выше.

Значения из срабатываний можно использовать вместе с вебхуками, отправляя переменные значения из сообщения на нужные адреса. Это открывает ещё больше возможностей для тех, кто использует оповещения.

Look first Then leap

Мы создали TradingView, чтобы вы могли пользоваться самыми крутыми функциями.
Открыть график