request.seed в Pine Script v5 позволяет получать точные исторические и реалтайм данные по фьючерсам Binance (например, BINANCE:BTCUSDT.P_OI) для фильтрации ложных пробоев и подтверждения силы тренда без эффекта перерисовки (repainting).Почему именно request.seed?
В отличие от стандартной функции request.security, которая предназначена для работы с обычными ценовыми графиками, функция request.seed в Pine Script v5 разработана специально для запроса альтернативных данных (таких как Open Interest, ставки финансирования или кастомные базы данных), которые не привязаны жестко к стандартной сетке баров основного инструмента. Это минимизирует рассинхронизацию данных на истории.
Анализ открытого интереса в связке с объемом — классический инструмент профессиональных квантов. Например, рост цены на фоне роста OI подтверждает истинность движения, в то время как рост цены при падающем OI указывает на закрытие шортов (сквиз) и скорое затухание импульса. Для более глубокого понимания фильтрации рыночного шума рекомендуем ознакомиться со статьей Фильтрация ложных пробоев уровней в Pine Script v5: RSI и Объем.
Исходный код
Ниже представлен готовый к использованию индикатор, который запрашивает данные Open Interest для указанного фьючерса Binance, рассчитывает его динамику и отображает в отдельном подвале графика.
//@version=5
indicator("Binance Futures Open Interest via request.seed", overlay=false, precision=0, format=format.volume)
// Входные параметры
symbol_input = input.symbol("BINANCE:BTCUSDT.P", title="Фьючерсный контракт")
tf_input = input.timeframe("D", title="Таймфрейм данных")
// Формируем тикер для Открытого Интереса (OI)
// Для Binance Futures на TradingView используется суффикс _OI
oi_ticker = symbol_input + "_OI"
// Получаем данные через request.seed
// Функция принимает идентификатор источника данных и имя запрашиваемого поля
oi_close = request.seed(oi_ticker, "close")
oi_open = request.seed(oi_ticker, "open")
// Безопасная обработка пустых значений (NaN)
oi_current = na(oi_close) ? 0.0 : oi_close
oi_previous = na(oi_close[1]) ? oi_current : oi_close[1]
// Расчет изменения открытого интереса
oi_delta = oi_current - oi_previous
oi_color = oi_delta >= 0 ? color.green : color.red
// Отображение данных на графике
plot(oi_current, title="Open Interest Value", color=color.blue, linewidth=2, style=plot.style_line)
plotbar(oi_open, oi_open, oi_current, oi_current, title="OI Change Bar", color=oi_color)
Разбор параметров
symbol_input: Строковый параметр выбора базового актива. Важно указывать именно фьючерсный контракт (например,BINANCE:BTCUSDT.P), так как спотовый рынок не имеет открытого интереса.oi_ticker: Динамически формируемая строка тикера. Путем конкатенации базового символа и суффикса_OIмы получаем валидный тикер открытого интереса для Binance.request.seed(): Специализированная функция Pine Script v5. Первый аргумент — уникальный идентификатор данных (seed_id), второй — запрашиваемое поле (в нашем случаеcloseиopen).oi_delta: Разница между текущим и предыдущим значением открытого интереса. Позволяет визуализировать приток или отток ликвидности в контракты.
Практическое применение и оптимизация
При построении сложных торговых роботов часто требуется анализировать открытый интерес не по одному инструменту, а по целой корзине активов. В таких сценариях для оптимизации вычислений и хранения данных рекомендуется использовать матрицы. Подробнее об этом вы можете прочитать в нашей статье Матрицы в Pine Script v5: Расчет корреляции криптовалют.
Также помните, что при тестировании стратегий на исторических данных критически важно избегать заглядывания в будущее (lookahead bias). Использование request.seed помогает минимизировать этот риск, однако для полной уверенности в результатах бэктеста (особенно на нетривиальных типах графиков) изучите руководство Бэктест стратегии на ренко-графиках в Pine Script v5 без перерисовки.
Как запустить
1. Откройте платформу TradingView и перейдите в раздел Pine Editor (Редактор Pine).
2. Скопируйте представленный выше код и вставьте его в редактор, заменив стандартный шаблон.
3. Нажмите кнопку Add to chart (Добавить на график).
4. В настройках индикатора вы можете изменить анализируемый фьючерсный контракт и таймфрейм для адаптации под вашу торговую стратегию.




