1
0
crypto-tax/crypto_tax/__main__.py

51 lines
1.1 KiB
Python
Raw Normal View History

2024-12-14 22:38:06 +00:00
import sys
import requests
import fin_depo
from . import secrets
from fin_defs import CryptoCurrency, AssetAmount, MPC, Asset, USDT
from decimal import Decimal
from collections import deque
from fin_depo.data import *
import datetime
import dataclasses
2024-12-22 05:10:23 +00:00
import logging
from . import compute_tax
2024-12-14 22:38:06 +00:00
KUCOIN_CLIENT = fin_depo.defi_kucoin.KucoinDepoFetcher(
secrets.KUCOIN_KEY,
secrets.KUCOIN_SECRET,
secrets.KUCOIN_PASS,
)
2024-12-22 05:03:47 +00:00
KRAKEN_CLIENT = fin_depo.defi_kraken.KrakenDepoFetcher(
secrets.KRAKEN_KEY,
secrets.KRAKEN_SECRET,
)
2024-12-22 05:10:23 +00:00
def main():
"""Main function."""
2024-12-14 22:38:06 +00:00
2024-12-22 05:10:23 +00:00
logger = logging.getLogger('crypto_tax')
logger.setLevel('INFO')
2024-12-14 22:38:06 +00:00
2024-12-22 05:10:23 +00:00
TRANSFERS = list(KRAKEN_CLIENT._get_double_registers())
#TRANSFERS += list(KUCOIN_CLIENT._get_double_registers())
tax_report = compute_tax(TRANSFERS)
2024-12-14 22:38:06 +00:00
2024-12-22 05:10:23 +00:00
logger.info('-'*80)
2024-12-14 22:38:06 +00:00
2024-12-22 05:10:23 +00:00
for bas in tax_report.bought_and_sold_for:
logger.info(f'{bas.amount} ({bas.time_bought} ----> {bas.time_sold})')
2024-12-14 22:38:06 +00:00
2024-12-22 05:10:23 +00:00
for c, prices in tax_report.current_assets.items():
logger.info('%s', c)
logger.info('%s', prices)
2024-12-14 22:38:06 +00:00
if __name__ == '__main__':
main()