Cash Secured Put
workflow.run_cash_secured_putCash-secured put on a US stock or ETF, in US dollars with the standard 100-share contract (NOT Deribit and not coin-settled): you sell puts and hold the cash to buy the shares if they are assigned. Returns the premium income, the cash held as collateral (strike x 100 x contracts), the return for the period (premium / collateral) and the simple annualized return by days to expiry (365-day year, not compounded), the effective buy price if assigned (strike minus premium, which is also the breakeven), the net cost of the shares if assigned, the maximum profit (the premium), the maximum loss (shares to zero) and the dollars lost per $1 the price falls below the breakeven. Optional spotPrice adds the discount to buying the shares now and the strike distance from the spot; optional scenarioPrice adds the P&L at expiry at that price, whether the put is assigned, and the same price move compared with buying the shares now at spotPrice. A scenario price exactly at the strike counts as not assigned (the P&L is the same either way). A premium at or above the strike is refused. The premium is the one you type (per share, as quoted); commissions, early assignment, taxes, dividends and interest on the cash are not modelled. Edge cases: strike above zero; premium 0 or more and below the strike; contracts a whole number from 1 to 1,000,000; daysToExpiry 1 to 3650; spotPrice above zero and scenarioPrice 0 or more when given. Not covered: a fractional contract, and (already stated) commissions, early assignment, taxes, dividends and interest on the cash. Use when the user asks what selling a cash-secured put pays, what price they would effectively buy at, or whether it beats buying the stock now. Prices are computed, nothing is fetched.
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": {
"strike": "<strike>",
"premium": "<premium>",
"contracts": "<contracts>",
"daysToExpiry": "<daysToExpiry>"
},
"name": "workflow.run_cash_secured_put"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| strike | Yes | Strike price of the put, USD per share, above 0 | |
| premium | Yes | Premium received per share as quoted, USD, 0 or more and below the strike. A contract covers 100 shares, so 2.50 pays 250 dollars per contract. | |
| contracts | Yes | Number of contracts sold, a whole number from 1 to 1,000,000 | |
| spotPrice | No | Optional: the share price today, USD, above 0, for the comparison with buying now | |
| daysToExpiry | Yes | Calendar days to expiry, 1 to 3650 | |
| scenarioPrice | No | Optional: a share price at expiry, USD, 0 or more, to report the P&L at |