Skip to main content

即时资金

机器翻译译自英文(docs.alpaca.markets)本页 101 段已全部译完

Broker API的即时资金允许经纪合作伙伴通过创建即时资金转账(即在客户账户级别扩展购买力)为客户提供即时资金访问。这使客户能够立即开始交易,而无需等待资金到达并在Alpaca结算。

主要功能

客户可以访问即时购买力,使他们能够立即交易。合作伙伴无需在T+0为股票交易预先注资或与Alpaca结算资金。合作伙伴能够为最终用户账户设置特定的即时资金限额(默认1000美元)。合作伙伴可以选择通过为客户配置灵活的费用加价来创造额外的收入流。

截止时间与利息要求

结算批处理:

24小时窗口内(从前一天东部时间晚上8点到当天东部时间晚上8点)的所有即时资金转账将分组在下一个周期结算。这些即时转账的结算必须在T+1下午1点前完成。每个结算周期都有一个关联报告,可以从此处描述的即时资金报告端点获取。

逾期付款与利息费用:

未在T+1东部时间下午1点前结算的即时资金转账将产生逾期付款利息,按月向合作伙伴开具发票。逾期付款的罚息按FED UB + 8%(基于FRED经济数据)计算,并向合作伙伴收取。未核对的即时资金转账将在T+1(结算日)东部时间晚上8点自动取消。如果用户已经使用了即时资金信用,账户可能会产生保证金利率(记录在此处)并最终出现借记余额。

工作原理

经纪合作伙伴将从客户处收取资金,并在收到每笔付款后调用Instant Funding API创建即时资金转账。这将向每个最终用户扩展购买力。即时资金报告端点可用于获取欠款金额的详细和汇总报告。详细视图将给出即时资金转账欠款金额的明细,汇总视图将给出累计值。

然后,你将在T+1(下一个工作日)东部时间下午1点前向Alpaca发送一笔电汇付款以结算未结的即时资金转账。之后,使用结算API触发结算,该API将检查SI账户中的资金并执行结算。下面给出了流程的详细概述以及相关API的工作方式。

此流程如上图所示

此流程如上图所示

如何创建即时资金转账

步骤1:创建即时资金转账

你必须指定希望通过即时资金转账记入的账户、购买力将从中借入的公司账户以及要记入的金额。

请求

POST v1/instant_funding

{
 "account_no": "{ACCOUNT_NO}",
 "source_account_no": "{ACCOUNT_NO}",
 "amount": "20",
}

响应

{
  "account_no": "{ACCOUNT_NO}",
  "amount": "20",
  "created_at": "2024-11-11T08:20:10.726356556-05:00",
  "deadline": "2024-11-13",
  "fees": [],
  "id": "fcc6d9fc-ce36-484a-bd86-a27b98c2d1ab",
  "interests": [],
  "remaining_payable": "20",
  "source_account_no": "{ACCOUNT_NO}",
  "status": "PENDING",
  "system_date": "2024-11-12",
  "total_interest": "0"
}

即时资金转账已执行(结算前)

 {  
   "id": "20241111000000000::6b784928-f314-47bc-905f-0a49ebc9e413",  
   "account_id": "{ACCOUNT_ID}",  
   "activity_type": "MEM",  
   "date": "2024-11-11",  
   "net_amount": "0",  
   "description": "type: instant_funding_memopost, transfer_id: fcc6d9fc-ce36-484a-bd86-a27b98c2d1ab",  
   "symbol": "INSTANTUSD",  
   "qty": "20",  
   "status": "executed"  
 }

即时资金转账已取消(结算后或对账失败后)

{  
  "id": "20241111000000000::6b784928-f314-47bc-905f-0a49ebc9e413",  
  "account_id": "{ACCOUNT_ID}",  
  "activity_type": "MEM",  
  "date": "2024-11-11",  
  "net_amount": "0",  
  "description": "type: instant_funding_memopost, transfer_id: fcc6d9fc-ce36-484a-bd86-a27b98c2d1ab",  
  "symbol": "INSTANTUSD",  
  "qty": "20",  
  "status": "canceled"  
}

CSD已执行(结算后)

