随着 OKX Signal Bot 的推出,TradingView 用户和信号供应商现在可以基于 TradingView 信号发布和配置自动化交易机器人。本文将提供一份详细指南,帮助您逐步完成设置,开始使用信号进行自动化交易。
在开始之前,建议您预先了解 OKX 告警消息的详细规范,这将帮助您更顺畅地完成配置。若在配置过程中遇到任何问题,也可随时查阅常见问题解答(FAQ)部分寻求解决方案。
第一步:登录并访问 Signal Bot
首先,登录您的 OKX 账户,依次导航至“交易” -> “交易机器人” -> “策略市场”。
在出现的标签页中,选择“信号机器人”,然后点击“创建”按钮。
第二步:创建自定义信号
在信号机器人创建页面,选择“添加自定义信号”选项,开始配置您的专属交易信号。
OKX 为用户提供了简化的信号创建流程。第一步中,您需要为信号命名,并可选择添加一段描述(最多500字符)。完成后,点击“创建信号”进入下一步。
创建成功后,系统将自动生成 Webhook URL 和 AlertMsg 消息规范。请保存这些信息,后续在 TradingView 设置中将会用到。根据您的策略类型,通常有两种配置路径:
- TradingView 策略脚本:适用于使用 Pine Script 策略函数(如
strategy.*())的用户。 - 自定义模式:适用于依赖 TradingView 指标、图表警报或第三方程序生成信号的用户。
快速了解 Pine Script:策略脚本 vs 指标脚本
TradingView 策略脚本
策略脚本专用于历史回测和实时市场的前瞻测试。除了性能指标计算,它还包含 strategy.*() 订单函数,能够向模拟经纪商发送交易指令。测试结果会显示在图表下方的“策略测试器”中。若您使用这类脚本,请直接参照“策略脚本配置指南”。
TradingView 指标/研究脚本
指标脚本同样执行计算,但不用于回测场景。因其不依赖经纪商模拟器,资源消耗更低、运行更快。这类脚本也称为“研究脚本”(PineScript™ v4 中称为“study”)。若您使用指标、研究脚本或第三方程序,请参照“自定义模式配置指南”。
第三步:配置 TradingView 警报
请确保打开 TradingView 图表,并选择您希望交易的合约品种(注意:需选择正确的永续合约)。OKX 支持的永续合约完整列表,可在交易页面的交易对选择器中查看。
3.1 策略脚本配置指南(使用 Pine Script 策略函数)
- 保存并添加策略:在 Pine 编辑器中配置好策略脚本后,点击“保存”并“添加到图表”。如果已有策略脚本,直接添加至图表。
- 调整策略属性:点击图表上策略名称旁的齿轮图标,根据您的偏好调整订单参数(如订单大小)。完成后点击“确定”。
设置订单参数(三种模式):
- 以 USDT 为单位:直接输入法币数量。为确保与 OKX 兼容,需设置
investmentType为base,amount为{{strategy.order.contracts}}。 - 以合约数量为单位:需注意 TradingView 与 OKX 对“合约”的定义不同。在 OKX 上,每个永续合约的合约面值不同(例如 BTCUSDT 合约代表 0.01 BTC)。同样设置
investmentType为base,amount为{{strategy.order.contracts}}。 - 以净值百分比为单位:此模式依赖于回测中的初始资金和净值计算,与实际交易可能存在偏差。建议优先使用 USDT 或合约数量模式。
- 以 USDT 为单位:直接输入法币数量。为确保与 OKX 兼容,需设置
- 创建警报:点击顶部工具栏的“警报”图标,条件选择刚添加的策略脚本,并设置为“订单执行时”。
- 填写警报消息:从 OKX 信号页面的“TradingView”标签页中复制警报消息模板,粘贴到 TradingView 警报的“消息”框中。您可按需修改,但请确保符合 OKX 消息规范。
- 设置 Webhook:在“通知”部分选择“Webhook URL”,粘贴从 OKX 复制的 Webhook URL,最后点击“创建”。
请注意:使用 Webhook 功能需要您拥有 TradingView 付费订阅。
3.2 指标/研究脚本配置指南
- 添加脚本至图表:在 Pine 编辑器中配置并保存您的指标脚本,然后添加到图表。
- 设置警报条件:点击“警报”,条件选择您刚添加的指标产生的特定信号(例如,“MACD 金叉”)。
- 填写消息模板:从 OKX 信号页面的“自定义”标签页复制对应的消息模板(如
ENTER_LONG),粘贴到警报的“消息”部分。 - 设置 Webhook:在通知中选择 Webhook URL,粘贴 OKX 提供的 URL 并创建警报。
重要提示:OKX 提供 4 种不同操作的消息模板(ENTER_LONG, EXIT_LONG, ENTER_SHORT, EXIT_SHORT)。请根据您的交易逻辑选择正确的操作类型。
3.3 图表分析指南(适用于使用基础指标或绘图的用户)
- 创建价格/指标警报:点击“警报”按钮,设置基于价格或常用指标的条件(例如,RSI-14 上穿 30)。
- 填入消息模板:将 OKX 的 AlertMsg 规范粘贴到“消息”字段中。请根据您的交易意图选择正确的消息动作(如 ENTER_LONG)。
- 设置 Webhook:在“通知”中填入 OKX 的 Webhook URL 并创建警报。
3.4 第三方程序指南(适用于信号提供商)
如果您通过自有程序(如 Python 脚本)生成交易信号并希望发送至 OKX,请参考文末附录 B 的 Python Webhook 请求示例。
如果您需要从固定的第三方 IP 地址向 OKX 发送请求,请联系客服并提供相关理由,我们的团队将为您处理。否则,所有外部信号默认将被视为无效。
第四步:配置您的信号机器人
成功发布信号后,即可开始创建信号机器人。点击“创建机器人”,进入配置页面。
您需要设置一些基础参数:
- 交易品种:选择与您策略匹配的交易对。
- 杠杆比例:根据您的风险承受能力和交易目标设定。
- 投资金额(保证金):分配给该机器人的资金量。
此外,机器人还提供高级自定义选项:
- 订单类型:可选择市价单或限价单。
- 每单投资额:可设置为固定数额(如 1000 USDT)或可用资金的百分比(如 10%)。
- 止盈(TP)和止损(SL):设置自动平仓的价格水平以锁定利润或控制损失。
您可以选择在机器人层面统一设置这些参数,也可以依靠 TradingView 警报消息来动态传递这些指令。这为您提供了高度的灵活性。
完成所有设置后,点击“确认”完成机器人的创建。
第五步:监控与管理机器人
恭喜!您的信号机器人已开始运行。它将实时监听您设置的信号源并自动执行交易。
您可以在“交易机器人”页面随时监控其 performance。点击“详情”图标可以查看:
- 完整的绩效历史记录
- 当前持仓列表
- 未完成订单
- 信号历史与处理日志
- 持仓历史等
此外,您还可以进行手动干预:
- 调整保证金:在机器人详情页面,您可以随时增加或移除分配给机器人的资金。
- 手动下单:您可以无视 incoming 信号,直接通过机器人下达手动订单,用于开仓、加仓、减仓或平仓。
- 一键平仓:只需点击一下,即可按市价完全平掉某个交易对的所有持仓。
- 停止机器人:停止后,系统将平掉所有持仓并取消所有未完成订单,剩余资金将返回您的交易账户。您可以在机器人详情页右上角或“订单”标签页中执行此操作。
常见问题(FAQ)
Q1: 使用 Signal Bot 需要付费吗?
A1: 使用 OKX 的 Signal Bot 本身是免费的。但请注意,如果您使用 TradingView 的 Webhook 功能来发送警报,则需要拥有 TradingView 的付费订阅计划。
Q2: 为什么我的 TradingView 警报触发后,OKX 机器人没有执行交易?
A2: 请按以下步骤排查:1) 检查 TradingView 警报消息是否严格遵循了 OKX 的 AlertMsg 规范;2) 确认 Webhook URL 填写正确;3) 查看信号机器人的详情页面中的“信号日志”,通常会有失败的具体原因记录。
Q3: 我可以在一个机器人上连接多个交易信号吗?
A3: 目前,一个信号机器人通常与一个特定的信号源(Webhook URL)绑定。如果您有多个策略,建议为每个策略分别创建信号和机器人,以便于独立管理和风控。
附录
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 上创建警报时,选择对应的条件(如“MACD Golden Cross”),并将 OKX 提供的消息模板粘贴到“消息”框中即可。
B. 示例:Python Webhook 请求代码片段
以下是一个使用 Python 发送 ENTER_LONG 信号的示例代码框架:
import requests
import json
import datetime
url = 'https://okxdog.com/algo/signal/trigger' # 实盘交易URL
# url = 'https://okxdog.com/pap/algo/signal/trigger' # 模拟盘交易URL
signal_data = {
"action": "ENTER_LONG",
"instrument": "BTC-USDT-SWAP",
"signalToken": "your_actual_signal_token_here", # 替换为您的真实 signalToken
"timestamp": datetime.datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%S.%fZ'),
"maxLag": "60",
"orderType": "market",
"investmentType": "base",
"amount": "100" # 投资金额或比例
}
headers = {'Content-Type': 'application/json'}
response = requests.post(url, data=json.dumps(signal_data), headers=headers)
if response.status_code == 200:
print('信号触发成功')
else:
print(f'信号触发失败,状态码: {response.status_code}, 返回信息: {response.text}')请注意:使用时需将 your_actual_signal_token_here 替换为您在 OKX 创建信号时获得的真实 token。
C. 推荐的 TradingView 示例脚本
- 【适合新手】RSI 策略脚本: 可在 TradingView 社区脚本中搜索“OKX Signal Bot Beginner's Guide RSI Strategy”查看示例。
- 【进阶】海龟交易规则脚本: 可在 TradingView 社区脚本中搜索“OKX Signal Bot Turtle trading Rules”查看示例。
免责声明:本文内容仅供参考,不构成任何投资建议。交易数字货币涉及高风险,您可能会损失全部投资。请在投资前充分了解相关风险并谨慎决策。