1 基础交易与订单管理接口
1. order
功能 :用于按指定数量买卖股票或其他金融产品。
参数:
security
:股票代码(字符串类型)。amount
:交易数量(整数类型),正数表示买入,负数表示卖出。limit_price
:买卖限价(浮点数类型),可选参数,默认使用最新价。
返回 :返回Order
对象的id
(字符串类型),如果创建订单成功则返回id
,失败则返回None
。
2. order_value
功能 :用于按指定价值买卖股票或其他金融产品。
参数:
security
:股票代码(字符串类型)。value
:股票价值(浮点数类型)。limit_price
:买卖限价(浮点数类型),可选参数,默认使用最新价。
返回 :返回Order
对象的id
(字符串类型),如果创建订单成功则返回id
,失败则返回None
。
3. order_target_value
功能 :用于调整股票持仓市值到指定价值。
参数:
security
:股票代码(字符串类型)。value
:目标持仓市值(浮点数类型)。limit_price
:买卖限价(浮点数类型),可选参数,默认使用最新价。
返回 :返回Order
对象的id
(字符串类型),如果创建订单成功则返回id
,失败则返回None
。
4. get_open_orders
功能 :获取当前所有未完成的订单。
参数 :无。
返回 :返回一个包含Order
对象的列表(list[Order]
),每个Order
对象包含订单的详细信息,如id
、status
、filled
等。
5. get_orders
功能 :获取指定订单的详细信息。
参数:
order_id
:订单ID(字符串类型)。
返回 :返回一个包含Order
对象的列表(list[Order]
),每个Order
对象包含订单的详细信息,如id
、status
、filled
等。
6. get_traders
功能 :获取当前所有交易者的信息。
参数 :无。
返回 :返回一个包含Trader
对象的列表(list[Trader]
),每个Trader
对象包含交易者的详细信息,如id
、name
、balance
等。
Order
对象的参数
Order
对象通常包含以下字段:
id
:订单的唯一标识符(字符串类型)。status
:订单状态(字符串类型),如8
表示已完成。filled
:已成交数量(浮点数类型)。amount
:订单总数量(整数类型)。limit_price
:订单限价(浮点数类型)。security
:股票代码(字符串类型)。
2 高级交易与策略执行下单接口
1. 条件单设置
条件单允许用户设置特定的条件,当市场满足这些条件时,系统会自动执行交易指令。
功能:根据设定的价格条件自动下单。
参数:
stock_code
:股票代码。buy_price_condition
:买入价格条件。order_type
:订单类型(如买入、卖出)。
示例代码:
python
# 假设用户希望通过Ptrade设定一个条件单,当股票价格达到特定水平时自动买入
buy_price_condition = 10.5 # 设定的买入价格为10.5元
stock_code = '000001' # 交易的股票代码为000001
# 调用Ptrade的条件单功能
set_condition_order(stock_code, buy_price_condition, order_type='buy')
2. 篮子交易
篮子交易允许用户将多只股票或金融资产组成"篮子"进行统一交易。
功能:一键买卖多只股票,简化投资组合管理。
参数:
basket
:篮子中的股票代码列表。order_type
:订单类型(如买入、卖出)。
示例代码:
python
# 假设用户希望通过Ptrade进行篮子交易
basket = ['000001', '600000'] # 篮子中的股票代码
order_type = 'buy' # 买入操作
# 调用Ptrade的篮子交易功能
execute_basket_trade(basket, order_type)
3. 拆单策略
拆单策略用于将大额订单拆分成小额订单,以降低对市场的冲击。
功能:将大额订单拆分成多个小额订单,逐步执行。
参数:
stock_code
:股票代码。total_quantity
:总数量。split_type
:拆单策略类型(如数量递减、区间随机、固定数量)。
示例代码:
python
# 假设用户希望通过Ptrade进行拆单交易
stock_code = '000001' # 交易的股票代码
total_quantity = 10000 # 总数量
split_type = 'quantity_decrease' # 数量递减策略
# 调用Ptrade的拆单策略功能
split_order(stock_code, total_quantity, split_type)
4. 抢单交易
抢单交易用于监控和快速买入即将涨停的股票。
功能:根据设定的涨幅条件自动筛选并下单。
参数:
stock_pool
:监控的股票池。rise_condition
:涨幅条件(如主板8%,创业板18%)。
示例代码:
python
# 假设用户希望通过Ptrade进行抢单交易
stock_pool = ['000001', '600000'] # 监控的股票池
rise_condition = {'main_board': 8, 'gem': 18} # 主板涨幅8%,创业板涨幅18%
# 调用Ptrade的抢单交易功能
execute_quick_order(stock_pool, rise_condition)
5. 一键清仓
一键清仓用于在市场形势突变时迅速卖出所有持仓股票。
功能:快速卖出所有持仓股票。
参数:
account_id
:账户ID。
示例代码:
python
# 假设用户希望通过Ptrade进行一键清仓
account_id = '123456' # 账户ID
# 调用Ptrade的一键清仓功能
clear_all_positions(account_id)
6. 一键全撤
一键全撤用于撤销所有未成交的订单。
功能:快速撤销所有未成交订单。
参数:
account_id
:账户ID。
示例代码:
python
# 假设用户希望通过Ptrade进行一键全撤
account_id = '123456' # 账户ID
# 调用Ptrade的一键全撤功能
cancel_all_orders(account_id)
7. 一键申购
一键申购用于快速申购新股或新基金。
功能:快速申购新股或新基金。
参数:
stock_code
:股票代码。amount
:申购金额。
示例代码:
python
# 假设用户希望通过Ptrade进行一键申购
stock_code = '000001' # 股票代码
amount = 10000 # 申购金额
# 调用Ptrade的一键申购功能
execute_subscription(stock_code, amount)
3 区别
第一组API:基础交易与订单管理
order
: 用于执行普通的下单操作,指定股票代码、数量和价格进行买入或卖出。适用于简单的单笔交易场景。order_value
: 根据指定的金额下单,系统会自动计算可购买的股票数量。适用于希望以固定金额进行交易的场景。order_target_value
: 将持仓调整到指定的目标金额。适用于需要动态调整持仓比例的量化策略。get_open_orders
: 获取当前未成交的订单列表。适用于监控和管理未完成订单的场景。get_orders
: 获取所有历史订单信息。适用于需要分析历史交易记录的场景。get_traders
: 获取交易员或账户信息。适用于需要管理多个交易员或账户的场景。
第二组API:高级交易与策略执行
set_condition_order
: 设置条件单,当满足特定条件时自动触发交易。适用于需要自动化执行复杂交易策略的场景。execute_basket_trade
: 执行篮子交易,即同时交易多个股票或资产。适用于需要批量交易或组合交易的场景。split_order
: 将大单拆分为多个小单执行,以减少市场冲击。适用于大额交易或需要隐蔽交易的场景。execute_quick_order
: 快速执行市价单,适用于需要立即成交的场景。clear_all_positions
: 清空所有持仓。适用于需要快速平仓或重置投资组合的场景。cancel_all_orders
: 取消所有未成交的订单。适用于需要快速撤销所有挂单的场景。execute_subscription
: 执行订阅操作,通常用于基金或产品的申购。适用于需要自动化处理申购的场景。
- 第一组API主要用于基础交易和订单管理,适合简单的交易需求。
- 第二组API则用于更复杂的交易策略和批量操作,适合量化交易或需要自动化执行的场景。