Thin Python client for the OptionsAhoy keyless public equity-compensation REST API.
Project description
optionsahoy
A thin, dependency-light Python client for the OptionsAhoy keyless public REST API. It wraps the equity-compensation calculators (incentive stock option (ISO) / alternative minimum tax (AMT), non-qualified stock options (NSO), restricted stock units (RSU), single-stock concentration, protective put hedges, qualified small business stock (QSBS), and funding a cash goal from equity).
No API key is required, read, or sent anywhere. The only runtime dependency is httpx.
Install
pip install optionsahoy
Or from this repository, editable:
pip install -e integrations/python/optionsahoy
Usage
from optionsahoy import OptionsAhoyClient, OptionsAhoyError
client = OptionsAhoyClient() # base_url defaults to https://optionsahoy.com
try:
result = client.qsbs(
acquisitionDate="2018-01-01",
saleDate="2026-02-01",
entityType="us-c-corp",
acquisitionMethod="original-issuance",
assetCategory="under-50m",
industry="tech-software",
activeBusiness="yes",
adjustedBasis=10000,
expectedGain=2000000,
stateCode="CA",
ordinaryIncome=250000,
filingStatus="single",
)
print(result)
except OptionsAhoyError as err:
print(err.status_code, err.payload)
Field names, types, and required-ness mirror the published OpenAPI schema at https://optionsahoy.com/openapi.json. Optional fields left unset are not sent.
Forward-looking inputs
Some endpoints (for example nso and rsu_sell_vs_hold) accept forward-looking
fields such as expectedSalePrice and volatility that the OpenAPI schema marks
optional. At runtime the API requires you to supply these explicitly, or to set a
covered ticker (for example "NVDA") so the API can derive them from that
symbol's trailing data. Do not invent these values; pass what the user provides or a
ticker. Omitting both returns a clear 400 explaining which field is needed.
Methods
amt_iso(...)— multi-year ISO exercise optimizer under the AMTnso(...)— NSO exercise tax and after-tax proceedsrsu_sell_vs_hold(...)— sell-at-vest versus hold for RSUsconcentration(...)— concentrated single-stock position analysisprotective_put(...)— protective put hedge pricingqsbs(...)— QSBS eligibility and capital-gains exclusionequity_funding(...)— plan equity sales to fund a cash goal by a target date
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file optionsahoy-0.1.0.tar.gz.
File metadata
- Download URL: optionsahoy-0.1.0.tar.gz
- Upload date:
- Size: 6.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4fb63ebd4b18b8556faeedd569eff5b3a717788a53dd0c2614b5de3b515a156
|
|
| MD5 |
082ec2cd4f46ac6cb689299e8ab41314
|
|
| BLAKE2b-256 |
30daa3c17f8e93978b66ff565c03e513d583df5a5e4af39ae9b68188d25b0e54
|
Provenance
The following attestation bundles were made for optionsahoy-0.1.0.tar.gz:
Publisher:
publish-python.yml on AlvisoOculus/optionsahoy-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
optionsahoy-0.1.0.tar.gz -
Subject digest:
f4fb63ebd4b18b8556faeedd569eff5b3a717788a53dd0c2614b5de3b515a156 - Sigstore transparency entry: 1810449072
- Sigstore integration time:
-
Permalink:
AlvisoOculus/optionsahoy-mcp@5d33e5ffd9853a9111cafebd3171b34bf7a88d51 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/AlvisoOculus
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-python.yml@5d33e5ffd9853a9111cafebd3171b34bf7a88d51 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file optionsahoy-0.1.0-py3-none-any.whl.
File metadata
- Download URL: optionsahoy-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a72ac7b2ee5c1bb66a62dcf81d48ab9fe524186ab61142618fe27eb264c16139
|
|
| MD5 |
5d0054d4f56c52dcb635e6923b0139fe
|
|
| BLAKE2b-256 |
57c6487fb77b38731ddf7d216ce81664148a3ccb79b522306a76696b480f4de7
|
Provenance
The following attestation bundles were made for optionsahoy-0.1.0-py3-none-any.whl:
Publisher:
publish-python.yml on AlvisoOculus/optionsahoy-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
optionsahoy-0.1.0-py3-none-any.whl -
Subject digest:
a72ac7b2ee5c1bb66a62dcf81d48ab9fe524186ab61142618fe27eb264c16139 - Sigstore transparency entry: 1810449109
- Sigstore integration time:
-
Permalink:
AlvisoOculus/optionsahoy-mcp@5d33e5ffd9853a9111cafebd3171b34bf7a88d51 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/AlvisoOculus
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-python.yml@5d33e5ffd9853a9111cafebd3171b34bf7a88d51 -
Trigger Event:
workflow_dispatch
-
Statement type: