Ключевые выводы

  • Pine Script — встроенный язык сценариев TradingView для создания пользовательских технических индикаторов и торговых стратегий прямо в браузере.

  • Pine Script v6 — это текущая версия. Она базируется на пространстве имён «ta» из v5 (например, ta.ema() и ta.rsi()), добавляет более строгую систему типов, включает динамические запросы к данным по умолчанию и содержит встроенный конвертер кода, помогающий переносить старые скрипты.

  • Вы можете создавать простые индикаторы, такие как SMA, EMA и свечи, раскрашенные по цветам, всего в нескольких строках кода.

  • В Strategy Tester TradingView вы можете бэктестировать пользовательские стратегии на исторических данных цены, чтобы проверить наличие логических ошибок.

  • Никакой установки программного обеспечения не требуется. Pine Script работает полностью в веб-редакторе TradingView.

Binance Academy courses banner

Введение

Эффективный технический анализ зависит от того, есть ли у вас нужные инструменты для задачи. TradingView — одна из самых популярных платформ для построения графиков криптовалют, форекс и акций, и она поставляется с большим набором встроенных индикаторов. Но главное отличие в том, насколько сильно вы можете это настроить под себя.

Pine Script — это собственный язык сценариев TradingView. Он позволяет создавать пользовательские индикаторы, алерты и стратегии, которые запускаются прямо на ваших графиках. Это руководство проводит вас через основы Pine Script v6 (текущей версии), показывая, как настроить первый скрипт, построить индикаторы и объединить их в повторно используемый инструмент.

Что такое Pine Script?

Pine Script — это лёгкий язык сценариев, разработанный TradingView. Вы пишете скрипты в Pine Editor, который встроен в интерфейс TradingView. Когда вы нажимаете Add to Chart (Добавить на график), ваш скрипт выполняется на серверах TradingView, а результат отображается прямо на вашем графике. Никаких загрузок или установок не требуется.

Pine Script v6 — это текущая версия, и именно её следует использовать для любых новых скриптов. Она базируется на более чистом синтаксисе и пространстве имён ta, представленном в v5, и добавляет несколько улучшений: более строгую систему типов, динамические запросы к данным включены по умолчанию и более удобную обработку функций. Язык включает подробное руководство пользователя и большое сообщество опубликованных скриптов, которые вы можете просматривать на TradingView.

Что нового в Pine Script v6?

