Thank you, I'll get that a try. Appreciate your time and help with this. 
Hope you enjoy your travels.

-Alex
On Saturday, June 21, 2025 at 11:30:51 AM UTC-7 Martin Blais wrote:

> If you remove the "NONE" booking method that works.
> I'm guessing - would have to look in code, can't do that now, am traveling 
> - that when booking is disabled that the total units rule does not apply.
>
> On Sat, Jun 21, 2025 at 1:45 PM Alex Kaufman <[email protected]> wrote:
>
>> I am trying to get it to work with that minimal beancount example before 
>> I try it in my personal ledger. This is the whole test beancount ledger. 
>> The error occurs in the transfer transaction with the message "Too many 
>> missing numbers for currency group 'USD'" 
>>
>> option "operating_currency" "USD"
>>
>> 2024-01-01 open Assets:BankAccount
>> 2024-01-01 open Equity:Opening-Balances
>>
>> 2024-01-02 pad Assets:BankAccount Equity:Opening-Balances
>> 2024-01-03 balance Assets:BankAccount 100 USD
>>
>> 2024-12-31 open Assets:Broker1:STOCK "NONE"
>> 2024-12-31 open Assets:Broker2:STOCK
>>
>> 2025-01-01 * "invest 1"
>>   Assets:Broker1:STOCK 10.00 STOCK {1.00 USD}
>>   Assets:BankAccount -10.00 USD
>>
>> 2025-01-02 * "invest 2"
>>   Assets:Broker1:STOCK 10.00 STOCK {2.00 USD}
>>   Assets:BankAccount  -20.00 USD
>>
>> 2025-01-03 * "transfer"
>>   Assets:Broker1:STOCK -20.00 STOCK {}
>>   Assets:Broker2:STOCK 20.00 STOCK {USD}
>>
>> This is the bean-doctor output. It looks like in the Unbooked 
>> transactions section it is not resolving the transaction with the total 
>> number of units. 
>>
>> On Saturday, June 21, 2025 at 8:57:22 AM UTC-7 Martin Blais wrote:
>>
>>> What's in your inventory prior to the transaction? 
>>> I bet it has postings that are either not at cost (an input error).
>>> Use bean-doctor context to resolve those issues.
>>>
>>>
>>> On Fri, Jun 20, 2025 at 7:06 PM Alex Kaufman <[email protected]> wrote:
>>>
>>>> Thank you for the help here. It sounds like the most straightforward 
>>>> option for transferring accounts with average cost booking without 
>>>> realizing nonexistent profit or changing the cost basis then is the final 
>>>> option you mentioned.
>>>>
>>>> I attempted the following transaction and receive an error "Too many 
>>>> missing numbers for currency group 'USD'" .  
>>>>
>>>> 2025-01-03 * "transfer"
>>>>   Assets:Broker1:STOCK -20.00 STOCK {}
>>>>   Assets:Broker2:STOCK 20.00 STOCK {USD}
>>>>
>>>> On Friday, June 20, 2025 at 7:57:39 AM UTC-7 Martin Blais wrote:
>>>>
>>>>> On Fri, Jun 20, 2025 at 6:47 AM Alex Kaufman <[email protected]> 
>>>>> wrote:
>>>>>
>>>>>> Hello, I have been reading through docs and trying to make heads or 
>>>>>> tails of how to do this operation. Recently I consolidated retirement 
>>>>>> accounts. As part of this process my holdings were transferred over 
>>>>>> directly from one account to the other. I am sure I am misunderstanding 
>>>>>> something but I have been testing various methods for a while and cannot 
>>>>>> figure out the right way to approach this problem. Any recommendations 
>>>>>> for 
>>>>>> ways to reframe the problem or think about it differently instead of 
>>>>>> just 
>>>>>> accomplishing the immediate goal are welcome and encouraged.
>>>>>>
>>>>>> It may be as simple as my misunderstanding price/cost or the cost and 
>>>>>> market value views in fava. I could also be drastically over 
>>>>>> complicating 
>>>>>> things. Thank you all in advance for your help! Below is an initial 
>>>>>> state 
>>>>>> beancount file to provide a minimal example. I have also included two 
>>>>>> examples of some potential transfer transactions to append to the setup 
>>>>>> file and the reasons why they dont really work. 
>>>>>>
>>>>>> Broker1 is set up as "NONE" bookkeeping due to the way the broker 
>>>>>> provided statements. This was a major motivator for migrating to 
>>>>>> Broker2. 
>>>>>>
>>>>>> option "operating_currency" "USD"
>>>>>>
>>>>>> 2024-01-01 open Assets:BankAccount
>>>>>> 2024-01-01 open Equity:Opening-Balances
>>>>>>
>>>>>> 2024-01-02 pad Assets:BankAccount Equity:Opening-Balances
>>>>>> 2024-01-03 balance Assets:BankAccount 100 USD
>>>>>>
>>>>>> 2024-12-31 open Assets:Broker1:STOCK "NONE"
>>>>>> 2024-12-31 open Assets:Broker2:STOCK
>>>>>>
>>>>>> 2025-01-01 * "invest 1"
>>>>>>   Assets:Broker1:STOCK 10.00 STOCK {1.00 USD}
>>>>>>   Assets:BankAccount -10.00 USD
>>>>>>
>>>>>> 2025-01-02 * "invest 2"
>>>>>>   Assets:Broker1:STOCK 10.00 STOCK {2.00 USD}
>>>>>>   Assets:BankAccount  -20.00 USD
>>>>>>
>>>>>> *Example 1:*
>>>>>>
>>>>>> 2025-01-03 * "transfer"
>>>>>>   Assets:Broker1:STOCK -10.00 STOCK {}
>>>>>>   Assets:Broker2:STOCK 10 STOCK
>>>>>>
>>>>>> Here is one attempt I have tried. It sort of works in that there are 
>>>>>> no errors shown in fava but in the cost and market value views it doesnt 
>>>>>> convert to USD. 
>>>>>>
>>>>>
>>>>> Here it doesn't know what to do; Do you want to exchange dollars?  
>>>>> You're only saying STOCK units on the second posting.
>>>>> This gets resolved as
>>>>>
>>>>> 2025-01-03 * "transfer"
>>>>>   Assets:Broker1:STOCK -20.00 STOCK {USD}
>>>>>   Assets:Broker2:STOCK 20 STOCK {{40.00 USD}}
>>>>>
>>>>> (Use the "bean-doctor context" command)
>>>>> Regardless, this input is incorrect.
>>>>>
>>>>>  
>>>>>
>>>>>>
>>>>>> [image: Screenshot 2025-06-19 at 9.50.10 PM.png]
>>>>>>
>>>>>> Example 2: 
>>>>>>
>>>>>> 2025-01-03 * "transfer"
>>>>>>   Assets:Broker1:STOCK -20.00 STOCK {USD}
>>>>>>   Assets:Broker2:STOCK 20 STOCK {{40.00 USD}}
>>>>>>
>>>>>>
>>>>>> Another attempt I have made is to change the transfer according to 
>>>>>> the syntax defined in github issue 476 
>>>>>> <https://github.com/beancount/beancount/issues/476>. If I do not 
>>>>>> specify the cost of the stock in broker 2 I get an error stating the 
>>>>>> transaction is not balanced. However if I do specify the current 
>>>>>> price/cost 
>>>>>> of the stock it seems to show that there has been a $10 negative balance 
>>>>>> to 
>>>>>> Broker 1. In the MarketValue view this shows correctly.. 
>>>>>>
>>>>>
>>>>> But you don't have $40 of cost basis. You have $30 of cost basis. Try 
>>>>> with that (which is correctd).
>>>>> It will resolve as
>>>>>
>>>>> 2025-01-03 * "transfer"
>>>>>   Assets:Broker1:STOCK  -10.00 STOCK {1.00 USD, 2025-01-01}  ; 
>>>>> -10.0000 USD
>>>>>   Assets:Broker1:STOCK  -10.00 STOCK {2.00 USD, 2025-01-02}  ; 
>>>>> -20.0000 USD
>>>>>   Assets:Broker2:STOCK   20.00 STOCK {1.50 USD, 2025-01-03}  ;   
>>>>>  30.00 USD
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>  
>>>>>
>>>>>>
>>>>>>
>>>>>> [image: Screenshot 2025-06-19 at 9.59.39 PM.png]
>>>>>>
>>>>>> Example 3: 
>>>>>>
>>>>>> 2025-01-03 * "transfer"
>>>>>>   Assets:Broker1:STOCK -20.00 STOCK {} @ 2.00 USD
>>>>>>   Assets:Broker2:STOCK 20.00 STOCK {{40.00 USD}}
>>>>>>   Income:Investment -10.00 USD
>>>>>>
>>>>>> This option resolves the confusion in both the cost and market value 
>>>>>> views. However now we are including a sort of fake income that we havent 
>>>>>> actually realized.
>>>>>>
>>>>>
>>>>> No. You're realizing the profit here and erroneously stepping up your 
>>>>> cost basis to $40.
>>>>> This is what it resolves to:
>>>>>
>>>>> 2025-01-03 * "transfer"
>>>>>   Assets:Broker1:STOCK  -10.00 STOCK {1.00 USD, 2025-01-01} @ 2.00 USD 
>>>>>  ; -10.0000 USD
>>>>>   Assets:Broker1:STOCK  -10.00 STOCK {2.00 USD, 2025-01-02} @ 2.00 USD 
>>>>>  ; -20.0000 USD
>>>>>   Assets:Broker2:STOCK   20.00 STOCK {2.00 USD, 2025-01-03}           
>>>>>   ;    40.00 USD
>>>>>   Income:Investment     -10.00 USD                                     
>>>>>  ;   -10.00 USD
>>>>>
>>>>>  
>>>>>
>>>>>> It also requires that we know the exact amount of that income because 
>>>>>> leaving the specific value blank to try to soak up any income results in 
>>>>>> the error Too many missing numbers for currency group 'USD',  In my 
>>>>>> case I dont know the exact income value for each of the stocks coming 
>>>>>> over 
>>>>>> from broker1 to broker 2 because it is a retirement account and is 
>>>>>> basically using average bookkeeping. 
>>>>>>
>>>>>>
>>>>>> If you're not selling you want to avoid realizing _any_ income.
>>>>> You want to close all the postings in the account prior to the 
>>>>> transaction.
>>>>> You can either list all the postings using "bean-doctor context" and 
>>>>> copy them over, or, use the total number of units, which should 
>>>>> unambiguously resolve to all the postings.
>>>>>
>>>>> 2025-01-03 * "transfer"
>>>>>   Assets:Broker1:STOCK -20.00 STOCK {}
>>>>>   Assets:Broker2:STOCK 20.00 STOCK {USD}
>>>>>
>>>>> resolves to
>>>>>
>>>>> 2025-01-03 * "transfer"
>>>>>   Assets:Broker1:STOCK  -10.00 STOCK {1.00 USD, 2025-01-01}  ; 
>>>>> -10.0000 USD
>>>>>   Assets:Broker1:STOCK  -10.00 STOCK {2.00 USD, 2025-01-02}  ; 
>>>>> -20.0000 USD
>>>>>   Assets:Broker2:STOCK   20.00 STOCK {1.50 USD, 2025-01-03}  ; 
>>>>>  30.0000 USD
>>>>>
>>>>>
>>>>> On the opening sice, if you want to replicate all the same postings, 
>>>>> you could do this instead:
>>>>>
>>>>> 2025-01-03 * "transfer"
>>>>>   Assets:Broker1:STOCK                -10.00 STOCK {1.00 USD, 
>>>>> 2025-01-01}
>>>>>   Assets:Broker1:STOCK                -10.00 STOCK {2.00 USD, 
>>>>> 2025-01-02}
>>>>>   Assets:Broker2:STOCK                 10.00 STOCK {1.00 USD, 
>>>>> 2025-01-01}
>>>>>   Assets:Broker2:STOCK                 10.00 STOCK {2.00 USD, 
>>>>> 2025-01-02}
>>>>>
>>>>>
>>>>>
>>>>>  
>>>>>
>>>>>
>>>>>
>>>>>  
>>>>>
>>>>>>   
>>>>>>
>>>>>> -- 
>>>>>> You received this message because you are subscribed to the Google 
>>>>>> Groups "Beancount" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>> send an email to [email protected].
>>>>>> To view this discussion visit 
>>>>>> https://groups.google.com/d/msgid/beancount/d798059c-af75-4622-b5c8-adb0a7666154n%40googlegroups.com
>>>>>>  
>>>>>> <https://groups.google.com/d/msgid/beancount/d798059c-af75-4622-b5c8-adb0a7666154n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>> .
>>>>>>
>>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "Beancount" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>>
>>> To view this discussion visit 
>>>> https://groups.google.com/d/msgid/beancount/c5781530-b8fd-48be-921f-8b96bb13d9c0n%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/beancount/c5781530-b8fd-48be-921f-8b96bb13d9c0n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Beancount" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>>
> To view this discussion visit 
>> https://groups.google.com/d/msgid/beancount/23b5de54-f44e-4f6d-9993-8e8c0f12476en%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/beancount/23b5de54-f44e-4f6d-9993-8e8c0f12476en%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Beancount" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/beancount/4c792cbe-c308-4639-bff3-a6a181f569dfn%40googlegroups.com.

Reply via email to