Options Position
workflow.run_options_positionProfit and loss at expiry for a US-style equity, ETF or index option position built from 1 to 4 option legs, in US dollars with the standard contract multiplier of 100 shares (NOT Deribit and not coin-settled: for BTC/ETH options on Deribit use workflow.run_spread_payoff or workflow.run_options_payoff). Each leg: call or put, long or short, strike, premium per share as quoted, contracts. Optional stock adds long shares held with the options (covered call, protective put, collar). Prices are the ones you pass in; nothing is fetched. All legs share one expiry (a calendar spread is not computed). Returns: the strategy name derived from the legs (bull/bear call or put spread, iron condor, iron butterfly, straddle, strangle, covered call, protective put, collar, single leg, or a custom position), net debit or credit in dollars, maxProfitUsd and maxLossUsd (null = unlimited), every breakeven price per share, the P&L at each price in scenarioPrices and a short exact payoff curve. maxLossUsd is the worst P&L as a loss amount (negative if no price loses); maxProfitUsd is the best P&L (negative if every price loses). Edge cases: 1 to 4 legs; strike and premium up to 10,000,000, premium may be 0; contracts a whole number from 1 to 100,000; stock quantity a whole number up to 100,000,000; up to 50 scenarioPrices, each 0 to 1e9. Not covered: calendar or diagonal spreads (one expiry only), early assignment, commissions, taxes, dividends, margin, Greeks and the value before expiry.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"legs": "<legs>"
},
"name": "workflow.run_options_position"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| legs | Yes | One to four option legs. Each leg: { optionType: call|put, position: long|short, strike: number, premium: number (USD per share), contracts: integer >= 1 (default 1) }. | |
| stock | No | Optional long shares held together with the options: { quantity: whole shares, costPerShare: USD }. 100 shares cover one short call. | |
| scenarioPrices | No | Expiry prices (USD per share, 0 or more) to report the position P&L at. Optional. |