本页只译了一部分
本页 153 段里还有 1 段没译成简体中文,没译的段落显示英文原文。下单
机器翻译译自英文(docs.alpaca.markets)本页 153 段里 1 段还没译
使用Alpaca的Trading API,用户可以监控、下订单和取消订单。每个订单都有一个由客户提供的唯一标识符。如果客户不提供,系统将自动生成一个客户端唯一订单ID。此ID作为订单对象的一部分返回,以及下面描述的其他字段。一旦下单,可以使用客户提供的订单ID或系统分配的唯一ID查询其状态。未平仓订单的更新也通过流式接口传递,这是维护订单状态的推荐方法。
购买力
要接受开立新头寸或增加现有头寸的订单,你的账户必须有足够的购买力。Alpaca对买入多头和卖出空头都应用购买力检查。
开仓卖空订单的计算价值为MAX(订单的限价,当前卖价上浮3%) *订单数量。对于市价卖空订单,价值为(当前卖价上浮3%)*订单数量。
然后将订单的计算价值与你的可用购买力进行比较,以确定是否可以接受。请注意,你的可用购买力会因现有的未平仓买入多头和卖出空头订单而减少。你的卖出多头和买入平仓订单在执行之前不会补充你的可用购买力。
例如,如果你的购买力为$10,000,你提交一个价值$3,000的限价买入订单,订单将被接受,你剩余的可用购买力将为$7,000。即使订单仍未成交,它将继续占用你的可用购买力,直到被执行或取消。如果你然后提交另一个价值$8,000的订单,它将被拒绝。
订单的初始购买力检查:
当核心交易时段开放时:NBBO的远端(使用买价和卖价)
如果在盘前盘后交易时段开放时输入订单:内部市场的中点
如果在核心交易时段和盘前盘后交易时段关闭时(盘前时段)输入订单:来自市场缓存的最新交易
股票交易
以下部分涉及股票交易
在合格交易时间之外提交的订单
在东部时间下午4:00之后提交的不符合盘前盘后交易资格的订单将排队等待下一个交易日发布。
在美国东部时间凌晨4:00 - 晚上8:00之外提交的符合盘前盘后交易资格的订单将按下节所述处理。
盘前盘后交易
使用API v2,你可以在盘前和盘后提交和成交订单。盘前盘后交易由于流动性较低而有特定风险。请阅读Alpaca的盘前盘后交易风险披露了解更多详细信息。
目前,我们支持完整的盘前盘后交易:
- 隔夜:美国东部时间晚上8:00 - 凌晨4:00,周日至周五
- 盘前:美国东部时间凌晨4:00 - 上午9:30,周一至周五
- 盘后:美国东部时间下午4:00 - 晚上8:00,周一至周五
提交符合盘前盘后交易资格的订单
要指示订单有资格进行盘前盘后交易,你需要在订单请求中提供一个名为extended_hours的布尔参数。将此参数设置为true,订单将有资格在盘前或盘后执行。
只有time_in_force设置为day或gtc的限价单被接受为符合盘前盘后交易资格。所有其他订单类型和TIF值将被拒绝并报错。你必须遵守这些设置才能参与盘前盘后交易:
- 订单类型必须设置为
limit(带有限价)。任何其他类型的订单将被拒绝并报错。 - 订单有效期必须设置为
day或gtc。任何其他time_in_force将被拒绝并报错。
对于碎股订单,从2021年10月27日起,客户将无法在同一证券的市场时间之外发送以下订单序列。这是为了客户不会持有净空头头寸。以下是将被拒绝的订单序列示例。
| 摘要 | 订单1 | 订单2 | 第二订单处理接受/拒绝 |
|---|---|---|---|
| 2x卖出 | 名义卖出 | 数量卖出 | 拒绝 |
| 2x卖出 | 名义卖出 | 名义卖出 | 拒绝 |
| 2x卖出 | 数量卖出 | 名义卖出 | 拒绝 |
| 2 x卖出 [正确数量] | 数量卖出 | 数量卖出 | 接受 |
| 2 x卖出 [正确数量] | 数量卖出 | 数量卖出 | 拒绝 |
更多信息 - 请参阅我们关于此主题的博客文章。
如果这样做,你将看到以下错误消息:"unable to open new notional orders while having open closing position orders"。
常规市场时段支持的所有股票代码在盘前盘后交易中也支持。卖空也同样对待。可在隔夜时段交易的资产可以通过资产端点识别,请参阅我们的24/5常见问题解答了解更多信息
IPO股票代码
Alpaca支持最近开始在主要交易所(如NYSE和NASDAQ)公开交易的股票代码。这个过程称为公司上市或IPO。
作为注册经纪交易商,Alpaca必须遵守FINRA关于IPO符号订单类型的规定:
- Alpaca只能在证券在交易所首次交易之前接受
limit订单 - 一旦IPO开始在交易所交易,接受
market订单
为了帮助我们的客户,Alpaca将在资产模型上公开一个名为ipo的attribute。ipo属性将向客户标记该特定股票代码有即将到来的IPO,或即将开始在交易所交易,因此必须使用limit订单。
订单类型
提交订单时,你可以选择一种支持的订单类型。目前,Alpaca支持四种不同类型的订单。
市价单
市价单是以当前可用市场价格买入或卖出证券的请求。它提供了最可能的成交方法。市价单几乎即时成交。
作为权衡,你的成交价格可能会滑点,取决于每个价格水平的可用流动性以及订单路由到执行场所时可能发生的任何价格变动。市价单还存在由于短期价格飙升而以意外价格成交的风险。
限价单
限价单是以指定价格或更好价格买入或卖出的订单。买入限价单(买入的限价单)以指定的限价或更低(即更好)执行。相反,卖出限价单(卖出的限价单)以指定的限价或更高(更好)执行。与市价单不同,提交订单时必须指定限价参数。
虽然限价单可以防止滑点,但它可能很长时间内无法成交,甚至根本无法成交。对于买入限价单,如果市场价格在你的指定限价内,你可以预期订单成交。如果市场价格等于你的限价,你的订单可能成交也可能不成交;如果订单不能立即对挂单流动性执行,则被视为不可市场化,只有可市场化订单与其交互时才会成交。如果价格在你订单成交之前远离限价,你可能会错过交易机会。
限价单的不足一美分价格增量
限价单存在最低价格变动。超过最低价格变动的订单将被拒绝。
- 限价 >=$1.00:最大小数位数= 2
- 限价 <$1.00:最大小数位数 = 4
{
"code": 42210000,
"message": "invalid limit_price 290.123. sub-penny increment does not fulfill minimum pricing criteria"
}
止损单
止损(市价)单是当证券价格超过特定点时买入或卖出的订单,确保更高概率实现预定的入场或出场价格。一旦订单被触发,止损单变成市价单。卖出止损单不会转换为止损限价单。止损单不保证在转换为市价单后以特定价格成交。
为了提交止损单,你需要在API中指定止损价参数。
示例:
- 假设你想买入100股TSLA,只有当它上涨到$210时(假设当前交易价格为$200)。
- 你下了一个**$210的买入止损单。**
- 如果TSLA达到**$210**,订单被激活并变成市价单
止损单的不足一美分价格增量
止损单存在最低价格变动。超过最低价格变动的订单将被拒绝。
- 止损价 >=$1.00:最大小数位数= 2
- 止损价 <$1.00:最大小数位数 = 4
{
"code": 42210000,
"message": "invalid stop_price 290.123. sub-penny increment does not fulfill minimum pricing criteria"
}
止损限价单
止损限价单是在设定时间范围内的条件交易,结合了止损单和限价单的特征,用于减轻风险。止损限价单将在给定止损价达到后以指定的限价或更好价格执行。一旦达到止损价,止损限价单变成以限价或更好价格买入或卖出的限价单。在市场跳空下跌导致你的订单被触发但未执行的情况下,你的订单将作为限价单保持活跃,直到可执行或被取消。
为了提交止损限价单,你需要在API中同时指定限价和止损价参数。
示例:
- 你想买入50股TSLA,目前交易价格为$200。
- 你只想在价格突破**$210以上时买入,但不高于$215。**
- 你下了一个买入止损限价单:
- 止损价:$210 → 当TSLA达到此价格时订单激活。
- 限价:$215 → 订单将只在$215或更好价格执行。
- 如果TSLA移动到**$210**,订单被触发并转换为**$215的限价单。**
开盘和收盘拍卖订单
开盘市价单和开盘限价单仅在开盘拍卖中有资格执行。收盘市价单和收盘限价单仅在收盘拍卖中有资格执行。请参阅订单有效期部分了解更多详细信息。
括号订单
括号订单是由三个订单组成的链,可用于管理你的头寸入场和出场。它是OTOCO(One Triggers OCO {One Cancels Other})订单的常见用例。
第一个订单用于进入新的多头或空头头寸,一旦完全成交,两个条件退出订单被激活。两个平仓订单之一称为止盈订单,它是限价单,另一个称为止损订单,它是止损单或止损限价单。重要的是,两个退出订单中只有一个可以执行。一旦其中一个退出订单成交,另一个被取消。但请注意,在极度波动和快速市场条件下,两个订单可能在取消发生之前都成交。
如果没有括号订单,你将无法同时提交开仓和平仓订单,因为 Alpaca 的系统只接受针对现有持仓的平仓订单。此外,即使你已有未平仓持仓,你也无法提交两个条件平仓订单,因为 Alpaca 的系统会将其中一个订单视为超出可用的持仓数量。括号订单可以解决这两个问题,因为 Alpaca 的系统会将开仓和平仓订单识别为一组,并适当地将它们排队执行。
为了提交括号订单,你需要向API提供额外参数。首先,添加参数order_class为“bracket”。其次,提供两个额外字段take_profit和stop_loss,它们都是嵌套JSON对象。take_profit对象需要limit_price作为字段值,指定止盈订单的限价;stop_loss对象需要必填的stop_price字段和可选的limit_price字段。如果在stop_loss中指定了limit_price,止损订单将作为止损限价单排队,否则作为止损单排队。
提交括号订单的JSON正文参数示例如下。
{
"side": "buy",
"symbol": "SPY",
"type": "market",
"qty": "100",
"time_in_force": "gtc",
"order_class": "bracket",
"take_profit": {
"limit_price": "301"
},
"stop_loss": {
"stop_price": "299",
"limit_price": "298.5"
}
}这会创建三个订单。
- 一个买入100股SPY的GTC市价单
- 一个卖出相同100股SPY的限价单,限价 = 301
- 一个卖出止损限价单,止损价 = 299,限价 = 298.5
第二个和第三个订单直到第一个订单完全成交后才会激活。其他括号订单详细信息包括:
- 如果任何一个订单被取消,组中任何剩余的未平仓订单将被取消。
- 对于买入括号订单,
take_profit.limit_price必须高于stop_loss.stop_price,对于卖出则相反。 take_profit.limit_price和stop_loss.stop_price都必须存在。- 不支持盘前盘后交易。
extended_hours必须为“false”或省略。 time_in_force必须是day或gtc。- 组中的每个订单始终带有DNR/DNC(不减少/不取消)指令发送。因此,在股息或其他公司行动的情况下,订单价格不会调整,订单也不会被取消。
- 如果止盈订单部分成交,止损订单将调整为剩余数量。
- 支持订单替换(
PATCH /v2/orders)以更新limit_price和stop_price。
组中的每个订单在GET /v2/orders端点中报告为独立订单。但如果你指定额外参数nested=true,订单响应将嵌套结果,以在订单实体的legs数组字段下包含子订单。
OCO订单
OCO(One-Cancels-Other,一个取消另一个)是另一种高级订单类型。这是一组具有相同方向(买入/买入或卖出/卖出)的两个订单,目前仅支持退出订单。换句话说,这是括号订单的第二部分,其中入场订单已经成交,你可以在一次订单提交中提交止盈和止损。
使用OCO订单,你可以在开仓后添加止盈和止损,而无需预先考虑这两条腿。
要提交OCO订单,请为order_class参数指定“oco”。
{
"side": "sell",
"symbol": "SPY",
"type": "limit",
"qty": "100",
"time_in_force": "gtc",
"order_class": "oco",
"take_profit": {
"limit_price": "301"
},
"stop_loss": {
"stop_price": "299",
"limit_price": "298.5"
}
}{
"side": "buy",
"symbol": "SPY",
"type": "limit",
"qty": "100",
"time_in_force": "gtc",
"order_class": "oco",
"take_profit":{
"limit_price": "298"
},
"stop_loss": {
"stop_price": "299",
"limit_price": "300"
}
}type参数必须始终为“limit”,表示止盈订单类型为限价单。如果仅指定stop_price,止损订单为止损单;如果同时指定limit_price和stop_price,则为止损限价单(即stop_price在任何情况下都必须存在)。这两个订单的工作方式与括号订单的两条腿完全相同。
请注意,当你使用nested参数为true检索订单列表时,止盈订单显示为父订单,而止损订单显示为子订单。
与括号订单一样,支持订单替换以更新limit_price和stop_price。
OTO订单
OTO(One-Triggers-Other)是括号订单的变体。它在入场订单之外接受止盈或止损订单。例如,如果你只想附加止损订单到头寸,而没有止盈,你可能想考虑OTO订单。
订单提交通过order_class参数为“oto”完成。
{
"side": "buy",
"symbol": "SPY",
"type": "market",
"qty": "100",
"time_in_force": "gtc",
"order_class": "oto",
"stop_loss": {
"stop_price": "299",
"limit_price": "298.5"
}
}take_profit或stop_loss必须存在(上述示例是止盈情况),其余要求与括号订单相同。
与括号订单一样,尚不支持订单替换。
止损单止损价的阈值
对于高级订单的止损订单腿,请注意订单请求可能因stop_price参数值的限制而被拒绝。止损价输入必须至少比“基准价格”低$0.01(对于止损卖出,买入则高)。基准价格确定如下。
- 对于OCO订单,它是止盈的限价。
- 对于括号或OTO订单,如果入场类型为限价,它是入场订单的限价。
- 对于任何OCO、OTO和括号订单,它也是当前市场价格。
此限制是为了避免订单处理中潜在的竞争条件,但随着我们系统能力的提高,未来可能会放宽。
追踪止损订单
追踪止损订单允许你根据股票价格变动持续自动更新止损价阈值。你请求一个带有美元偏移值或百分比值作为追踪的单一订单,该订单的实际止损价随着股票价格朝有利于你的方向移动而变化,否则保持在最后水平。这样,你不需要监控价格变动并不断发送替换请求以更新止损价接近最新市场变动。
追踪止损订单跟踪自订单提交以来的最高(对于卖出,最低对于买入)价格(称为高水位,或hwm),用户指定的追踪参数决定相对于高水位触发实际止损价。一旦止损价触发,订单变成市价单,它可能以高于或低于止损触发价成交。
要提交追踪止损订单,你将type参数设置为“trailing_stop”。有两个与追踪止损相关的订单提交参数,当type为“trailing_stop”时,其中一个为必填。
| 字段 | 类型 | 描述 |
|---|---|---|
| trail_price | string<number> | 距离最高水位的美元值。如果你为卖出追踪止损设置此值为2.00,止损价始终为hwm - 2.00。 |
| trail_percent | string<number> | 距离最高水位的百分比值。如果你为卖出追踪止损设置此值为1.0,止损价始终为hwm \* 0.99。 |
追踪止损订单必须设置其中一个值。以下是追踪订单提交JSON参数示例。
{
"side": "sell",
"symbol": "SPY",
"type": "trailing_stop",
"qty": "100",
"time_in_force": "day",
"trail_price": "6.15"
}从GET方法返回的订单实体有几个与追踪止损订单相关的字段。
| field | type | description |
|---|---|---|
trail_price | string<number> | This is the same value as specified when the order was submitted. It will be null if this was not specified. |
trail_percent | string<number> | This is the same value as specified when the order was submitted. It will be null if this was not specified. |
hwm | string<number> | The high water mark value. This continuously changes as the market moves towards your favorable way. |
stop_price | string<number> | This is the same as stop price in the regular stop/stop limit orders, but this is derived from hwm and trail parameter, and continuously updates as hwm changes. |
如果追踪止损单被接受,订单状态变为“new”。在订单等待止损价触发期间,你可以通过PATCH方法更新追踪参数。
| 字段 | 类型 | 描述 |
|---|---|---|
trail | string<number> | trail_price或trail_percent值的新值。这种替换请求仅在订单类型为“trailing_stop”且在止损价被触发之前有效。注意,你无法将价格追踪改为百分比追踪,反之亦然。 |
关于追踪止损订单的一些说明
- 追踪止损不会在常规市场时间之外触发。
- 追踪止损的有效有效期值为“day”和“gtc”。
- 追踪止损订单目前仅支持单腿订单。但是,我们计划未来支持追踪止损作为括号/OCO订单的止损腿。
正确使用追踪止损订单需要理解其目的和运作方式。使用追踪止损订单时要记住的主要点是确保追踪止损与价格之间的差异足够大,以至于典型的价格波动不会触发过早执行。
在快速变化的市场中,执行价格可能不如止损价有利。对于跨交易时段的GTC订单或经历交易暂停的股票,这种脆弱性的可能性会增加。止损价触发市价单,因此止损价不一定与执行价相同。
关于股票拆分,Alpaca保留自行决定取消或调整追踪止损订单的价格和/或股份数量的权利。由于Alpaca依赖第三方获取市场数据,公司行动或错误的价格数据可能导致追踪止损过早触发。
名义金额订单限制
名义金额订单(使用notional字段而不是qty字段下达的订单)不能替换。任何通过替换(PATCH)端点修改名义金额订单的尝试——包括更改limit_price、stop_price、qty或任何其他字段——都将被拒绝。
如果你需要更改名义金额订单的任何参数,请取消原订单并提交新订单。
订单有效期
🚧 加密货币订单有效期
对于加密货币交易,Alpaca仅支持gtc和ioc。
不支持OPG、fok、day和CLS。
Alpaca支持以下订单有效期指定:
| 订单有效期 | 描述 |
|---|---|
day | 当日订单仅在有效当日有资格执行。默认情况下,订单仅在常规交易时段(美国东部时间上午9:30 - 下午4:00)有效。如果在收盘拍卖后未成交,则自动取消。如果在收盘后提交,则排队并在下一个交易日提交。但是,如果标记为符合盘前盘后交易资格,订单也可以在支持的盘前盘后时段执行。 |
gtc | 订单有效直到取消。不可市场化的GTC限价订单受价格调整影响,以抵消影响发行的公司行动。我们目前不支持不减少(DNR)订单以选择退出此类价格调整。 |
opg | 将此TIF与市价/限价订单类型一起使用,提交“开盘市价”(MOO)和“开盘限价”(LOO)订单。此订单仅在市场开盘拍卖中有资格执行。开盘后任何未成交订单将被取消。在东部时间上午9:28之后但晚上7:00之前提交的OPG订单将被拒绝。晚上7:00之后提交的OPG订单将排队并路由到下一个交易日的开盘拍卖。开盘/收盘订单路由到主要交易所。此类订单不一定恰好在东部时间上午9:30 / 下午4:00执行,而是根据交易所的拍卖规则执行。 |
cls | 将此TIF与市价/限价订单类型一起使用,提交“收盘市价”(MOC)和“收盘限价”(LOC)订单。此订单仅在市场收盘拍卖中有资格执行。收盘后任何未成交订单将被取消。在东部时间下午3:50之后但晚上7:00之前提交的CLS订单将被拒绝。晚上7:00之后提交的CLS订单将排队并路由到下一个交易日的收盘拍卖。仅适用于API v2。 |
ioc | 立即或取消(IOC)订单要求立即执行全部或部分订单。订单的任何未成交部分被取消。仅适用于API v2。大多数收到IOC订单的做市商会尝试仅以自营方式成交订单,并取消任何未成交余额。有时,如果做市商没有相关证券的现有库存,这可能导致整个订单被取消。 |
fok | 成交或取消(FOK)订单仅在可以成交整个订单数量时执行,否则订单被取消。仅适用于API v2。 |
老化订单政策
Alpaca实施了一项老化订单政策,将在创建后90天自动取消GTC订单,以管理风险、减少错误并帮助实现运营效率。List/Get订单API端点有一个名为expires_at的字段,提供到期信息。
在expires_at日期,将有一个作业提交取消请求以取消GTC订单。
这将在expires_at日期美国东部时间下午4:15进行。订单将保持在pending_cancel状态,直到被Alpaca路由订单执行的执行场所取消。
订单类型与支持的订单有效期
本节包含显示各种订单类型的有效期选项的表格。
注意*:请就任何标有**的TIF联系销售团队。
整数数量订单(美元)
| 订单有效期 | 市价单 | 限价单 | 止损单 | 止损限价单 |
|---|---|---|---|---|
| GTC | 是 | 是 | 是 | 是 |
| DAY | 是 | 是 | 是 | 是 |
| IOC | 是* | 是* | 否 | 否 |
| FOK | 是* | 是* | 否 | 否 |
| OPG | 是* | 是* | 否 | 否 |
| CLS | 是* | 是* | 否 | 否 |
碎股订单(美元)
| 订单有效期 | 市价单 | 限价单 | 止损单 | 止损限价单 |
|---|---|---|---|---|
| GTC | 否 | 否 | 否 | 否 |
| DAY | 是 | 是 | 是 | 是 |
| IOC | 否 | 否 | 否 | 否 |
| FOK | 否 | 否 | 否 | 否 |
| OPG | 否 | 否 | 否 | 否 |
| CLS | 否 | 否 | 否 | 否 |
LCT(整数数量或碎股)
| 订单有效期 | 市价单 | 限价单 | 止损单 | 止损限价单 |
|---|---|---|---|---|
| GTC | 否 | 否 | 否 | 否 |
| DAY | 是 | 是 | 是 | 是 |
| IOC | 否 | 否 | 否 | 否 |
| FOK | 否 | 否 | 否 | 否 |
| OPG | 否 | 否 | 否 | 否 |
| CLS | 否 | 否 | 否 | 否 |
盘前盘后交易订单
| 订单有效期 | 市价单 | 限价单 | 止损单 | 止损限价单 |
|---|---|---|---|---|
| GTC | 否 | 是 | 否 | 否 |
| DAY | 否 | 是 | 否 | 否 |
| IOC | 否 | 否 | 否 | 否 |
| FOK | 否 | 否 | 否 | 否 |
| OPG | 否 | 否 | 否 | 否 |
| CLS | 否 | 否 | 否 | 否 |
加密货币订单
| 订单有效期 | 市价单 | 限价单 | 止损单 | 止损限价单 |
|---|---|---|---|---|
| GTC | 是 | 是 | 否 | 是 |
| DAY | 否 | 否 | 否 | 否 |
| IOC | 是 | 是 | 否 | 否 |
| FOK | 否 | 否 | 否 | 否 |
| OPG | 否 | 否 | 否 | 否 |
| CLS | 否 | 否 | 否 | 否 |
OTC资产
| 订单有效期 | 市价单 | 限价单 | 止损单 | 止损限价单 |
|---|---|---|---|---|
| GTC | 是 | 是 | 是 | 是 |
| DAY | 是 | 是 | 是 | 是 |
| IOC | 否 | 否 | 否 | 否 |
| FOK | 否 | 否 | 否 | 否 |
| OPG | 否 | 否 | 否 | 否 |
| CLS | 否 | 否 | 否 | 否 |
期权订单
| 订单有效期 | 市价单 | 限价单 | 止损单 | 止损限价单 |
|---|---|---|---|---|
| GTC | 是 | 是 | 是 | 是 |
| DAY | 是 | 是 | 是 | 是 |
| IOC | 否 | 否 | 否 | 否 |
| FOK | 否 | 否 | 否 | 否 |
| OPG | 否 | 否 | 否 | 否 |
| CLS | 否 | 否 | 否 | 否 |
订单生命周期
通过Alpaca执行的订单在其生命周期中可能会经历多次状态变化。