Если вы уже использовали Pine Script v5, вот самые практически значимые изменения в v6:

  • Более строгая система типов: в v5 числовые значения (int и float) могли неявно использоваться как булевы значения в условиях. В v6 это больше не разрешено. Если ваше условие использует число, вам нужно явно привести его к типу bool() . Это делает код менее неоднозначным и проще для отладки.

  • Динамические запросы по умолчанию: в v5 вызовы функций request.*() (например, request.security()) нужно было размещать в глобальной области видимости, и при этом требовались фиксированные аргументы для символа и таймфрейма. В v6 динамические запросы включены по умолчанию, то есть вы можете вызывать request.*() внутри циклов и условных блоков и передавать series-значения в качестве аргументов. Это существенно расширяет возможности скриптов для работы с несколькими символами и таймфреймами.

  • Встроенный конвертер v5-to-v6: Pine Editor может автоматически преобразовать скрипт v5 в v6. Откройте выпадающий список «Manage script» и выберите «Convert code to v6». Конвертер обрабатывает большинство изменений автоматически, хотя некоторые случаи могут потребовать ручной проверки.

  • Многострочные строки (апрель 2026): теперь v6 поддерживает литералы многострочных строк с использованием тройных кавычек (""" или '''). Это упрощает написание форматированных меток, подсказок и сообщений в логах на нескольких строках без использования escape-последовательности \n.

Более ранние версии Pine Script (v3, v4, v5) всё ещё можно запускать на TradingView, но v5 теперь устарел, а v6 рекомендуется для всех новых скриптов.

Настройка TradingView

Вы можете начать с бесплатной учётной записи TradingView. Откройте график для любого актива, например BTC/USDT, и найдите значок Pine Editor в панели инструментов справа. Нажмите на него, чтобы открыть редактор кода.

PineEditor TradingView

Когда вы нажимаете Add to Chart, скрипт запускается и результаты появляются на активном графике. Чтобы удалить скрипт, щёлкните правой кнопкой мыши в любом месте графика и выберите Remove Indicators. Держите график чистым между примерами — так вы сможете видеть каждый результат более чётко.

Pine Editor

Pine Editor поставляется с исходным скриптом в две строки. Вот минимальный пример в Pine Script v6:

//@version=6

indicator("Мой скрипт", overlay=true)

plot(close)

Функция indicator() определяет скрипт. В v5 и v6 она заменяет старую функцию study(), которая использовалась в v4 и более ранних версиях. Параметр overlay=true размещает результат на главном графике, а не в отдельной панели ниже. Линия plot(close) рисует линию, используя цену закрытия для каждого бара.

Построение свечных графиков (Candlestick)

Линейный график показывает цены закрытия, но свечные графики показывают одновременно open, high, low и close, давая больше информации о движении цены. Вот как построить свечи, раскрашенные по цветам:

//@version=6

indicator("Цветные свечи", overlay=true)

colors = open >= close ? color.red : color.green

plotcandle(open, high, low, close, color=colors)

Этот скрипт проверяет каждый бар: если цена открытия больше или равна цене закрытия, свеча красная (цена снизилась). Если цена закрытия выше цены открытия, свеча зелёная. Это стандартная цветовая схема, используемая в большинстве программ для построения графиков.

Построение скользящих средних

Скользящие средние сглаживают ценовые данные на заданном количестве периодов, благодаря чему тренды легче заметить. Pine Script v6 включает встроенные функции как для простой скользящей средней (SMA), так и для экспоненциальной скользящей средней (EMA) в пространстве имён ta.

Простая скользящая средняя (SMA)

SMA вычисляет среднее значение цен закрытия за заданное число периодов. Чтобы построить SMA за 10 периодов:

plot(ta.sma(close, 10))

Изменение числа влияет на окно просмотра. Более длинный период создаёт более плавную линию, которая медленнее реагирует на изменения в последнее время.

Экспоненциальная скользящая средняя (EMA)

Экспоненциальная скользящая средняя (EMA) придаёт больший вес недавним ценам с помощью множителя, который вычисляется как 2 / (length + 1). Это делает EMA более чувствительной к изменениям цены по сравнению с SMA. Чтобы построить обе рядом:

//@version=6

indicator("SMA vs EMA", overlay=true)

plot(ta.sma(close, 10))

plot(ta.ema(close, 10))

Вы заметите небольшую разницу: EMA точнее отслеживает движения цены на быстро меняющихся рынках, тогда как SMA немного отстаёт.

Встроенные скрипты

TradingView включает заранее подготовленные версии многих индикаторов. В Pine Editor нажмите New и выберите индикатор, например Moving Average Exponential, чтобы посмотреть его исходный код. Эти скрипты часто используют функции ввода с типами, такие как input.int() или input.float(), которые создают интерактивные панели настроек на графике. Это позволяет менять параметры, например length, без редактирования кода.

Построение индикатора Relative Strength Index (RSI)

Индикатор RSI измеряет скорость и величину недавних изменений цены. Он формирует значение в диапазоне от 0 до 100. Показания выше 70 часто связывают с потенциально перекупленным состоянием, а ниже 30 — с потенциально перепроданным. Это общие справочные уровни, а не гарантии направления движения цены.

В Pine Script v6 функция RSI имеет вид ta.rsi(close, length). Чтобы добавить готовую RSI-стратегию, нажмите New > RSI Strategy в Pine Editor. Это добавит на график маркеры направления на основе порогов RSI и переключит просмотр на вкладку Strategy Tester.

RSI обычно измеряется за 14 периодов, но вы можете изменить это значение под свой подход. Более длинные периоды дают более сглаженный индикатор с меньшим числом сигналов; более короткие периоды более чувствительны.

Тестирование вашей стратегии

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

//@version=6

strategy("Базовая стратегия", overlay=true)

entryLevel = input.int(defval=30000, title="Цена входа")

exitLevel  = input.int(defval=32000, title="Цена выхода")


if close <= entryLevel

    strategy.entry("Long", strategy.long)

if close >= exitLevel

    strategy.close_all(comment="Выход")

После добавления этого на график TradingView открывает вкладку Strategy Tester. Там отображается журнал входов, выходов и сводная статистика на основе исторических данных цены. Прошлые результаты не являются надёжным показателем будущих. Бэктест полезен, чтобы проверить, имеет ли логика стратегии смысл, но он не предсказывает будущие исходы.

Примечание: в v6 по умолчанию процент маржи для long и short стратегий составляет 100%, а движок стратегии отсекает самые старые ордера вместо выдачи ошибки, когда превышен лимит в 9 000 сделок. Эти изменения могут повлиять на то, как ваши результаты бэктеста сравниваются с тем же скриптом, запущенным в v5.

Комбинирование индикаторов

Один из самых практичных способов использования Pine Script — объединять несколько индикаторов в одном пользовательском представлении. Следующий скрипт окрашивает свечи на основе условий EMA и RSI вместе:

//@version=6

indicator("Свечи EMA + RSI", overlay=true)

emaLength = input.int(title="Длина EMA", defval=25, minval=1)

rsiLength = input.int(title="Длина RSI", defval=25, minval=1)


emaVal = ta.ema(close, emaLength)

rsiVal = ta.rsi(close, rsiLength)


colors = (close > emaVal and rsiVal > 50) ? color.green : color.red

plot(emaVal, "EMA")

plotcandle(open, high, low, close, color=colors)

Он окрашивает свечу в зелёный цвет, когда цена закрытия выше EMA, а RSI выше 50, и в красный — в противном случае. Функции input.int() создают панели настроек на графике, чтобы вы могли интерактивно менять обе длины. Такой тип визуализации упрощает увидеть, когда две условия совпадают на одном и том же баре.

Это не следует воспринимать как финансовый совет, и никакая комбинация индикаторов не убирает неопределённость из трейдинга. Используйте пользовательские скрипты как часть более широкого процесса исследования и анализа.

FAQ

Какую версию Pine Script мне использовать?

Pine Script v6 — это текущая версия, и именно её следует использовать для любых новых скриптов. Более ранние версии, такие как v5, всё ещё поддерживаются, но устарели. Если у вас уже есть скрипт v5, в Pine Editor есть встроенный конвертер: откройте выпадающий список «Manage script» и выберите «Convert code to v6».

Что случилось с функцией study()?

Функция study() была переименована в indicator() в Pine Script v5, и это продолжилось в v6. Она выполняет ту же роль: задаёт имя скрипта и свойства, например, появляется ли он поверх основного графика или в отдельной панели. Если вы видите старые скрипты, использующие study(), значит они написаны для v4 или более ранних версий.

Можно ли использовать Pine Script бесплатно?

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

Что такое пространство имён ta в Pine Script?

Пространство имён ta было введено в Pine Script v5 и продолжает существовать в v6. Встроенные функции технического анализа, которые раньше вызывались напрямую, например ema(), sma() и rsi(), теперь доступны как ta.ema(), ta.sma() и ta.rsi(). Это делает код более явным и проще для быстрого чтения.

Что изменилось в Pine Script v6 для стратегий?

В стратегиях v6 изменилось несколько значений по умолчанию. Теперь процент маржи по умолчанию для обеих позиций — long и short — равен 100%. Также движок стратегии обрезает самые старые ордера, когда превышен лимит в 9 000 сделок, а не выбрасывает ошибку. Если вы переносите стратегию с v5 на v6, проверьте результаты бэктеста, так как эти изменения могут повлиять на статистику эффективности.

Насколько надёжно бэктестирование для прогнозирования будущей эффективности?

Нет. Бэктест показывает, как стратегия могла бы работать на исторических данных, а не то, как она будет работать в будущем. Рынки меняются, и условия, которые существовали в прошлом, могут не повториться. Бэктестирование полезно для выявления логических ошибок в стратегии, но его не следует использовать как единственную основу для любого торгового решения.

Заключительные мысли

Pine Script v6 делает простым создание и тестирование пользовательских индикаторов на TradingView без стороннего программного обеспечения или установок. Начните с простых скриптов и постепенно добавляйте сложность — это практичный подход к изучению языка. Встроенная библиотека примеров в Pine Editor и встроенный конвертер v5-to-v6 — отличная отправная точка для тех, кто обновляется с более ранней версии.

Индикаторы — это инструменты для анализа, а не сигналы, которые гарантируют конкретные результаты. Никакая комбинация индикаторов не убирает неопределённость из трейдинга. Используйте Pine Script как часть более широкого исследовательского процесса и всегда рассматривайте риск-менеджмент как ключевую часть любой стратегии.

Дополнительное чтение

  • Что такое технический анализ?

  • Что такое индикатор RSI?

  • Объяснение скользящих средних

  • Руководство для начинающих по свечным графикам

  • Руководство для начинающих по TradingView

Дисклеймер: Этот контент предоставляется вам «как есть» исключительно для общей информации и в образовательных целях, без каких-либо заверений и гарантий любого рода. Он не должен рассматриваться как финансовый, юридический или иной профессиональный совет, и не предназначен для рекомендации покупки какого-либо конкретного продукта или услуги. Вам следует обратиться за собственными рекомендациями к соответствующим профессиональным консультантам. Если контент предоставлен третьей стороной, обратите внимание, что выраженные там взгляды принадлежат соответствующему третьему лицу и не обязательно отражают позиции Binance Academy. Цены цифровых активов могут быть волатильными. Стоимость ваших инвестиций может как снижаться, так и расти, и вы можете не вернуть сумму, которую инвестировали. Вы несёте единоличную ответственность за свои инвестиционные решения, а Binance Academy не несёт ответственности за любые убытки, которые вы можете понести. Для получения дополнительной информации см. наши Условия использования, Предупреждение о рисках и Условия Binance Academy.