Как настроить сигнального бота ОКХ с помощью TradingView
Пользователи TradingView и поставщики сигналов теперь могут публиковать и настраивать сигнального бота с помощью своих сигналов TradingView. Просто следуйте нашему пошаговому руководству по настройке сигнального трейдинга на ОКХ.
Чтобы изучить подробное описание технических характеристик для сообщений оповещений, ознакомьтесь со спецификацией.
Если вы столкнетесь с трудностями, ознакомьтесь с разделом Часто задаваемые вопросы. Он поможет вам решить проблемы, которые могут возникнуть при использовании этого продукта.
Шаг 1. Перейдите к сигнальному боту
Войдите в аккаунт ОКХ и нажмите «Торговать» -> «Торговые боты» -> «Маркетплейс».
После этого выберите раздел «Сигнальный бот» и нажмите «Создать».
Шаг 2. Создайте сигнал
Нажмите кнопку. Выберите «Добавить пользовательский сигнал».
Мы упростили интерфейс, чтобы вы могли быстро создавать сигналы TradingView. Введите название своего сигнала и по желанию укажите его описание (до 500 символов). Когда все будет готово, нажмите «Создать сигнал» и перейдите к следующему шагу.
Добавьте URL-адреса вебхука и спецификацию AlertMsg, которую OKX создала автоматически. Так вы перейдете к настройкам отправки сигнала на TradingView. Обратите внимание, что вам доступно два способа настройки оповещений:
TradingView. Подходит для пользователей, использующих скрипты стратегий TradingView, особенно тех, кто применяет функции strategy.*() для передачи сигналов.
Пользовательский. Разработан для более широкого круга пользователей, включая тех, кто применяет индикаторы TradingView, оповещения с помощью графиков, а также поставщиков, использующих сторонние программы.
Экспресс-обзор Pine Script™: разница между функциями Strategy и Indicator
Стратегия TradingView
Стратегии Pine Script™ нужны для ретроспективного тестирования исторических данных, а также форвард-тестов на реальных рынках. Помимо расчетов индикатора, стратегии также вызывают функции strategy.*(), передающие торговые ордера в эмулятор брокера Pine Script™. Затем эмулятор симулирует исполнение этих ордеров. Результаты ретроспективного тестирования отражаются во вкладке «Тестировщик стратегии» внизу графика рядом с вкладкой «Редактор Pine Script™».
Если вы используете скрипты стратегий TradingView с функциями** strategy.*(), перейдите сразу к Шагу 3.1: TradingView strategy.*() для начала работы.
Индикатор TradingView
При этом индикаторы Pine Script™ тоже предполагают вычисления, однако не предназначены для ретроспективного тестирования. Они не зависят от эмулятора брокера, требуют меньше ресурсов и исполняются быстрее. В Pine Script™ v4 индикаторы известны как скрипты study.
Если вы используете индикаторы/скрипты study и сторонние программы, перейдите к Шагу 3.2, Шагу 3.3 или Шагу 3.4 в зависимости от вашего сценария. Этот раздел предназначен для общих случаев использования и пользователей, которые применяют индикаторы TradingView, оповещения с помощью графиков, а также поставщиков, использующих сторонние программы.
Шаг 3. Настройте оповещения TradingView
Чтобы изучить подробное описание технических характеристик для сообщений оповещений, ознакомьтесь со спецификацией.
Откройте TradingView и выберите торговую пару, с которой хотите работать. (Убедитесь, что выбираете подходящий контракт с бессрочным свопом.)
Посмотреть полный список бессрочных свопов, поддерживаемых на OKX, можно в разделе выбора пары на странице «Торговать».
Шаг 3.1【Руководство по скриптам стратегий TradingView】:для создателей стратегий Pine Script™, использующих функции strategy.*()
Шаг 1. Настройте скрипт стратегии в «Редакторе Pine» и нажмите «Сохранить» и «Добавить на график». Если у вас уже есть скрипт стратегии, можно добавить в график его.
Шаг 2. Нажмите на значок шестеренки рядом со стратегией, которую вы добавили в свой график. Измените свойства стратегии, такие как размер ордера, в соответствии с вашими предпочтениями. Когда вы закончите, нажмите «Ок», чтобы сохранить настройки.
Как согласовать стратегию на TradingView с настройками ордера на OKX?
Для стратегии TradingView есть три варианта настройки параметров ордеров. Вы можете определить свой «размер ордера» в USDT, количестве контрактов или в процентах от капитала на основе вашего первоначального капитала. Все эти подходы можно адаптировать для OKX, однако важно понимать, как каждый из них работает на TradingView и как он соотносится с платформой OKX. Ниже приведен краткий обзор различных сценариев, которые помогут вам разобраться.
1. Размер ордера: USDT
Этот подход легко и удобно использовать. Нужно просто ввести размер ордера в абсолютном выражении, используя валюту котировки — USDT. При проведении тестирования на исторических данных на TradingView это значение будет основой для размещения всех ваших ордеров.
Чтобы параметр был полностью совместим с OKX, установите для «investmentType» значение «base» и укажите «amount» как «{{strategy.order.contracts}}». Так ваш ордер на OKX будет точно соответствовать стратегии на TradingView.
{
"id": "{{strategy.order.id}}",
"action": "{{strategy.order.action}}",
"marketPosition": "{{strategy.market_position}}",
"prevMarketPosition": "{{strategy.prev_market_position}}",
"instrument": "{{ticker}}",
"signalToken": "********", //введите signalToken для сигнала
"timestamp": "{{timenow}}",
"maxLag": "60",
"investmentType": "base",
"amount": "{{strategy.order.contracts}}"
}
2. Размер ордера: контракты
Понятие «контракты» на TradingView и OKX означает разные элементы. На TradingView контракт представляет собой одну единицу бессрочного свопа по преобладающей цене (эквивалент одной единице базовой валюты, т. е. один бессрочный BTCUSDT контракт равен покупке 1 BTC). А на OKX «размеры контракта» уникальны для каждого контракта с бессрочным фьючером. Например, один бессрочный BTCUSDT контракт равен покупке 0,01 BTC. Узнайте больше о размерах контракта на OKX по ссылке: https://www.okx.com/trade-market/info/swap.
Чтобы параметр был полностью совместим с OKX, выберите для investmentType значение base и укажите amount как «{{strategy.order.contracts}}». На TradingView плейсхолдер «{{strategy.order.contracts}}» фактически соответствует сумме в базовой валюте. А обозначение «investmentType» как «base» обеспечивает прямую совместимость. Выбор этих спецификаций гарантирует, что ваши ордера на OKX будут точно отражать вашу стратегию на TradingView.
{
"id": "{{strategy.order.id}}",
"action": "{{strategy.order.action}}",
"marketPosition": "{{strategy.market_position}}",
"prevMarketPosition": "{{strategy.prev_market_position}}",
"instrument": "{{ticker}}",
"signalToken": "********", //введите signalToken для сигнала
"timestamp": "{{timenow}}",
"maxLag": "60",
"investmentType": "base",
"amount": "{{strategy.order.contracts}}"
}
3. Размер ордера: % от капитала
При использовании параметра «% капитала» важно понимать, что ваш капитал начинается со значения, которое вы указываете в качестве первоначального капитала. Впоследствии ваш капитал будет определяться и оцениваться с помощью тестирования на исторических данных на TradingView.
Можно сделать эмуляцию, настроив investmentType как base и amount «{{strategy.order.contracts}}» (пример ниже), но важно учитывать, что значения, полученные с помощью этого способа, во многом зависят от расчетов тестирования. Между тестированием и реальной торговлей могут возникнуть расхождения, поскольку тестирование предназначено для приблизительных оценок, а не для точного исполнения ордеров. Поэтому рекомендуется указывать размер ордера либо в USDT, либо в контракте на TradingView.
{
"id": "{{strategy.order.id}}",
"action": "{{strategy.order.action}}",
"marketPosition": "{{strategy.market_position}}",
"prevMarketPosition": "{{strategy.prev_market_position}}",
"instrument": "{{ticker}}",
"signalToken": "********", //введите signalToken для сигнала
"timestamp": "{{timenow}}",
"maxLag": "60",
"investmentType": "base",
"amount": "{{strategy.order.contracts}}"
}
Шаг 3. Нажмите «Создать оповещение» на верхней панели инструментов и измените параметр «Условие» для скрипта, добавленного в график, выбрав «Order fills only». Для срока действия можно выбрать опцию «Бессрочное оповещение».
Шаг 4. Скопируйте шаблон оповещения из вкладки TradingView в спецификации сигнального бота OKX. Вставьте этот шаблон в раздел «Сообщение» в оповещении на TradingView вместе с выбранным названием оповещения.
Если вы хотите изменить рекомендуемый шаблон оповещения, убедитесь, что изменения соответствуют нашим спецификациям, указанным здесь.
Шаг 5. Перейдите в раздел URL вебхука* в уведомлениях. Вставьте адрес вебхука, скопированный из OKX, на TradingView и нажмите «Создать».
*Для доступа к этой функции требуется платная подписка на TradingView
Шаг 3.2【Руководство по индикаторам TradingView】для создателей скриптов индикаторов/study Pinescript™
Шаг 1. Настройте скрипт в «Редакторе Pine» и нажмите «Сохранить» и «Добавить на график».
Шаг 2. Нажмите «Создать оповещение» на верхней панели инструментов и измените параметр «Условие» для скрипта, добавленного в график, выбрав соответствующее «AlertCondition». В этом случае MACD Golden Cross используется вместе с шаблоном сообщения ENTER_LONG. Для срока действия можно выбрать опцию «Бессрочное оповещение».
Наконец, скопируйте шаблон оповещения из вкладки «Настроить» в спецификации сигнального бота OKX. Вставьте этот шаблон в раздел «Сообщение» в оповещении на TradingView вместе с выбранным названием оповещения.
Если вы хотите изменить рекомендуемый шаблон оповещения, убедитесь, что изменения соответствуют нашим спецификациям, указанным здесь.
*ВАЖНО! OKX предлагает четыре типа содержимого сообщений с разными действиями (например, ENTER_LONG, EXIT_LONG, ENTER_SHORT, EXIT_SHORT). При настройке оповещения выберите подходящий вариант в зависимости от вашей логики торговли.
Шаг 3. Выберите вебхук в уведомлениях. Вставьте адрес вебхука, скопированный из OKX, на TradingView и нажмите «Создать».
Шаг 3.3【Руководство по анализу графиков】для тех, кто использует анализ графиков и/или базовые линии индикаторов
Шаг 1. Нажмите на кнопку «Создать оповещение» на верхней панели инструментов и задайте условие, которое обычно используете для торговли (например, RSI-14 пересекает 30).
Затем вставьте спецификации AlertMsg от OKX в поле «Сообщение». Узнайте больше о спецификациях AlertMsg от OKX по ссылке.
*ВАЖНО! Мы поддерживаем 4 типа сообщений с разными действиями (ENTER_LONG, EXIT_LONG, ENTER_SHORT, EXIT_SHORT). При настройке оповещения выберите подходящее сообщение в зависимости от вашей торговой стратегии.
Шаг 2. Выберите URL вебхука в уведомлениях. Вставьте адрес вебхука, скопированный из OKX, на TradingView и нажмите «Создать».
Шаг 3. Чтобы посмотреть созданное оповещение, откройте вкладку «Оповещения» и выберите соответствующее оповещение.
Шаг 3.4【Руководство по сторонним программам】для поставщиков сигналов, передающих сообщения из нативных программ
Чтобы посмотреть пример настройки с Python, изучите «Приложение B. Пример запроса вебхука Python».
Если вы хотите отправить на OKX запрос с фиксированного IP-адреса третьей стороны, свяжитесь с нашей службой поддержки или напишите электронное письмо на адрес tradingbot@okx.com с соответствующей аргументацией. Так наша команда сможет обработать ваш запрос надлежащим образом. Если вы не свяжетесь с нами по этому вопросу, все внешние сигналы будут по умолчанию считаться недействительными.
Шаг 4. Настройте сигнального бота
Если вы успешно опубликовали свой сигнал на OKX, пришло время подключить его к нашему сигнальному боту! Нажмите «Создать бота», чтобы перейти на страницу создания сигнального бота.
Вам нужно будет указать обязательные настройки для бота: применимые торговые пары, коэффициент кредитного плеча и сумму средств (маржу), которую хотите инвестировать.
Выбор торговых пар позволит боту определять подходящие возможности: просто укажите торговые пары, которые соответствуют вашей стратегии. Затем определите коэффициент кредитного плеча, который хотите применить к сделкам. Обратите внимание, что использование кредитного плеча может увеличить не только потенциальную прибыль, но и риск. Выберите коэффициент, соответствующий вашей готовности к риску и торговым целям. После того как вы определите торговые пары и коэффициент кредитного плеча, укажите сумму инвестиций в бота.
Помимо этих базовых настроек, в боте есть расширенные параметры для уточнения торговых предпочтений.
Например, вы можете выбрать тип ордера: маркет-ордер или лимитный ордер. Маркет-ордер исполняется немедленно по текущей рыночной цене, а лимитный ордер позволяет устанавливать конкретные уровни цен, при которых ваши ордера должны быть исполнены.
Кроме того, вы можете определить сумму инвестиций для каждого ордера, то есть сколько средств будет выделяться на каждую сделку. Такой параметр довольно легко настроить. Доля средств для каждой сделки можно указать в абсолютном выражении (например, 1000 USDT) или в процентах (например, 10% от доступного баланса). Этот параметр позволяет управлять рисками и контролировать размеры позиций в соответствии с вашей торговой стратегией.
Вы также можете указать настройки выхода: выбрать уровни тейк-профит (TP) и стоп-лосс (SL). Тейк-профит устанавливает уровень цены, при котором ваш бот автоматически закроет сделку для получения прибыли, а стоп-лосс определяет уровень цены, при котором ваш бот выйдет из сделки, чтобы ограничить потенциальные убытки.
Каждую из этих расширенных настроек (кроме TP и SL) можно указать в боте напрямую или получить из оповещений TradingView. Такая гибкость позволяет выбрать способ, который лучше всего подходит для вашего стиля торговли.
После заполнения параметров нажмите «Подтвердить», чтобы завершить создание сигнального бота.
Шаг 5. Отслеживание сигнального бота и управление им
Поздравляю! Вы создали сигнального бота. Теперь вам доступен новый уровень торговли: этот мощный инструмент будет получать сигналы от выбранного источника и мгновенно совершать ваши сделки в реальном времени.
Вы можете полностью контролировать и просматривать действия сигнального бота в любое время. Чтобы получить доступ к подробной информации в разделе «Сведения», нажмите на значок, показанный ниже.
На этой странице доступна общая информация о боте, список текущих позиций, открытые ордера, история ваших позиций и сигналов и многое другое.
Вы также можете просмотреть историю ваших сигналов и соответствующих действий по обработке. Это помогает анализировать успехи и неудачи, совершенствовать подход и принимать взвешенные решения в будущем.
В случае необходимости вы можете вмешаться в работу бота вручную, чтобы изменить маржу, разместить ордера, проверить текущие позиции, закрыть или сократить открытые позиции. За счет этого можно оптимизировать торговую стратегию с учетом рыночных условий в реальном времени и вашего собственного анализа.
1. Изменение (добавление/сокращение) маржи в боте
В разделе сведений о боте можно легко добавлять или снижать маржу по мере необходимости. Эта функция позволяет пополнять баланс или откладывать часть средств после достижения значительного возврата на инвестиции (ROI).
2. Размещение ордеров вручную
У вас есть возможность размещать ордера в боте вручную, независимо от поступающих сигналов. Вы можете добавлять ордера для любой торговой пары в соответствии с вашими условиями. Для этого нужно указать во всплывающем окне параметры ордера, включая тип ордера, сумму и направление. Вы можете использовать эту функцию для открытия новой позиции, увеличения существующей позиции, а также уменьшения или полного закрытия открытой позиции. Благодаря этой функции у вас появляется больше контроля над позициями и возможность вносить изменения при необходимости.
3. Мгновенное закрытие открытых позиций
Вы можете не только просмотреть открытые позиции, но и закрыть любую открытую позицию в определенной торговой паре простым нажатием кнопки. Например, так можно полностью закрыть свои позиции в этой паре по преобладающей рыночной цене. Когда вы нажмете на кнопку закрытия, появится запрос на подтверждение действия. Подтвердите свой выбор — и все готово.
4. Остановка сигнального бота
Если вы остановите бота, система закроет все открытые позиции и отменит все ожидающие исполнения ордера в этом боте. Все оставшиеся активы из этих ордеров будут возвращены на ваш торговый аккаунт. Остановить торговый бот можно двумя способами.
1. На странице информации о боте
Откройте страницу со сведениями о боте и нажмите «Стоп» в правом верхнем углу.
2. На странице ордеров в боте
Нажмите «Торговать» и перейдите на вкладку с ордерами в боте, расположенную в нижней части страницы.
Поздравляем с успешной настройкой сигнального бота с сигналами от TradingView! Вы сделали важный шаг для оптимизации торговых стратегий и увеличения потенциального дохода. Теперь вам доступны новые возможности для освоения рынка криптовалют и раскрытия своего потенциала. Желаем вам успехов на этом пути. Хотите узнать больше о сигнальном трейдинге? Тогда перейдите по ссылке.
Приложение
A. Пример 1: скрипт MACD с alertcondition( ) + ручная настройка оповещений
Чтобы создать оповещение, необходимо определить условие, которое его вызовет. Оно может быть основано на различных факторах, таких как цена, индикаторы и так далее. Следующий PineScript™ использует технический индикатор MACD в качестве примера.//@version=5
indicator('MACD Sample Script 1', overlay=true)
// Рассчитать MACD
[macdLine, signalLine, _] = ta.macd(close, 12, 26, 9)
// Определение условия золотого креста
goldenCross = ta.crossover(macdLine, signalLine)
// Определение условия креста смерти
deathCross = ta.crossunder(macdLine, signalLine)
// Использование функции alertcondition для генерации оповещений
alertcondition(condition=goldenCross, title="Золотой крест MACD", message=" ")
alertcondition(condition=deathCross, title=" MACD Крест Смерти", message=" ")
В этом примере мы сначала рассчитываем MACD с помощью функции «macd», которая учитывает входные данные (в данном случае цены закрытия) и параметры для MACD (12, 26, 9). Затем мы определяем условия для золотого креста и креста смерти, используя функции «crossover» и «crossunder» соответственно. Золотой крест возникает, когда линия MACD пересекает сигнальную линию снизу вверх, а крест смерти — когда линия MACD пересекает сигнальную линию сверху вниз.
Если вас интересует настройка оповещений вручную, этот процесс описан в разделе 3 (способ B). Опишем его коротко: чтобы настроить оповещения, нажмите на кнопку «Создать оповещение» на TradingView. После этого выберите индикатор и подходящее условие. Затем скопируйте и вставьте соответствующее сообщение и URL-адрес вебхука из вашего сигнала на OKX.
B. Пример 2: запрос с вебхуком Python
``` python
import datetime
import time
import requests
import datetime
import json
import log
symbol = 'BTC-USDT-SWAP'
# демонстрация входа в лонг со 100% доступного баланса
signaldata_enterlong = {
"action":"ENTER_LONG",
"instrument":symbol,
"signalToken":"your signaltoken",
"timestamp":datetime.datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%S.%fZ'),
"maxLag":"2000",
"orderType":"market",
"orderPriceOffset":"0.1",
"investmentType":"percentage_balance",
"amount":"100"
}
# демонстрация входа в шорт со 100% доступного баланса
signaldata_entershort = {
"action":"ENTER_SHORT",
"instrument":symbol,
"signalToken":"your signaltoken",
"timestamp":datetime.datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%S.%fZ'),
"maxLag":"2000",
"orderType":"market",
"orderPriceOffset":"0.1",
"investmentType":"percentage_balance",
"amount":"100"
}
# демонстрация выхода из шорта с закрытием 100% позиции
signaldata_exitshort = {
"action":"EXIT_SHORT",
"instrument":symbol,
"signalToken":"your signaltoken",
"timestamp":datetime.datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%S.%fZ'),
"maxLag":"2000",
"orderType":"market",
"orderPriceOffset":"0.1",
"investmentType":"percentage_position",
"amount":"100"
}
# демонстрация выхода из лонга с закрытием 100% позиции
signaldata_exitlong = {
"action":"EXIT_LONG",
"instrument":symbol,
"signalToken":"your signaltoken",
"timestamp":datetime.datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%S.%fZ'),
"maxLag":"2000",
"orderType":"market",
"orderPriceOffset":"0.1",
"investmentType":"percentage_position",
"amount":"100"
}
demo_trading_url = 'https://www.okx.com/pap/algo/signal/trigger'
live_trading_url = 'https://www.okx.com/algo/signal/trigger'
# Создание запроса POST signak enter
response = requests.post(live_trading_url, data=json.dumps(signaldata_enterlong))
# Проверка кода статуса ответаа
if response.status_code == 200:
log.info('trigger signal successful')
else:
log.info('trigger sitgnal failed')
```
C. Примеры скриптов OKX TradingView
[Скрипт стратегии на TradingView, подходящий для начинающих] Стратегия RSI:https://www.tradingview.com/script/3Is1tjRU-OKX-Signal-Bot-Beginner-s-Guide-RSI-Strategy/
[Продвинутый скрипт индикатора на TradingView] «Черепашьи» правила трейдинга: https://www.tradingview.com/script/UUKKgHCB-OKX-Signal-Bot-Turtle-Trading-Rules/
Спецификации сообщений оповещений
Узнайте больше о спецификациях сообщений оповещений на OKX в этой статье.
ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ
Если вы хотите лучше разобраться в стратегиях с использованием сигналов, ознакомьтесь с часто задаваемыми вопросами от пользователей в этой статье.