OKX 信号交易机器人配置指南:连接 TradingView 实现自动化交易

·

通过 OKX 最新推出的信号交易机器人,TradingView 用户和信号提供商现在可以轻松地发布和配置基于 TradingView 信号的自动化交易策略。本文将详细介绍如何一步步配置并启动您的信号交易机器人,助您快速进入自动化交易的新阶段。

准备工作

在开始配置之前,请确保您已拥有 OKX 交易账户,并对 TradingView 平台有基本了解。信号机器人的核心在于将 TradingView 生成的交易信号通过 Webhook 实时传递至 OKX 平台,并自动执行交易操作。

步骤一:访问信号机器人功能

  1. 登录您的 OKX 账户。
  2. 导航至“交易” -> “交易机器人” -> “市场”。
  3. 选择“信号机器人”标签页,并点击“创建”按钮。

步骤二:创建自定义信号

在信号机器人界面,您将看到“添加自定义信号”的选项。点击后,系统将引导您完成信号的创建过程。

创建成功后,系统会自动生成一个唯一的 Webhook URL 和 AlertMsg 规范。请保存好这些信息,您将在 TradingView 配置中使用它们。

目前,OKX 支持两种主要的信号配置方式:

认识 Pine Script™:策略与指标的区别

为了更好地选择配置方式,了解 TradingView 上“策略”与“指标”脚本的区别至关重要。

TradingView 策略
策略脚本主要用于历史数据回测和实时市场的模拟交易。除了进行指标计算,它们还包含 strategy.*() 函数调用,可以向 Pine Script™ 的模拟经纪商传递交易订单。回测结果会显示在图表下方的“策略测试器”中。如果您使用此类脚本,请选择“TradingView 策略”模式进行配置。

TradingView 指标
指标脚本同样进行计算,但不用于回测场景。由于不依赖模拟经纪商,它们消耗资源更少,运行速度更快。如果您使用的是指标、图表警报或通过第三方程序生成信号,则应选择“自定义”模式。

步骤三:配置 TradingView 警报

这是连接 TradingView 与 OKX 的核心步骤。请首先在 TradingView 图表上选择您要交易的永续合约币对。

3.1 TradingView 策略脚本配置指南

本指南适用于使用 strategy.*() 函数的策略脚本开发者。

  1. 保存并添加脚本:在 Pine 编辑器中配置好您的策略脚本,点击“保存”并“添加到图表”。
  2. 调整策略属性:点击图表上策略名称旁边的齿轮图标,根据您的偏好调整订单大小等属性,然后点击“确定”。
  3. 设置警报条件:点击 TradingView 顶部的“警报”按钮,将“条件”设置为“订单执行”。
  4. 填写警报信息:从您在 OKX 创建的信号页面中,复制“TradingView”标签页下的警报消息模板,将其粘贴到 TradingView 警报的“消息”框中,并设置一个警报名称。
  5. 设置 Webhook:在“通知”部分选择“Webhook URL”,粘贴从 OKX 复制的 Webhook URL,最后点击“创建”。

请注意:使用 Webhook 功能需要 TradingView 的付费订阅。

在配置订单大小时,您有三种选择,理解其运作方式对确保与 OKX 的兼容性非常重要:

3.2 自定义模式配置指南

本指南适用于使用指标脚本或第三方程序的用户。

  1. 设置警报条件:将您的指标脚本添加到图表后,点击“警报”,将“条件”设置为相应的 alertcondition(例如,MACD 金叉)。
  2. 填写警报信息:从 OKX 信号页面的“自定义”标签页下复制对应的警报消息模板(如 ENTER_LONG),粘贴到“消息”框中,并设置警报名称。
  3. 设置 Webhook:在“通知”中选择“Webhook URL”,粘贴 OKX 的 Webhook URL,点击“创建”。

重要提示:OKX 提供了 4 种不同操作的消息模板(ENTER_LONG, EXIT_LONG, ENTER_SHORT, EXIT_SHORT)。请根据您的交易逻辑选择正确的模板。

3.3 图表分析指南

对于依赖基础指标线或图表分析的用户:

  1. 设置条件:点击“警报”,根据您的交易习惯设置条件(例如,RSI-14 上穿 30)。
  2. 填写消息:将 OKX 的 AlertMsg 规范粘贴到“消息”部分。
  3. 设置 Webhook:选择“Webhook URL”通知方式,粘贴 URL 并创建警报。

3.4 第三方程序指南

如果您通过自有程序(如 Python)发送信号,请参考附录 B 的 Python Webhook 请求示例。若需从固定第三方 IP 地址发送请求,请联系客服说明情况,以确保信号能被正确处理。