{  
  "id": "20241111000000000::daa5e4e9-7974-4273-a926-7ab0647d8850",  
  "account_id": "{ACCOUNT_ID}",  
  "activity_type": "CSD",  
  "date": "2024-11-11",  
  "net_amount": "20",  
  "description": "type: instant_funding_deposit, transfer_id: fcc6d9fc-ce36-484a-bd86-a27b98c2d1ab, settlement_id: 28f27c76-ea14-4d4c-8a04-8f666b14a224",  
  "status": "executed"  
}

步骤1.1:检查即时资金转账状态

获取特定的即时资金转账以检查转账的当前状态。

请求

GET v1/instant_funding/:instant_funding_id

响应

{  
    "account_no": "{ACCOUNT_NO}",  
    "amount": "20",  
    "created_at": "2024-09-10T09:12:36.88272Z",  
    "deadline": "2024-09-11",  
    "fees": [],  
    "id": "d96bdc91-6d1c-49b5-a3c3-03f16c70321b",  
    "interests": [],  
    "remaining_payable": "20",  
    "source_account_no": "{ACCOUNT_NO}",  
    "status": "EXECUTED",  
    "system_date": "2024-09-10",  
    "total_interest": "0"  
}

此外,所有即时资金转账可以使用以下API列出

请求

GET v1/instant_funding?sort_by=created_at&sort_order=DESC

响应

{  
    "account_no": "{ACCOUNT_NO}",  
    "amount": "20",  
    "created_at": "2024-09-10T09:12:36.88272Z",  
    "deadline": "2024-09-11",  
    "fees": [],  
    "id": "d96bdc91-6d1c-49b5-a3c3-03f16c70321b",  
    "interests": [],  
    "remaining_payable": "20",  
    "source_account_no": "{ACCOUNT_NO}",  
    "status": "EXECUTED",  
    "system_date": "2024-09-10",  
    "total_interest": "0"  
}

步骤1.2:显示购买力增加

一旦即时资金转账移至EXECUTED状态,你可以通过GET trading account端点获取用户的购买力,并引导用户开始使用其即时资金进行交易。

请求 GET /v1/trading/accounts/fc304c4d-5c2c-41f2-b357-99bbbed9ec90/account

响应

{  
    "id": "{ACCOUNT_ID}",  
    "admin_configurations": {  
        "allow_instant_ach": true,  
        "disable_shorting": true,  
        "max_margin_multiplier": "1"  
    },  
    "user_configurations": null,  
    "account_number": "{ACCOUNT_NO}",  
    "status": "ACTIVE",  
    "crypto_status": "INACTIVE",  
    "currency": "USD",  
    "buying_power": "100",  
    "regt_buying_power": "100",  
    "effective_buying_power": "100",  
    "non_marginable_buying_power": "0",  
    "bod_dtbp": "0",  
    "cash": "100",  
    "cash_withdrawable": "0",  
    "cash_transferable": "0",  
    "accrued_fees": "0",  
    "pending_transfer_out": "0",  
    "pending_transfer_in": "0",  
    "portfolio_value": "0",  
    "trading_blocked": false,  
    "transfers_blocked": false,  
    "account_blocked": false,  
    "created_at": "2024-07-10T17:23:51.655324Z",  
    "trade_suspended_by_user": false,  
    "multiplier": "1",  
    "shorting_enabled": false,  
    "equity": "0",  
    "last_equity": "0",  
    "long_market_value": "0",  
    "short_market_value": "0",  
    "position_market_value": "0",  
    "initial_margin": "0",  
    "maintenance_margin": "0",  
    "last_maintenance_margin": "0",  
    "sma": "0",  
    "balance_asof": "2024-07-09",  
    "previous_close": "2024-07-09T20:00:00-04:00",  
    "last_long_market_value": "0",  
    "last_short_market_value": "0",  
    "last_cash": "0",  
    "last_initial_margin": "0",  
    "last_regt_buying_power": "0",  
    "last_buying_power": "0",  
    "clearing_broker": "ALPACA_APCA",  
    "memoposts": "100",  
    "intraday_adjustments": "0",  
    "pending_reg_taf_fees": "0"  
}

步骤2:管理限额(可选)

