Bots do not share an order ID with your broker. Each bot has a unique ID maintained by Option Alpha. Positions are tracked and managed independently of the broker. We submit a buy-to-close or sell-to-close order and the broker performs the reconciliation to determine whether or not the order is valid.
The broker reconciles a buy or sell-to-close order against existing positions. The closing order won't automatically reverse the order if it does not exist, it will error out.
When adding to an existing position, he bot will only manage the quantity it knows about. The additional quantity that was opened manually will need to be closed manually. You can manually override a position in the platform and the bot will no longer manage the position; you will need to manage the position through your broker.
The bot will honor any instructions to close the position in your automations (or at expiration if ITM) as if it was still open. However, since you've externally closed the position, the broker will produce an error with a message informing you the position does not exist. At that point, you can still manually override the position in the bot so it doesn't try again.
Users are encouraged to reach out to the broker for questions on their reconciliation process.
Bot Positions can be in four different states, Open, Opening, Closed, and Closing. When an order is passed from the automation to the broker service it changes state, and in the process is released from the bot temporarily until returned with an updated state. During this time, the bot is unaware of this position and will not be recognized as Open by other automations.
Positions that are in a Closing state are not recognized by other automations as Open while undergoing the closing process.
All orders are submitted as timed limit orders. If a partial fill event is returned, we wait for the remaining position to be filled. On the subsequent partial fill(s) we reset the timeout, default to 5 minutes.
If no new partial fill even is received after the timeout expires, the remaining order is simply canceled and the position status changes from "opening" to "open" with the partial quantity or position status changes to "open" to "closing with the remaining quantity.
Tax Lot Selection
A tax lot is a record of a transaction and its tax implications, including the purchase date and the number of shares. Each time you purchase a security, the new position is a distinct and separate tax lot, even if you already owned shares of the same security. A tax lot identification method is the way your broker will determine which tax lots are to be sold when you have a position consisting of multiple purchases made on different dates at differing prices, and you enter a trade to sell only part of the position. Your choice of tax lot ID method can have a significant impact on the amount of taxes you may pay when you sell an asset.
Option Alpha does not pass tax lot information with the specific order to any of the brokers. Bots submit closing order requests for the options symbol used to open the position. Your brokerage account settings will determine tax lot treatment. If you have any questions on tax lot treatment, please reach out to your broker.
Option Expiration Protocol (Forced Closures)
Bots do not attempt to close positions on expiration day that are OTM.
For options positions that are ITM, the bot will try to close the positions using normal SmartPricing settings. It will first attempt at 3:50 EST, then at 3:55 EST, and finally at 3:59 EST. This forced closing sequence applies for single legs that are ITM or for spreads that contain a single leg that is ITM.
In addition to the Bot Platform forcing early closures in ITM cases, the brokerage platform may also take action to close an expiring position early. The brokerage rules for early closure vary across brokerages but generally depend on whether the account has the funds to cover, whether the position is ITM or OTM, and what is the account type where the expiring positions are held.
Bots will still attempt to close expiring positions regardless of the state of the bot being turned On or Off. Turning the bot off disables the scanner and monitor automation intervals but does not mean it performs no actions. If you attempt to delete a bot with active positions, it prevents you from doing so until all positions are cleared. A user can, at any time, click a button or perform a lightning bolt automation that executes live orders even though the bot is Off.
It is highly recommended that you Manually Override any active positions you do not want to encounter the Forced Closure process.
Notifications for expired positions will populate at 4:15 ET