最常见的状态详细描述如下:
| 状态 | 描述 |
|---|---|
new | 订单已被Alpaca接收,并路由到交易所执行。这是订单的通常初始状态。 |
partially_filled | 订单已部分成交。 |
filled | 订单已成交,订单将不再有进一步更新。 |
done_for_day | 订单当日执行完毕,在下一个交易日之前不会收到进一步更新。 |
canceled | 订单已取消,订单将不再有进一步更新。这可能是由于用户取消请求,或订单因其有效期而被交易所取消。 |
expired | 订单已过期,订单将不再有进一步更新。 |
replaced | 订单被另一个订单替换,或因公司行动等市场事件而更新。 |
pending_cancel | 订单等待取消。 |
pending_replace | 订单等待被另一个订单替换。在此状态下,订单将拒绝取消请求。 |
下面描述了不太常见的状态。请注意,这些状态仅在极少数情况下发生,大多数用户可能永远不会看到他们的订单达到这些状态:
| 状态 | 描述 |
|---|---|
accepted | 订单已被Alpaca接收,但尚未路由到执行场所。这可能在交易时段之外经常看到。 |
pending_new | 订单已被Alpaca接收,并路由到交易所,但尚未被接受执行。此状态仅在极少数情况下发生。 |
accepted_for_bidding | 订单已被交易所接收,并正在评估定价。此状态仅在极少数情况下发生。 |
stopped | 订单已被停止,订单保证成交,通常以指定价格或更好价格,但尚未发生。此状态仅在极少数情况下发生。 |
rejected | 订单已被拒绝,订单将不再有进一步更新。此状态在极少数情况下发生,可能基于交易所决定的各种条件。 |
suspended | 订单已被暂停,没有交易资格。此状态仅在极少数情况下发生。 |
calculated | 订单当日已完成(要么成交,要么当日完成),但剩余的结算计算仍在等待。此状态仅在极少数情况下发生。 |
订单可以通过API取消,直到达到filled、canceled或expired状态。
零股和大宗交易
交易股票时,整手通常定义为100股,或可被100整除的更大数量。零股是任何不能被100股整除的数量(例如48、160等)。大宗交易通常定义为涉及10,000股或以上的交易。
出于交易目的,零股通常被视为整手。然而,监管交易规则允许零股被区别对待。同样,大宗交易通常被分解执行,可能需要更长时间执行,因为市场必须随时间吸收大宗股份而不是一次性大量执行。当与交易清淡的股票结合时,零股和大宗交易很可能无法及时成交或执行,有时甚至完全无法执行,取决于使用的订单类型等其他因素。
卖空
卖空是卖出卖方不拥有的股票。一般来说,卖空者卖出借入的股票,预期价格下跌。卖空者后来通过购买股票来平仓。
Alpaca Securities LLC的订单处理标准
市价单和限价单在主要交易所开盘价上受到保护。我们不一定会将零售订单路由到交易所,而是将订单路由给做市商,做市商会代表你将订单路由到主要市场开盘拍卖。此保护受每个交易所开盘过程的交易所时间截止限制。例如,如果你在纳斯达克证券的9:28:01至9:29:59之间输入市价单,你将不会获得纳斯达克官方开盘价(NOOP),因为纳斯达克对发送到交叉盘的市价单有9:28的截止时间。任何在9:28之前收到的市价单将以纳斯达克官方开盘价成交。
止损单和追踪止损在合并成交行情上触发。你的卖出止损单只有在合并成交行情上有等于或低于你的止损价的交易且触发交易不在NBBO之外时才会触发。你的买入止损单只有在合并成交行情上有等于或高于你的止损价的交易且不在NBBO之外时才会触发。
限价单通常受限于限价单显示和保护。保护意味着你不应该看到股票交易价格优于你的限价而没有收到执行。限价单显示受REG NMS规则611约束。如果你的订单是全国最佳买价或卖价(排除REG NMS规则611列出的例外),你的订单将被显示。下面列出了一些示例:
- 零股订单(低于交易单位)。大多数NMS证券的交易单位为100股。
- 大宗订单。根据REG NMS,大宗订单被指定为至少10,000股或至少$200,000名义金额的订单。
- “全有或全无”订单
- 客户要求不显示订单。
- 不负责订单(Not Held)
OTC头寸
正在活跃交易的OTC头寸不会自动从用户账户中移除/平仓。如果客户希望移除或平仓,用户可以提交订单。
OTC市场有几个市场层级,根据市场层级,在下单平仓时可能有更多考虑因素。
OTC市场层级
OTCQX、OTCQB、Pink(当前、有限、无信息)
客户可以输入市价单、限价单和止损单来平仓。对于市价单,客户可以混合整数股和碎股。
专家市场, Caveat Emptor
客户在下单平仓OTC专家市场证券时,必须输入day限价单。但是,Alpaca将接受仅为碎股的市价单,但最佳实践是为你的整数、混合(整数和碎股)或碎股订单输入day限价单。
示例:用户拥有10.53股WXYZ股票:以限价卖出10.53股WXYZ股票的限价单。
OTC市场数据是单独的数据订阅。在许多情况下,客户可以从otcmarkets.com获得实时一级报价。此外,你也可以在该网站上查看OTC市场层级。