I got it working thank you in any case.

I might continue this thread in the future if needed.

Thanks.

On Monday, November 20, 2017 at 9:14:54 AM UTC-2, Vonpupp wrote:
>
> Thank you for your fast reply Martin,
>
> My objective by using beancount on crypto is to be able to track profit 
> and losses. Eventually I trade and I would like to be able to record that 
> also. I guess this falls into the speculative investment category. I have 
> looked up in the forum and in fact I build this test file from that.
>
> I could sketch a rough version of a module that is able to fetch the 
> values:
>
> (.env3) > $ bean-price -e USD:coinmarketcapsource/ETH --no-cache
> 2017-11-20 price ETH                    
> 358.93000000000000682121026329696178436279296875 USD
>                                                                           
>       
> (.env3) > $ bean-price -e USD:coinmarketcapsource/NEO --no-cache 
> 2017-11-20 price NEO                    
> 40.57000000000000028421709430404007434844970703125 USD
>                                                                           
>       
> (.env3) > $ bean-price -e USD:coinmarketcapsource/GAS --no-cache 
> 2017-11-20 price GAS                    
> 24.309999999999998721023075631819665431976318359375 USD
>
> What it is still not clear is how this ties up to have a general overview 
> of the portfolio. From what I understood on the the bean-price 
> documentation, I should be able to do something like:
>
> (.env3) > $ bean-price portfolio.beancount
>
> And expect something to happen but nothing happens. Could you please point 
> me into the right direction?
>
> Thank you very much.
>
>
> On Monday, November 20, 2017 at 4:24:07 AM UTC-2, Martin Blais wrote:
>>
>> Search the mailing-list for bitcoin or BTC, you'll find related 
>> discussions.
>>
>> Generally the problem with tracking bitcoins with Beancount is that 
>> Bitcoins tend to be used BOTH as a speculative "investment" and as a 
>> currency (e.g., to buy things).
>> If you want to think of it like an investment you want to track cost 
>> basis to compute returns... which makes it more difficult to use as a 
>> currency.
>> If you use it like a currency,  then you don't use cost basis but then 
>> you can't compute returns against USD (*) or your home currency.
>> Anyhow, there's no great solution that buys you the best of both worlds.
>> To be frank, there hasn't been much thought on making this a first-class 
>> use case, Bitcoin is still very much an experiment, and personally I think 
>> the blockchain has no future in its incarnation as a currency (but that is 
>> a much longer discussion). Beancount does work for it, but as mentioned, 
>> the best compromise is to segregate the accounts where you hold it for 
>> value speculation and the accounts where you might use it against 
>> expenses... separate accounts, one which tracks returns, the other which 
>> doesn't.
>>
>> As far as creating your own price fetcher, you have to use the source, 
>> there isn't much of it and it's all under here:
>> https://bitbucket.org/blais/beancount/src/tip/beancount/prices/
>>
>>
>>
>>
>> (*) Maybe one day I'll implement the "currency accounts" method 
>> automatically so you can have a bit of tracking of profits without 
>> explicitly entering cost basis, at least in aggregate. I mean this: 
>> http://www.mathstat.dal.ca/~selinger/accounting/tutorial.html
>>
>>
>> On Sun, Nov 19, 2017 at 7:24 PM, Vonpupp <[email protected]> wrote:
>>
>>> Hi,
>>>
>>> Congratulations on beancount. I am new to it but I think it is an 
>>> amazing software, therefore I would like to take the most advantage of it. 
>>> This is actually my first message on the forum.
>>>
>>> I would like to use beancount with cryptocurrencies. I have may doubts 
>>> but I prefer to take one step at a time. What I would like to be able to do 
>>> first is to be able to see the my portfolio value at the present time. For 
>>> instance, let's assume the following file:
>>>
>>> ; -*- mode: org; mode: beancount; coding: utf-8; fill-column: 400; -*-
>>> ;
>>> ; Cheatsheet
>>> ; 
>>> https://docs.google.com/document/d/1M4GwF6BkcXyVVvj4yXBJMX7YFXpxlxo95W6CpU3uWVc/edit
>>>
>>> option "title" "Crypto"
>>> option "operating_currency" "ETH"
>>> option "operating_currency" "GAS"
>>> option "operating_currency" "LTC"
>>> option "operating_currency" "NEO"
>>>
>>> plugin "beancount.plugins.book_conversions" 
>>> "Assets:Crypto:ETH,Income:Capital-gains"
>>>
>>> ;* Equity
>>> ;2017-11-01 open Equity:Opening-Balances
>>>
>>> * Account declarations
>>> ; Account1
>>> 2017-08-18 open Assets:Crypto:ETH:Account1             ETH
>>> 2017-08-18 open Assets:Crypto:LTC:Account1             LTC
>>> ; Account2
>>> 2017-08-18 open Assets:Crypto:ETH:Account2             ETH
>>> ; Exchange
>>> 2017-08-18 open Assets:Crypto:GAS:Exchange             GAS
>>> 2017-08-18 open Assets:Crypto:NEO:Exchange             NEO
>>>
>>> 2017-08-18 open Expenses:Crypto:ETH:Balance            ETH
>>> 2017-08-18 open Expenses:Crypto:GAS:Balance            GAS
>>> 2017-08-18 open Expenses:Crypto:LTC:Balance            LTC
>>> 2017-08-18 open Expenses:Crypto:NEO:Balance            NEO
>>>
>>> * Income
>>> 2017-08-18 open Income:Capital-gains
>>>
>>> * Expenses
>>> 2017-08-18 open Expenses:Financial:Commisions:USD
>>>
>>> * Transactions
>>> 2017-11-19 * "Opening balance: Account1"
>>>     Assets:Crypto:ETH:Account1                5.12561083 ETH
>>>     Assets:Crypto:LTC:Account1                7.58990978 LTC
>>>     Expenses:Crypto:ETH:Balance              -5.12561083 ETH
>>>     Expenses:Crypto:LTC:Balance              -7.58990978 LTC
>>>
>>> 2017-11-19 * "Opening balance: Account2"
>>>     Assets:Crypto:ETH:Account2                3.968560 ETH
>>>     Expenses:Crypto:ETH:Balance              -3.968560 ETH
>>>
>>> 2017-11-19 * "Opening balance: Exchange"
>>>     Assets:Crypto:NEO:Exchange                4 NEO
>>>     Assets:Crypto:GAS:Exchange                0.18651499 GAS
>>>     Expenses:Crypto:NEO:Balance              -4 NEO
>>>     Expenses:Crypto:GAS:Balance              -0.18651499 GAS
>>>
>>> I am not experienced with accounting and english is not my primary 
>>> language, but I guess the file is in "accounting good shape" and it makes 
>>> sense somehow. If not please let me know.
>>>
>>> Now let's go to the point. Assuming that file I would like to be able to 
>>> issue a command on the command line and be able to see the portfolio in USD 
>>> or EUR at the present time value. I can query most of the coins using a pip 
>>> package, the question is, how I do that? I have read the "Prices in 
>>> Beancount" [1] google docs file, however there is no example and it would 
>>> be very useful to grasp a bit better how everything ties up. Is there any 
>>> example of fetcher module so I can build mine on top of it? Or if you are 
>>> aware of any module for prices that works with crypto that I could use out 
>>> of the box it would be even better.
>>>
>>> Please note that each coin might be on an exchange account or in a 
>>> wallet (account1 or account2). I would like to get the overview of this 
>>> sum, for instance when I refer to "ETH" I would like to see as it appears 
>>> on the balance, but at the current USD or EUR price, and so for the other 
>>> currencies.
>>>
>>> From what I understood about the prices document, the prices will be 
>>> fetched and saved on the beancount file automatically. I would like to do 
>>> this automatically on a weekly basis, so I guess cron is my friend here. I 
>>> guess it is wise to use a separated file and link them together somehow.
>>>
>>> I would also like (if possible) to have this on a web interface like 
>>> fava or similar if possible. I guess this might work automatically once the 
>>> prices are correctly fetched.
>>>
>>> Could you please point me into the right directions to get all these 
>>> things working properly?
>>>
>>> Thank you very much.
>>>
>>> [1]: 
>>> https://docs.google.com/document/d/1thYRAMell_QT1Da1F_laprSs6BlROZjyK_h3V8qHW9c/edit
>>>
>>> -- 
>>> 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 post to this group, send email to [email protected].
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/beancount/88c1a28b-28ed-47fe-8a6d-489823f24bd0%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/beancount/88c1a28b-28ed-47fe-8a6d-489823f24bd0%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>

-- 
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 post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beancount/2db952e0-eceb-4d11-8f02-fd5179d5fa15%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to