你可以向所有最终用户扩展的总购买力将受到限制。此限额将根据你在生产中的业务需求确定。在沙盒中,默认值为100,000美元,但可以根据需要更新。你可以记入每个最终用户的金额默认也限制为1,000美元。如果你预计每个账户需要更高的限额,也可以根据请求更新。

当你全天为多个用户创建即时资金转账时,你会希望关注已使用了多少总即时资金限额,或者仍能向特定账户扩展多少购买力。这两个限额都可以通过API监控,如下所示。

步骤2.1:查看代理级别的即时资金限额

查看你可用于所有最终用户的即时资金限额。

请求 GET v1/instant_funding/limits

响应

{  
    "amount_available": "99900",  
    "amount_in_use": "100",  
    "amount_limit": "100000"  
}

步骤2.2:查看账户级别即时资金限额

查看特定账户或多个账户的即时资金限额。请求 GET v1/instant_funding/limits/accounts?account_numbers={ACCOUNT_NO}

响应

[  
    {  
        "account_no": "{ACCOUNT_NO}",  
        "amount_available": "900",  
        "amount_in_use": "100",  
        "amount_limit": "1000"  
    }  
]

如何结算即时资金转账

所有即时资金转账预计在T+1东部时间下午1点前结算,这意味着你将有一个工作日的时间将即时资金信用从购买力扩展转换为实际结算现金。Alpaca通过提供两份报告使这变得简单方便,你可以依靠这些报告准确确定应结算的金额和截止时间。

一旦资金发送至Alpaca,你必须通过API显式触发结算。

当触发结算时,Alpaca将执行余额检查,以确定发送的金额是否足以完成结算,如果余额不足,则不会执行结算。

此流程如上图所示

此流程如上图所示

Note

📘 Alpaca每次结算的限额为50,000笔转账。

如果需要结算超过50,000笔转账,应将它们分批进行多次结算。

步骤1:

获取结算报告

Alpaca提供高级汇总报告,显示应结算的总金额,以及详细报告,分解显示每个相关的即时资金转账到期金额。这些报告旨在帮助你快速了解需要发送多少资金来结算T+0创建的所有即时资金转账,或回顾历史并了解任何给定日期的欠款金额。

使用此API可以获取两种报告:汇总报告 - 呈现欠Alpaca余额的聚合视图;详细报告 - 返回欠Alpaca的聚合金额和每笔即时转账级别的金额。

获取汇总结算报告:

请求 GET v1/instant_funding/reports?report_type=summary&system_date=2024-05-15

响应

[  
    {  
        "account_no": "{ACCOUNT_NO}",  
        "deadline": "2024-05-16",  
        "system_date": "2024-05-15",  
        "total_amount_owed": "900",  
        "total_interest_penalty": "0.7"  
    }  
]

获取详细结算报告:

请求 GET /v1/instant_funding/reports?report_type=detail&system_date=2024-09-09

响应

[  
    {  
        "account_no": "{ACCOUNT_NO}",  
        "deadline": "2024-09-10",  
        "instant_funding_transfers": [  
            {  
                "account_no": "{ACCOUNT_NO}",  
                "amount": "10",  
                "created_at": "2024-09-09T13:20:13.175309Z",  
                "deadline": "2024-09-10",  
                "fees": [],  
                "id": "fade4447-b6ca-4ddf-b87b-3a475861cfeb",  
                "interests": [],  
                "remaining_payable": "10",  
                "source_account_no": "{ACCOUNT_NO}",  
                "status": "EXECUTED",  
                "system_date": "2024-09-09",  
                "total_interest": "0"  
            },  
            {  
                "account_no": "{ACCOUNT_NO}",  
                "amount": "20",  
                "created_at": "2024-09-09T13:21:48.050636Z",  
                "deadline": "2024-09-10",  
                "fees": [],  
                "id": "f1544394-a6f2-42a8-8758-408e8e0d5099",  
                "interests": [],  
                "remaining_payable": "20",  
                "source_account_no": "{ACCOUNT_NO}",  
                "status": "EXECUTED",  
                "system_date": "2024-09-09",  
                "total_interest": "0"  
            }  
        ],  
        "system_date": "2024-09-09",  
        "total_amount_owed": "30",  
        "total_interest_penalty": "0.11"  
    }  
]

