Skip to content

Discussion: Accounting treatment of options trades #16

@antamy

Description

@antamy

As I have been using the application more extensively and loading it up with my trades this year, I have been struggling to make sense of the Monthly page. The data appears to be all over the place and inconsistent between the various panes, charts and tables, and I have not been able to reconcile to my parallel tracking spreadsheet.

I have worked with Claude to do some analysis and, whilst I don't have an overall solution yet to tighten up the numbers, one aspect of the business logic troubles me. In my mind, gains from selling options in a month come from the cash received for the sale of options minus cash spent to buy back options minus commissions. I don't count a gain as being when I close a position, so if it is opened one month, that's a gain, if I close it the following month that is an expense against gains that month (if I have to buy it back).

According to Claude, the code attributes the entire NET profit (premium minus exit price minus commissions) to the month the option was OPENED.

My method:
Month 1 (opened): Cash received = +premium (minus opening commission)
Month 2 (closed): Cash spent = -exitPrice (minus closing commission)

Current code's method:
Month 1 (opened): Net profit = +(premium - exitPrice - total commission)
Month 2 (closed): Nothing recorded

Example:
March: Sell put for $100 premium (commission $0.65)
April: Buy back for $25 (commission $0.65)

My expected accounting:
March: +$99.35 (cash in from sale minus commission)
April: -$25.65 (cash out to close minus commission)

Current code:
March: +$73.05 (net: $100 - $25 - $1.30 total commission)
April: $0

This is a fundamental difference in accounting method! The current code uses accrual-based "net profit when opened" vs my cash-based "cash flow by transaction month" approach.

When a trade spans multiple months, having the entire profit/loss attributed to the opening month makes it very confusing to track what actually happened each month. The core problem:

  • If you opened a put in March for $100 premium
  • Then closed it in April for $25
  • The current system shows March with +$73.05 profit (the net)
  • But April shows $0
  • So if you look at April wondering "what happened this month?", you won't see the -$25.65 cash outflow

This makes month-to-month analysis very difficult because:

  • Closed trades don't show up in the month they were closed
  • The net profit changes retroactively - if you close a March trade in April, March's numbers change
  • You can't see actual cash movements per month

Now, I haven't completely confirmed the analysis, but it does appear to be correct. I don't know whether this was a conscious design decision or maybe I just think about this differently to others. Would love to hear additional input on this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions