Zum Inhalt springen

Kostenbasis-Methoden

Unterstützte Methoden

MethodeIDLandHinweise
First In, First OutFIFO🌍Älteste Lots zuerst (IRS-Standard)
Last In, First OutLIFO🌍Specific ID erforderlich (IRS)
Highest In, First OutHIFO🌍Specific ID erforderlich (IRS)
Specific IDSPECIFIC_ID🌍Manuelle Lot-Auswahl
Germany FIFOGERMANY_FIFO🇩🇪§23 EStG, 1-jährige Haltedauer steuerfrei
PMPAPMPA🇫🇷Gewichteter Durchschnitt (Frankreich)
Total AverageTOTAL_AVERAGE🌍Durchschnittliche Kostenbasis
UK Share PoolingUK_SHARE_POOLING🇬🇧Section 104 Pool + 30-Tage-Regel
AU CGT DiscountAU_CGT_DISCOUNT🇦🇺FIFO + 50 % Rabatt auf langfristige Gewinne (ATO s.115)
CA ACBCA_ACB🇨🇦Gewichteter Adjusted Cost Base (CRA IT-387R2)
KR Virtual AssetKR_VIRTUAL_ASSET🇰🇷FIFO; 22 % Pauschalsatz + 2,5 Mio. KRW Freibetrag (Berichtsebene)
IN VDAIN_VDA🇮🇳FIFO; Verluste nicht abzugsfähig (s.115BBH)
ES CGTES_CGT🇪🇸FIFO; gestaffelter Steuersatz 19–27 % (Berichtsebene)

IRS-Hinweis

Der IRS erlaubt FIFO und Specific Identification für Krypto (Rev. Rul. 2023-14). LIFO und HIFO sind technisch gesehen Specific-ID-Strategien — Sie müssen Aufzeichnungen auf Lot-Ebene führen und Ihre Methode konsequent anwenden.

Verwendung

import { computeGains, compareAllMethods } from '@dtax/tax-engine';
// Single method
const result = computeGains(transactions, {
method: 'FIFO',
taxYear: 2024,
});
// Compare all comparable methods (excludes SPECIFIC_ID)
const comparison = compareAllMethods(transactions, 2024);
comparison.forEach(({ method, totalGain, recommendation }) => {
console.log(`${method}: $${totalGain} ${recommendation ? '← recommended' : ''}`);
});

Ergebnis-Struktur

interface GainResult {
shortTermGain: number;
longTermGain: number;
totalGain: number;
disposals: Disposal[];
unrealizedGain?: number;
}