步骤2:向Alpaca提交付款

一旦你确信准确知道应结算的金额,你可以从外部银行账户向Alpaca发起电汇付款,并记入你带有SI后缀的公司账户。你可以监控非交易事件流以确切了解资金何时记入你的账户。

步骤3:触发结算

你将通过API触发结算,并提交希望使用记入SI公司账户的资金进行结算的即时资金转账列表。在此阶段,你还将包括Alpaca需要收集的旅行规则详细信息。有关旅行规则要求的更多信息,请根据需要参阅FinCEN咨询。

请注意,一次只能有一个结算在进行中,即处于pending或awaiting_additional_funds状态。

作为传输方信息一部分需要发送的字段详情 -

字段描述
originator_full_name客户全名
originator_street_address传输资金实体的街道地址
originator_city传输资金实体的城市
originator_postal_code传输资金实体的邮政编码
originator_country传输资金实体的国家
originator_bank_account_number客户在平台上的账户号码
originator_bank_name传输资金的法人实体

请求 POST v1/instant_funding/settlements

{  
  "transfers": [  
    {  
      "instant_transfer_id": "29d8afd1-b7b1-4b47-830d-263244c4d28b",  
      "transmitter_info": {  
        "originator_full_name": "John Doe",  
        "originator_street_address": "123 Alpaca Way",  
        "originator_city": "San Mateo",  
        "originator_postal_code": "12345",  
        "originator_country": "USA",  
        "originator_bank_account_number": "123456789",  
        "originator_bank_name": "Citibank"  
      }  
    }  
  ],  
  "additional_info": "bulk wire sent to account {ACCOUNT_NO} from Citibank account number 191919191"  
}

响应

{  
    "created_at": "2024-05-24T08:56:01.440771581-04:00",  
    "id": "53d63f11-e844-4867-ab72-364bb1ac9258",  
    "interest_amount": "0",  
    "source_account_number": "{ACCOUNT_NO}",  
    "status": "PENDING",  
    "total_amount": "100",  
    "updated_at": "2024-05-24T08:56:01.440771581-04:00"  
}

步骤4:检查结算状态

触发结算后,重要的是检查结算状态,以确保对账已完成。

请求 GET /v1/instant_funding/settlements/c9a89b1b-94fe-4852-8ba1-140b67aa7280

响应

{  
    "completed_at": "2024-10-29T14:50:46.337084Z",  
    "created_at": "2024-10-29T14:50:15.926307Z",  
    "id": "a0f41a2c-60f3-49f2-90cd-e4ec2560c819",  
    "interest_amount": "0",  
    "source_account_number": "{ACCOUNT_NO}",  
    "status": "COMPLETED",  
    "total_amount": "20",  
    "updated_at": "2024-10-29T14:50:46.337131Z"  
}

步骤4.1:成功对账

当结算成功时,即时资金信用被取消,相应金额从SI账户中扣除。在账户活动中,这表示为取消的MEM活动,随后是执行的CSD活动,金额等于已结算的即时资金转账金额。

以下是成功对账的示例响应。

响应

{  
    "completed_at": "2024-08-26T15:10:03.337899Z",  
    "created_at": "2024-08-26T15:09:18.077505Z",  
    "id": "133cef1d-0300-41cc-9ac4-9c75cd1518b1",  
    "interest_amount": "0",  
    "source_account_number": "{ACCOUNT_NO}",  
    "status": "COMPLETED",  
    "total_amount": "20",  
    "updated_at": "2024-08-26T15:10:03.337921Z"  
}

步骤4.2:处理对账失败

如果结算失败,原因为"reason": "insufficient balance, available: 0, required: 40",这意味着触发结算时,源账户没有足够的资金进行对账。在这种情况下,可以通过将资金从RF账户记账划转到SI账户或向SI账户发送更多资金来向SI账户添加资金。一旦资金到位,可以再次触发结算。

以下是结算失败的示例响应 -

响应

