domain.enums.transaction_subtype¶
src.domain.enums.transaction_subtype
¶
Transaction subtype enumeration.
This module defines the specific transaction action classification. Part of the two-level classification system (Type + Subtype).
Classes¶
TransactionSubtype
¶
Bases: str, Enum
Specific transaction action within a type.
Subtypes provide granular detail while types provide broad categories. Not all subtypes are valid for all types - see valid combinations in architecture documentation.
Asset Class Note¶
Securities can be stocks, ETFs, options, futures, mutual funds, bonds, etc. The subtype does NOT specify asset class - that's captured in: - asset_type field (EQUITY, OPTION, MUTUAL_FUND, FIXED_INCOME, etc.) - symbol field (AAPL, AAPL230120C00150000 for options, etc.)
For options specifically: - BUY/SELL = opening or closing positions - EXERCISE = exercising an option contract - ASSIGNMENT = being assigned on a short option - EXPIRATION = option expired worthless
Source code in src/domain/enums/transaction_subtype.py
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 | |
Functions¶
trade_subtypes
classmethod
¶
Return subtypes for TRADE transactions.
Returns:
| Type | Description |
|---|---|
list[TransactionSubtype]
|
List of subtypes valid for TRADE type transactions. |
Examples:
Source code in src/domain/enums/transaction_subtype.py
transfer_subtypes
classmethod
¶
Return subtypes for TRANSFER transactions.
Returns:
| Type | Description |
|---|---|
list[TransactionSubtype]
|
List of subtypes valid for TRANSFER type transactions. |
Examples:
>>> TransactionSubtype.transfer_subtypes()
[TransactionSubtype.DEPOSIT, TransactionSubtype.WITHDRAWAL, ...]
Source code in src/domain/enums/transaction_subtype.py
income_subtypes
classmethod
¶
Return subtypes for INCOME transactions.
Returns:
| Type | Description |
|---|---|
list[TransactionSubtype]
|
List of subtypes valid for INCOME type transactions. |
Examples:
>>> TransactionSubtype.income_subtypes()
[TransactionSubtype.DIVIDEND, TransactionSubtype.INTEREST, ...]
Source code in src/domain/enums/transaction_subtype.py
fee_subtypes
classmethod
¶
Return subtypes for FEE transactions.
Returns:
| Type | Description |
|---|---|
list[TransactionSubtype]
|
List of subtypes valid for FEE type transactions. |
Examples:
>>> TransactionSubtype.fee_subtypes()
[TransactionSubtype.COMMISSION, TransactionSubtype.ACCOUNT_FEE, ...]