You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: book/src/commands/holding-safe-sell-list.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -30,6 +30,7 @@ The `safe_sell.max_stcg` setting in `ibctl.yaml` controls tolerance for short-te
30
30
| ACCOUNT | Account alias (only shown with `--separate-accounts`) |
31
31
| QTY | Total quantity across all sellable lots |
32
32
| QTY REMAINING | Quantity not included because the FIFO walk was stopped by a lot exceeding the STCG threshold. Zero means all lots for this symbol are sellable. |
33
+
| LTCG DATE | Date when all remaining lots will have been held >= 365 days and qualify as LTCG. Empty if there are no remaining STCG lots. |
33
34
| CURRENCY | Native currency of cost basis and market price |
34
35
| AVG PRICE | Weighted average cost basis per share in native currency |
35
36
| MKT PRICE | Current market price per share in native currency |
Shows positions with unrealized short-term capital gains — the inverse of `holding safe-sell list`. These are positions where selling would trigger STCG taxed at ordinary income rates. Use this to understand your STCG exposure and when each position's short-term lots will cross the 365-day threshold and become long-term.
8
+
9
+
## Account combining (IRS vs CRA)
10
+
11
+
By default, lots from all accounts for the same symbol are merged into a single FIFO queue sorted by date (IRS-correct for disregarded entities). Use `--separate-accounts` for CRA-style per-account FIFO.
12
+
13
+
## Columns
14
+
15
+
| Column | Description |
16
+
|--------|-------------|
17
+
| SYMBOL | Ticker symbol |
18
+
| ACCOUNT | Account alias (only shown with `--separate-accounts`) |
19
+
| QTY | Total quantity of lots with positive STCG |
20
+
| LTCG DATE | Date when all STCG lots will have been held >= 365 days and qualify as LTCG |
21
+
| CURRENCY | Native currency |
22
+
| MKT PRICE | Current market price per share (native currency) |
23
+
| MKT VAL {BASE} | Market value of the STCG lots (base currency) |
24
+
| STCG {BASE} | Total short-term capital gain (base currency) |
25
+
| CATEGORY | User-defined asset category from configuration |
26
+
| TYPE | User-defined asset type |
27
+
| SECTOR | User-defined sector classification |
28
+
| GEO | User-defined geographic classification |
29
+
30
+
`{BASE}` is replaced with the `--base-currency` value (e.g., `MKT VAL USD`, `STCG CAD`).
31
+
32
+
## Sort order
33
+
34
+
Results are sorted by LTCG date ascending (soonest to become long-term first).
35
+
36
+
## Totals row
37
+
38
+
The table output includes a totals row summing MKT VAL {BASE} and STCG {BASE}.
39
+
40
+
## Examples
41
+
42
+
```bash
43
+
# STCG exposure with real-time prices
44
+
ibctl holding unsafe-sell list --realtime
45
+
46
+
# Per-account FIFO (CRA-style), JSON output
47
+
ibctl holding unsafe-sell list --realtime --separate-accounts --format json
48
+
```
49
+
50
+
## Flags
51
+
52
+
| Flag | Default | Description |
53
+
|------|---------|-------------|
54
+
|`--dir`|`.`| The ibctl directory containing `ibctl.yaml`|
55
+
|`--format`|`table`| Output format: `table`, `csv`, or `json`|
56
+
|`--download`|`false`| Download fresh data before displaying |
57
+
|`--realtime`|`false`| Fetch real-time stock quotes and FX rates from Yahoo Finance |
58
+
|`--separate-accounts`|`false`| Apply FIFO independently per account (CRA-style) |
59
+
|`--base-currency`|`USD`| Base currency for value conversion (case-insensitive, e.g., `USD`, `CAD`) |
0 commit comments