Below you will find a list of properties and statements available when building tax preset rules. For general information, see Tax Presets. For programming basics, see Programmable Presets.
Table of Contents
Properties
Properties can be used in conditions (If statements) and expressions to access information about the current tax event.
Dates
- Date: Date of the taxable transaction
- Settled Date: Settlement date (T+1 or T+2 depending on market)
- Open Date: Date when the position was originally opened
- Open Settled Date: Settlement date of the opening transaction
- Days: Number of days between opening and closing the position
Values
- Expense: Cost basis including opening fees (settable)
- Revenue: Proceeds from sale or income received (settable)
- Fees: Transaction fees
- Value: Net value of the transaction
- Tax Paid: Withholding tax already paid, e.g., on dividends (settable)
Expense already includes the original purchase cost plus all fees. You can modify Expense and Revenue with Set statements before applying tax.Tax Event
- Tax Type: Type of event -
Buy,Sell,Dividend,Other, orCapital
Use this to apply different rules:
- Buy - Acquiring assets (usually not taxed, tracks cost basis)
- Sell - Disposing of assets (capital gains/losses)
- Dividend - Income from dividends, interest, or rent
- Other - Miscellaneous income or expenses
- Capital - Scheduled capital/wealth tax events
Position
- Owed or Short?: True if this is a short position or owed asset
Asset
- Asset: The asset being transacted
- Asset Domicile: ISO country code of the asset's domicile (e.g.,
US,GB) - Asset Country (name): Full country name of the asset's domicile
- Asset Type: Type of asset (Stock, ETF, Crypto, Bond, etc.)
- Asset Tags: Tags assigned to the asset
Asset Domicile to apply different withholding tax rates based on where the asset is registered.Account
- Account: The account holding the position
- Account Country: ISO country code of the account
- Account Country (name): Full country name of the account
- Account Tags: Tags assigned to the account
Market
- Market: The market where the asset is traded
- Market Country: ISO country code of the market
- Market Country (name): Full country name of the market
Tags
- Tags: Combined tags from position configuration
- Transaction Tags: Tags assigned to the specific transaction
Transaction Details
- Transaction Type: Buy, Sell, Dividend, Transfer, etc.
- Transaction Currency: Currency used in the transaction
- Transaction Currency Type: Asset type of the currency (Fiat, Crypto)
- Transaction Expense: Expense from this specific transaction
- Transaction Revenue: Revenue from this specific transaction
- Transaction Fee: Fee from this specific transaction
- Transaction Tax Paid: Tax paid on this specific transaction
- Transaction Value: Value of this specific transaction
Options
These properties are available when tracking stock options:
- Option Position?: True if this is an options position
- Option Type: Call or Put
- Option Exercised: True if the option was exercised
- Option Expiring: True if the option expired worthless
Tax Groups
- Tax Group: Current tax group for accumulation
- Tax Accumulation Group: Group used for accumulating totals
- Tax Period Year: The tax year (numeric)
Statements
Statements control the flow of tax calculations.
Select Tax Period
Sets which tax year this event belongs to. By default, uses the transaction date.
Use case: When event should be taxed in a different year than it occured (e.g., at settlement date).
Select Tax Group
Groups tax events together for reporting. Events in the same group accumulate together in the Taxes Due Report.
Use case: Separate capital gains from dividends, or group by asset domicile.
Example group names:
Capital GainsDividends/USDividends/EUCapital Gains/Long-term
Groups can be nested using / - the report will show them hierarchically.
Add Note
Adds a note that appears in the Taxes Due Report for this transaction.
Use case: Document why a specific tax treatment was applied, or add reference information for your accountant.
Apply Tax
Applies a flat tax rate to the current income. Current revenue , expense , and tax values will be accumulated at the currently selected tax group.
Formula: Tax = Rate × (Revenue - Expense)
This statement ends processing for this tax event. Only one Apply Tax statement will execute per event.
Apply Progressive Tax
Applies graduated tax brackets to the income. Current revenue , expense , and tax values will be accumulated at the currently selected tax group. All accumulated income so far will be used to select a proper threshold.
Parameters:
- Brackets: List of income thresholds and corresponding rates
- Other Income (optional): Additional income to consider when determining the bracket
Use case: Countries with progressive capital gains tax rates.
Forward Tax if Opened
If the position is still open (e.g. dividend was reinvested, or option was exercised), forwards the tax event's expense to when the position is eventually closed.
Use case: Jurisdictions that only tax realized gains, not paper gains.
Schedule Capital Tax
Creates periodic capital/wealth tax events based on position value.
Parameters:
- Day: Day of month for the event
- Month: Month for the event
- Interval: How often to create events (e.g.,
1yfor yearly) - Nested statements: Rules to apply to the capital tax events
Use case: Wealth taxes like Netherlands Box 3 or Norway wealth tax.
ACB Settings
When using Average Cost Basis, these preset-level settings control averaging behavior. See Cost Basis Methods for more details.
ACB Asset Types
Which asset types use average cost pooling:
- Stocks
- ETFs
- Funds
- Bonds
- Crypto
Assets not listed use individual lot tracking.
ACB Pooling
- Asset: Single average cost across all accounts (Canada-style)
- Asset + Account: Separate average per account (UK/Germany-style)
ACB Variant
- Standard: Normal weighted average calculation
- UK: Section 104 holding with same-day and 30-day matching rules
Tips
- Start with snippets - Use built-in snippets from the Add Statement menu
- Use Tax Groups - Organize output to match your tax form sections
- Add Notes - Document logic with Comments and add Notes for audit trails
- Test thoroughly - Review the Taxes Due Report after changes
- Check examples - See the built-in presets, or simply clone them