Python中的Deriv API2025年3月4日 | 阅读 7 分钟 Deriv API 简介Deriv API 使开发人员能够通过代码使用 Deriv 的交易功能和数据。借助它,用户可以设置自动交易计划,实时获取市场信息,并在不进行繁琐的鼠标点击操作的情况下进行交易。 为什么使用 Deriv API?
Deriv API 帮助想要利用算法和自动化来提升交易结果的交易者。无论您是编程新手还是经验丰富的开发人员,该 API 都易于使用且提供清晰的说明。这使其成为将交易功能添加到您应用程序的首选。 设置您的 Python 环境在使用 Deriv API With Python 之前,您需要准备好您的编码工作空间。 Python 是一种灵活的语言,拥有大量用于 Web 请求、数据处理和实时服务器通信的工具。这使其非常适合与 API 配合使用。 安装必需的库 您需要获取一些工具来处理 Deriv API
您可以使用 pip 设置这些库 这些库将为您提供连接到 Deriv API、发送请求并妥善处理响应所需的工具。 编写我们的 Python 脚本 在设置好库之后,创建一个新的 Python 脚本。您将在这里放置您的代码。您将使用此脚本来处理 API。 在脚本开头添加必要的库,可以确保您在代码的各个部分都能使用所需的所有函数。 理解 API 令牌和身份验证您需要证明您的身份才能使用 Deriv API。您可以使用 API 令牌来做到这一点。此令牌就像是访问 Deriv 账户的密钥。它允许您执行诸如获取数据或进行交易等操作。 如何获取 API 令牌?
请将此令牌保存在安全的地方。您在与 Deriv API 进行身份验证时需要用到它。 如何在请求中使用 API 令牌 您将在 HTTP 请求或 WebSocket 连接的头部中包含 API 令牌。此令牌可确保您的请求有权执行特定操作。 将“your_api_token_here”替换为您创建的真实令牌。您将在将来的请求中使用此令牌来证明是您在执行操作。 如何使用 WebSocket 连接到 Deriv API?Deriv API 依赖 WebSocket 来实时交换数据。WebSocket 是一种创建客户端和服务器之间持久连接的协议,允许数据双向流动,而无需 HTTP 请求 的额外开销。 准备就绪的 WebSocket 连接设置要建立 WebSocket 连接,您需要 websocket-client 库。您的连接 URL 将包含您的应用 ID,这是您应用的唯一标识符。 输出 Connection opened 订阅市场数据连接后,您可以订阅特定符号的嘀价等市场数据。您的 WebSocket 连接将实时接收这些数据。 在这种情况下,我们订阅 R_100 符号的嘀数据。API 将持续将嘀数据发送到您的 WebSocket,您可以在 on_message 函数中处理它。 处理实时数据当 WebSocket 连接收到消息时,它会触发 on_message 函数。此函数可以根据需要处理数据,例如将其记录下来或用于进行交易决策。 输出 Tick data: { "echo_req": { "subscribe": 1, "ticks": "R_100" }, "msg_type": "tick", "subscription": { "id": "f3c4e2f4-2d9d-4e91-bcf2-c8a9f6e70a91" }, "tick": { "ask": 202.56, "bid": 202.54, "epoch": 1692629425, "id": "f3c4e2f4-2d9d-4e91-bcf2-c8a9f6e70a91", "pip_size": 2, "quote": 202.55, "symbol": "R_100" } } 发出请求:订阅和数据检索除了通过 WebSocket 获取实时数据外,HTTP 请求还可以帮助您获取数据或执行操作。这对于不需要持续更新的任务非常有用,例如获取历史数据或账户详情。 检索历史数据Deriv API 允许您请求历史数据,这在测试交易计划或研究过去的市场行为时起着至关重要的作用。 输出 { "echo_req": { "ticks_history": "R_100", "count": 10, "end": "latest", "style": "ticks" }, "history": { "prices": [202.55, 202.56, 202.54, 202.55, 202.53, 202.55, 202.57, 202.58, 202.55, 202.54], "times": [1692629420, 1692629421, 1692629422, 1692629423, 1692629424, 1692629425, 1692629426, 1692629427, 1692629428, 1692629429] }, "msg_type": "history" } 此函数获取 R_100 符号的最后 10 个嘀。如果需要,您可以更改 count 参数来获取更多数据。 获取账户信息您还可以获取您的 Deriv 账户的详细信息,例如余额、货币等。 输出 { "balance": { "balance": 1000.00, "currency": "USD", "id": "CR123456" }, "echo_req": { "balance": 1 }, "msg_type": "balance" } 此请求获取您的账户余额和其他相关详细信息。这有助于您通过代码管理您的交易操作。 使用 Deriv API 进行交易Deriv API 允许您进行交易,这是其关键功能之一。为此,您需要指定交易详情,例如金额、合约类型、持续时间和符号。 创建交易请求当您下达交易指令时,需要指定所有重要详情。以下是如何使用 API 下达交易的示例 输出 { "buy": { "balance_after": 995.00, "contract_id": 78123456789, "payout": 100.0, "purchase_time": 1692629503, "start_time": 1692629504 }, "msg_type": "buy" } 理解交易参数
开始交易当您下达交易指令时,API 会返回一个包含合同 ID 和买入价等交易详情的响应。 输出 Trade placed successfully: {'balance_after': 995.00, 'contract_id': 78123456789, 'payout': 100.0, 'purchase_time': 1692629503, 'start_time': 1692629504} 此代码处理 API 的响应。它会检查错误并确认交易已成功。 管理 API 响应和错误为了确保您的应用程序按预期运行,您需要处理来自 API 的响应和错误。 解析 API 响应API 响应采用 JSON 格式。您可以使用 Python 的 json 库来解析这些响应 如何处理错误 网络问题、错误的参数或 API 速率限制是常见错误的根源。您的代码应能处理这些情况。 输出 HTTP error happened: {Timeout} 重试请求有时,您可能希望为短暂的错误(如网络超时)添加重试逻辑。 输出 Try 1 didn't work: [ConnectionError] Try 2 didn't work: [ConnectionError] Try 3 didn't work: [ConnectionError] 此循环尝试进行请求最多三次,并在尝试之间暂停。 |
Python 拥有大量的库和函数,为数值和科学计算提供了丰富的生态系统。其中一个突出的库是 NumPy,它广泛用于高效地处理数组和矩阵。在 NumPy 提供的众多函数中,...
阅读 3 分钟
Python 因其简单性、多功能性、强大的社区支持以及广泛的库和框架生态系统而备受推崇。其易于阅读的语法和简单的学习曲线使其成为初学者和经验丰富的开发人员的宝贵工具。随着如此广泛的使用,许多 IDE(集成……
阅读 8 分钟
引言 它是统计学的皮尔逊相关系数,定量地显示了两个变量的线性关系。在金融、生物学和社会科学等许多方面,它已被应用于研究两组测量值之间的幅度。概念...的...。
阅读 3 分钟
?引言:在本教程中,我们将学习 Python 中的负数索引。它具有许多特性和功能。其中一个特性就是负数索引。它允许您通过索引从末尾访问某个部分(例如列表、字符串或元组)的内容...
7 分钟阅读
基于颜色的特征用于物体检测是一种简单的方法,它利用感兴趣物体的独特颜色特性来识别其在图像或视频中的位置。该过程包括图像过滤,使用复制功能掩盖感兴趣的物体...
阅读 8 分钟
在接下来的教程中,我们将通过一些示例来学习Python math模块中trunc()方法的使用。那么,让我们开始吧。 Python中的截断Python拥有大量内置模块。其中一个模块有一个有趣的名字叫做...
阅读 3 分钟
感知器算法由 Frank Rosenblatt 创建,其灵感来自我们大脑的基本单元(称为神经元)处理信息的方式。该算法建立在 McCulloch-Pitts 神经元概念和 Hebb 研究的基础上。现在,虽然感知器算法有着有趣的历史...
阅读 22 分钟
介绍:在本教程中,我们将学习 Python 中的 NumPy squeeze。我们希望删除特定数量变量的大小,因此我们在 NumPy 中使用一个名为“squeeze()”的函数。在这种情况下,我们使用 NumPy 的 squeeze() 函数,它接受一个数组...
5 分钟阅读
您可以使用 Python 中的各种库将月份添加到 DateTime 对象。我们可以通过多种方式将月份添加到现有日期。本文介绍了如何将月份添加到 Python datetime 对象。使用 dateutil 库,我们可以使用 python-dateutil...
阅读 6 分钟
使用各种技术从网页中提取数据的过程称为网络抓取。Python 有许多库,如 Scrapy、Selenium 和 Beautiful Soup,可以用来快速有效地从网页中提取有价值的数据。拥有合适的工具...
阅读 8 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India