ETF Portfolio Builder - Your Custom Path to Wealth API
🚀 TRANSFORM YOUR INVESTMENT JOURNEY WITH THE CUSTOM VANGUARD ETF PORTFOLIO BUILDER! Unlock the power of smart investing with the Vanguard ETF Portfolio
- Id:
widget_78 - Price: Free to run, plus the Call Price, Ƀ 0.1 an API run. Your first 100 API runs carry no Call Price.
- Widget page: Run it in your browser
- Docs: Call Abyss from your code
Input
Send these Fields as input. A Field not listed here is refused.
contribution_amount
Contribution amount
- Type: number
- Required: yes
frequency
Frequency
- Type: string
- Required: yes
- Allowed values:
Monthly,Quarterly,Semi-Annually,Annually,Lump Sum
horizon
Investment Horizon
- Type: number
- Required: yes
risk_tolerance
Risk Tolerance
- Type: string
- Required: yes
- Allowed values:
Low,Medium,High
goal
Goal
- Type: string
- Required: yes
- Allowed values:
Growth,Income,Capital Preservation
reinvest_dividends
Will you reinvest dividends?
- Type: string
- Required: yes
- Allowed values:
Yes,No
return_method
Select a model which will be used to estimate expected returns.
- Type: string
- Required: yes
- Allowed values:
Historical Average,CAPM
Run it
One call presses the Widget and answers the run once its status is succeeded or failed, however long it takes. The key is read from ABYSS_API_KEY. Install the library with npm install abysshub or pip install abysshub; cURL sends the Fields as a form.
JavaScript
// index.mjs
import Abyss from "abysshub";
const abyss = new Abyss();
const run = await abyss.run("widget_78", {
contribution_amount: 3000,
frequency: "Monthly",
horizon: 12,
risk_tolerance: "Medium",
goal: "Growth",
reinvest_dividends: "Yes",
return_method: "Historical Average",
});
for (const path of await run.save("output")) {
console.log(path);
}Python
from abysshub import Abyss
abyss = Abyss()
run = abyss.run("widget_78", {
"contribution_amount": 3000,
"frequency": "Monthly",
"horizon": 12,
"risk_tolerance": "Medium",
"goal": "Growth",
"reinvest_dividends": "Yes",
"return_method": "Historical Average",
})
for path in run.save("output"):
print(path)cURL
curl https://api.abysshub.com/v1/widgets/widget_78/runs \
-H "Authorization: Bearer $ABYSS_API_KEY" \
-F contribution_amount=3000 \
-F frequency=Monthly \
-F horizon=12 \
-F risk_tolerance=Medium \
-F goal=Growth \
-F reinvest_dividends=Yes \
-F 'return_method=Historical Average'A succeeded run carries its result and its output_files. Their URLs are signed for each read: re-read the run, never store a URL. A run still queued or running in the answer (after an hour, or when the API is busy) is read again at its Location with ?wait=true.
More
Keys, files, errors and limits: API access.