{  
    "created_at": "2024-08-27T08:30:24.517942Z",  
    "id": "c9a89b1b-94fe-4852-8ba1-140b67aa7280",  
    "interest_amount": "0",  
    "reason": "insufficient balance, available: 0, required: 40",  
    "source_account_number": "{ACCOUNT_NO}",  
    "status": "FAILED",  
    "total_amount": "40",  
    "updated_at": "2024-08-27T09:36:01.026356Z"  
}

步骤4.3:延迟的即时资金转账和借记余额账户

如果即时资金转账延迟,即在T+1下午1点前未核对,并因此在T+1晚上8点前取消,则会发生以下情况之一 -

  1. 账户有足够资金 - 客户账户中的现金余额将用于抵消即时资金转账的未结金额
  2. 账户资金不足 - 客户账户将陷入借记余额,并对此收取保证金利息,直到余额不再为负或Alpaca对账户采取行动以结算负余额。

当账户处于借记余额时,该账户的现金价值将为负数。合作伙伴可以通过将资金从RF账户直接记账划转到客户账户来结算借记余额。合作伙伴也可以在发起此笔划转之前,从客户处本地收取所需资金。

账户的借记余额可以通过以下方式监控:

请求 GET v1/trading/accounts/:account_id/account

响应

{  
    "id": "{ACCOUNT_ID}",  
    "admin_configurations": {  
        "allow_instant_ach": true,  
        "disable_shorting": true,  
        "max_margin_multiplier": "1"  
    },  
    "user_configurations": null,  
    "account_number": "574631172",  
    "status": "ACTIVE",  
    "crypto_status": "ACTIVE",  
    "currency": "USD",  
    "buying_power": "0",  
    "regt_buying_power": "0",  
    "effective_buying_power": "0",  
    "non_marginable_buying_power": "0",  
    "bod_dtbp": "0",  
    "cash": "-15.26",  
    "cash_withdrawable": "0",  
    "cash_transferable": "0",  
    "accrued_fees": "0.113961944444418396",  
    "pending_transfer_out": "0",  
    "portfolio_value": "-2.31",  
    "trading_blocked": false,  
    "transfers_blocked": false,  
    "account_blocked": false,  
    "created_at": "2024-08-05T14:19:45.334013Z",  
    "trade_suspended_by_user": false,  
    "multiplier": "1",  
    "shorting_enabled": false,  
    "equity": "-2.31",  
    "last_equity": "-1.54",  
    "long_market_value": "62.95",  
    "short_market_value": "0",  
    "position_market_value": "62.95",  
    "initial_margin": "62.95",  
    "maintenance_margin": "18.88",  
    "last_maintenance_margin": "63.61",  
    "sma": "0",  
    "balance_asof": "2024-09-09",  
    "previous_close": "2024-09-09T20:00:00-04:00",  
    "last_long_market_value": "63.61",  
    "last_short_market_value": "0",  
    "last_cash": "-65.15",  
    "last_initial_margin": "63.61",  
    "last_regt_buying_power": "0",  
    "last_buying_power": "0",  
    "clearing_broker": "ALPACA_APCA",  
    "memoposts": "50",  
    "intraday_adjustments": "0",  
    "pending_reg_taf_fees": "0"  
}

如何删除即时资金转账

如果需要反转现有的即时资金转账,可以发出以下请求删除转账

请求 DELETE v1/instant_funding/{instant_funding_id}

响应

HTTP 200 OK

其他资源

即时资金博客文章

常见问题

请参阅我们的常见问题解答此处和此处。

内容文章仅供参考,截至发布之日被认为准确,但可能会发生变化。Alpaca不提供投资、税务或法律建议。请就本文中的任何投资、税务或法律声明咨询你自己的独立顾问。所有投资均涉及风险,证券或金融产品的过去表现不能保证未来结果或回报。不能保证任何投资策略都能实现其目标。请注意,分散投资不能保证盈利或防止损失。投资证券或其他金融产品时始终存在亏损的可能性。投资者在投资前应仔细考虑其投资目标和风险。证券经纪服务由Alpaca Securities LLC(“Alpaca Securities”)提供,其为FINRA/SIPC成员,是AlpacaDB, Inc.的全资子公司。技术和服务由AlpacaDB, Inc.提供。这不是在任何Alpaca Securities未注册或未获许可的司法管辖区购买或出售证券或开设经纪账户的要约、要约邀请或建议。