Start of work on 0.1.1 version, include fees for each transaction in CLI summary display
This commit is contained in:
parent
abb935f739
commit
75dbaf176f
5 changed files with 9 additions and 6 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -49,3 +49,4 @@ ENV/
|
||||||
|
|
||||||
# Environment variables
|
# Environment variables
|
||||||
.env
|
.env
|
||||||
|
u*-p*.sh
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
||||||
|
|
||||||
[project]
|
[project]
|
||||||
name = "kalshi-csv"
|
name = "kalshi-csv"
|
||||||
version = "0.1.0"
|
version = "0.1.1"
|
||||||
description = "Parse Kalshi transaction CSV files and generate IRS Form 8949 tax summaries"
|
description = "Parse Kalshi transaction CSV files and generate IRS Form 8949 tax summaries"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
__version__ = "0.1.0"
|
__version__ = "0.1.1"
|
||||||
|
|
||||||
from .parser import KalshiCSV
|
from .parser import KalshiCSV
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -33,18 +33,19 @@ def main():
|
||||||
|
|
||||||
print()
|
print()
|
||||||
print(
|
print(
|
||||||
f"{'Ticker':<32} | {'Side':<4} | {'Qty':<6} | {'Entry':<6} | {'Exit':<6} | {'P&L (No Fees)':<14}"
|
f"{'Ticker':<32} | {'Side':<4} | {'Qty':<6} | {'Entry':<6} | {'Exit':<6} | {'P&L (No Fees)':<14} | {'Fees':<6}"
|
||||||
)
|
)
|
||||||
print("-" * 83)
|
print("-" * 90)
|
||||||
|
|
||||||
for trade in kalshi.trades:
|
for trade in kalshi.trades:
|
||||||
pnl_str = format_currency_color(trade["pnl_no_fees"], no_color)
|
pnl_str = format_currency_color(trade["pnl_no_fees"], no_color)
|
||||||
|
fees = trade["open_fees"] + trade["close_fees"]
|
||||||
print(
|
print(
|
||||||
f"{trade['ticker']:<32} | {trade['side']:<4} | {trade['qty']:<6.2f} | "
|
f"{trade['ticker']:<32} | {trade['side']:<4} | {trade['qty']:<6.2f} | "
|
||||||
f"${trade['entry']:<5.2f} | ${trade['exit']:<5.2f} | {pnl_str:<14}"
|
f"${trade['entry']:<5.2f} | ${trade['exit']:<5.2f} | {pnl_str:<14} | ${fees:<5.2f}"
|
||||||
)
|
)
|
||||||
|
|
||||||
print("-" * 83)
|
print("-" * 90)
|
||||||
print(f"Total Transactions Parsed: {kalshi.summary['trade_count']}")
|
print(f"Total Transactions Parsed: {kalshi.summary['trade_count']}")
|
||||||
print(f"Total Exchange Fees Paid: ${kalshi.summary['total_fees']:.2f}")
|
print(f"Total Exchange Fees Paid: ${kalshi.summary['total_fees']:.2f}")
|
||||||
print(
|
print(
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@ def test_cli_runs_successfully(sample_csv):
|
||||||
assert "TESTMARKET-WIN" in result.stdout
|
assert "TESTMARKET-WIN" in result.stdout
|
||||||
assert "TESTMARKET-LOSS" in result.stdout
|
assert "TESTMARKET-LOSS" in result.stdout
|
||||||
assert "Total Transactions Parsed: 3" in result.stdout
|
assert "Total Transactions Parsed: 3" in result.stdout
|
||||||
|
assert "Fees" in result.stdout
|
||||||
|
|
||||||
|
|
||||||
def test_cli_irs_summary_output(sample_csv):
|
def test_cli_irs_summary_output(sample_csv):
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue