Unless otherwise specified, the bots will default to whichever value or parameter is closest to the requested input parameter (described below). In almost all cases, this is done by a binary search on a sorted array of possible values.
Additionally, strike selections for exactly, or higher, and or lower are available which provides full control over targeting specific strikes and rounding in your preferred direction based on the strike selection method.
If the user requests a strike based on a delta value, the strike chosen will be the strike with a delta value closest to the delta specified, determined by absolute difference with up to 8 decimal places of precision.
In the simplest case, assume a put option delta z is chosen with a value z=−0.1
(i.e., the 10-delta). If the strikes closest toz have delta values x =−0.08 and y=−0.11, then we choose the strike closest toz with delta k.
wherex and y are identified from the ordered list of all strikes on a given expiration. As noted above, decimal precision goes out to 8 decimal places. The probability that 2 adjacent strikes exist of equal absolute distance to the chosen z is extremely small. Should that situation occur, the strike chosen will be the first closest to be identified.
The range of deltas listed on the auto-trading platform is in increments of +/- .05. This is because deltas between different tickers are wide-ranging and often have an inconsistent variance. While the bot can choose any delta, the selection of deltas for the bot will be in increments of +/- .05.
If a user requests a strike based on percentage value, the strike chosen will be the strike closest to the percentage offset; whether that is a percentage from underlying price or a percentage above or below a referenced leg, it will always be closest to. If choosing a percentage of a referenced leg, the strike chosen will never be the same as the referenced leg, even if the offered strike widths are wider than the resulting percentage offset.
If a user requests a strike based on a dollar-based offset, the strike chosen will be the closest strike to the dollar-based offset. In situations where the width of the offered strikes in an option chain is wider than the specified offset, the next available strike will be selected. The automation will not choose the same strike as the strike in reference.
The standard deviation option for strike selection compares the current price to the underlying's 30-day std deviation, multiplied by the user-defined value.
Contract expiration does not play a role in the std. deviation calculation: underlying Price +/- (X * sd30)
X represents the number of std. dev provided by the user.
Days to Expiration
When using "at least" or "exactly"
When selecting an option expiration using "at least" a certain number of days, the chosen expiration will always be at least the number of days specified but the closest DTE beyond that minimum threshold.
When selecting an option expiration using "exactly" a certain number of days, the chosen expiration will always be the exact number of days specified unless that expiration is not available. In that case, an error will generate notifying that no expiration exists.
When using between "x and y" days
When selecting an expiration between "x and y" number of days, the bot will select the first available expiration that is closest to the minimum number of days. For example, if you select an expiration between 10 and 30 days, and there is an expiration at 14 days and another at 21 days, it will choose the 14-day expiration. The bot has a tendency towards the lower bound of the range and will always select the one closest to the earliest day specified.
When using "on or after a certain date"
When selecting an expiration on or after a certain date, the expiration chosen will be on that date if an expiration exists, and the closest expiration after that date if it does not exist.