步骤四:配置您的信号交易机器人

信号创建成功后,即可将其连接到交易机器人。

  1. 在信号页面点击“创建机器人”,进入配置界面。
  2. 设置基本参数

    • 交易币对:选择与您策略匹配的永续合约币对。
    • 杠杆比率:根据您的风险承受能力和交易目标设置杠杆。杠杆会放大收益,同时也增加风险。
    • 投资金额:设定分配给该机器人的保证金数额。
  3. 高级参数设置(可选)

    • 订单类型:可选择“市价单”或“限价单”。
    • 单笔投资额:可设置为固定金额(如 1000 USDT)或可用余额的百分比(如 10%)。
    • 止盈(TP)与止损(SL):设置自动平仓以锁定利润或限制亏损的价格水平。
      这些高级参数既可以在机器人层面统一设置,也可选择通过 TradingView 警报消息接收,提供了极大的灵活性。
  4. 完成所有设置后,点击“确认”创建您的信号交易机器人。

👉 探索更多自动化交易策略与高级配置技巧

步骤五:监控与管理机器人

恭喜!您的信号交易机器人已开始运行。它将实时监听 TradingView 信号并自动执行交易。

常见问题

Q1: 使用信号交易机器人需要哪些前提条件?
A: 您需要拥有一个 OKX 账户和一个 TradingView 账户。若要使用 Webhook 功能,TradingView 账户需为付费订阅。

Q2: 策略脚本和指标脚本在配置上最主要区别是什么?
A: 最主要的区别在于警报条件的设置。策略脚本应选择“订单执行”作为条件,而指标脚本需要选择您自定义的 alertcondition(如金叉、死叉)作为条件。

Q3: 如果我的信号没有触发机器人的交易,应该如何排查?
A: 首先,请检查 OKX 机器人详情页中的“信号历史”日志,查看信号是否被成功接收。其次,确认 TradingView 警报的 Webhook URL 和消息模板填写无误。最后,确保机器人的交易币与信号指定的币对完全一致。

Q4: 我可以在一个机器人上连接多个 TradingView 信号吗?
A: 目前,一个信号交易机器人通常对应一个特定的信号源。如果您有多个信号策略,建议为每个策略创建独立的机器人,以便于管理和风险控制。

Q5: 机器人的高级参数(如订单类型、投资额)是必须设置的吗?
A: 不是。基本参数(币对、杠杆、保证金)是必须的。高级参数提供了更精细的控制选项,您可以选择在机器人端设置,或者留空并通过 TradingView 警报消息来动态传递这些参数。

附录

A. MACD 指标脚本与 alertcondition() 示例

以下 Pine Script™ 代码展示了如何使用 MACD 指标创建金叉和死叉的警报条件。

//@version=5
indicator('MACD Sample Script', overlay=true)

// Calculate MACD
[macdLine, signalLine, _] = ta.macd(close, 12, 26, 9)

// Define conditions
goldenCross = ta.crossover(macdLine, signalLine)
deathCross = ta.crossunder(macdLine, signalLine)

// Create alert conditions
alertcondition(condition=goldenCross, title="MACD Golden Cross", message="")
alertcondition(condition=deathCross, title="MACD Death Cross", message="")

创建脚本后,您需要按照“自定义模式”的步骤,在 TradingView 图表上手动配置警报,并填入 OKX 提供的对应消息模板和 Webhook URL。

B. Python Webhook 请求示例

以下 Python 代码示例展示了如何通过程序向 OKX 发送交易信号。

import requests
import json
import datetime

# Webhook URL (请使用实盘URL)
url = 'https://okxdog.com/algo/signal/trigger'

# 信号数据示例 (开多仓,使用100%可用余额)
signal_data = {
    "action": "ENTER_LONG",
    "instrument": "BTC-USDT-SWAP",
    "signalToken": "您的SignalToken",
    "timestamp": datetime.datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%S.%fZ'),
    "maxLag": "2000",
    "orderType": "market",
    "investmentType": "percentage_balance",
    "amount": "100"
}

# 设置请求头
headers = {'Content-Type': 'application/json'}

# 发送POST请求
response = requests.post(url, data=json.dumps(signal_data), headers=headers)

# 检查响应
if response.status_code == 200:
    print('信号触发成功!')
else:
    print(f'信号触发失败,状态码:{response.status_code}')

通过本指南,您应能顺利完成 OKX 信号交易机器人的配置,开启高效、自动化的交易之旅。