And yes I mean to say --date here, was a typo

> bean-price --update --update-rate daily --data 2020-10-26 -e
> USD:coinbase/BTC-USD



On Sun, 10 Jan 2021 at 20:23, Ghanashyam Prabhu <[email protected]> wrote:

> Hi Vivek, I am currently exploring beancount to track an investment
> portfolio. In this example, I want to track buy/sell transactions of BTC
> from Coinbase.
> I exactly do not understand the various switches that beanprice utility
> provides.
>
> I plan to use bean price to populate a prices.db file which I plan to
> include in the beancount file and later use to track the value of the
> portfolio at different times. Is this a workflow that can be achieved with
> beancount?
>
> What exactly does the --update option do if my beancount file already has
> transactions made at corresponding prices in USD. Below is an example from
> my beancount file
> 2020-10-31 * "Buy BTC at Coinbase"
>   Assets:US:Crypto:Coinbase:BTC           0.03528803 BTC {} @ 14169.11 USD
>   Assets:US:BofA:Checking                    -500.00 USD
>
> 2020-11-03 * "Buy BTC at Coinbase"
>   Assets:US:Crypto:Coinbase:BTC           0.03598271 BTC {} @ 13895.56 USD
>   Assets:US:BofA:Checking                    -500.00 USD
>
> Regarding the combination of using --update AND --date, Per the
>> documentation, the way I have things setup is that when --update is used,
>> it will "Fetch prices from most recent price for each source up to present
>> day or specified --date" . So in this scenario it will look at the last
>> date fetched and fill in the gaps up till the specified date (2020-10-26).
>> If you already have a price after 2020-10-26 it's not going to do anything.
>
> Can you point me to this documentation that describes the behavior of the
> bean-price utility? Also where are the prices stored? Is that in cache? Can
> I use it to populate an explicit file?
>
> Thank you for taking time to go through my (lengthy) query.
>
> Ghanashyam
>
> On Sun 10 Jan, 2021, 19:24 [email protected], <[email protected]> wrote:
>
>> I'll be honest I haven't had time to use beancount or run the latest, but
>> looking briefly at the code there's a few things that comes to mind:
>>
>>
>>    - I wasn't expecting one to use the --update feature without a
>>    beancount file (i.e. how you're using -e). --update was really meant for a
>>    workflow with an existing beancount file, where there's dates defined
>>    around the commodity and prior prices and transactions to help figure out.
>>
>>    Is this a use case you see yourself regularly using? I know earlier I
>>    considered changing things to have a specified --start-date and --end-date
>>    but that would've likely broken how so many others already use bean-price
>>    in conjunction with a basic shell script to grab multiple prices. Another
>>    option is to just mock up a beancount file with the initial commodity 
>> entry
>>    date (e.g. "2020-10-26 commodity BTC") then run bean-price --update (no
>>    --date needed).
>>
>>    - "--data" - just as a sanity check I assume you meant "--date" here.
>>
>>    - Regarding the combination of using --update AND --date, Per the
>>    documentation, the way I have things setup is that when --update is used,
>>    it will "Fetch prices from most recent price for each source up to present
>>    day or specified --date" . So in this scenario it will look at the last
>>    date fetched and fill in the gaps up till the specified date (2020-10-26).
>>    If you already have a price after 2020-10-26 it's not going to do 
>> anything.
>>
>>
>>
>> -Vivek
>>
>>
>>
>> On Sunday, January 10, 2021 at 2:40:43 PM UTC-8 [email protected] wrote:
>>
>>> Apologies for the trivial question. I re-installed the latest beancount
>>> and beanprice from the repository using
>>>
>>> sudo pip3 install git+
>>> https://github.com/beancount/beancount#egg=beancount
>>> sudo pip3 install git+
>>> https://github.com/beancount/beanprice#egg=beanprice
>>>
>>> With this I do see --update-rate switch when I run bean-price -h
>>> However, I could not figure out the switch combinations to use to get a
>>> dump of the price on a specific range
>>>
>>> An example that I tried out is here
>>> bean-price --update --update-rate daily --data 2020-10-26 -e
>>> USD:coinbase/BTC-USD
>>>
>>> Please suggest the correct command to fetch prices from a date (say
>>> 2020-10-26) to present day.
>>>
>>> Thanks
>>> Ghanashyam
>>>
>>>
>>> On Sun, 20 Dec 2020 at 12:27, Martin Blais <[email protected]> wrote:
>>>
>>>> Merged.
>>>>
>>>> beancount (master):
>>>>
>>>> https://github.com/beancount/beancount/commit/00c0b71fb03c074be08ad10f709c9b6f7e99aa70
>>>>
>>>> beanprice:
>>>>
>>>> https://github.com/beancount/beanprice/commit/f1bcfea1c217c460ef419e05aa7b9ab2dff0bab2
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Sun, Dec 20, 2020 at 1:42 PM [email protected] <[email protected]>
>>>> wrote:
>>>>
>>>>> Thanks Martin!
>>>>>
>>>>> On Sunday, December 20, 2020 at 10:31:52 AM UTC-8 [email protected]
>>>>> wrote:
>>>>>
>>>>>> Had a quick look; updating the branch in v2 isn't trivial (I deleted
>>>>>> and revived beanprice during the move by accident).
>>>>>> I'll merge manually the changes to ops/lifetimes.py and create a new
>>>>>> change in the new repo.
>>>>>>
>>>>>>
>>>>>> On Sun, Dec 20, 2020 at 1:20 PM Martin Blais <[email protected]> wrote:
>>>>>>
>>>>>>> Vivek, the repository has moved to
>>>>>>> https://github.com/beancount/beanprice
>>>>>>> Would you like to resubmit it there?
>>>>>>>
>>>>>>>
>>>>>>> On Sun, Dec 20, 2020 at 12:48 PM [email protected] <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Hi Ghanashyam,
>>>>>>>> Yes, during the migration from bitbucket to github Martin Blais
>>>>>>>> moved it to
>>>>>>>> https://github.com/beancount/beancount/tree/pr128_seltzered_beanpriceupdate
>>>>>>>> . It hasn't been reviewed/accepted yet, but perhaps it could be 
>>>>>>>> updated so
>>>>>>>> it's easier to consider again. I haven't had time to touch beancount 
>>>>>>>> this
>>>>>>>> year so that is the latest commit.
>>>>>>>>
>>>>>>>> On Saturday, December 19, 2020 at 11:27:13 PM UTC-8
>>>>>>>> [email protected] wrote:
>>>>>>>>
>>>>>>>>> Hi Vivek, Do you have this update? The bitbucket link is not
>>>>>>>>> available anymore. Curious if this feature was ever reviewed and 
>>>>>>>>> accepted,
>>>>>>>>> seems like a very good feature
>>>>>>>>>
>>>>>>>>> On Sunday, 19 January 2020 at 21:33:06 UTC-8 [email protected]
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Hi Andrzej! Nice to hear you're interested in the price update
>>>>>>>>>> feature. There was some discussion between me and Johannes Harms 
>>>>>>>>>> late last
>>>>>>>>>> year in a related issue ( 
>>>>>>>>>> https://bitbucket.org/blais/beancount/issues/329/bean-price-support-fetch-over-range-of
>>>>>>>>>> )  We may want to continue discussion there - last thing we were
>>>>>>>>>> looking into was optimizing how a bunch of historical prices are 
>>>>>>>>>> fetched.
>>>>>>>>>>
>>>>>>>>>> I honestly don't know how the review process works for beancount,
>>>>>>>>>> I've just been using my own fork in the meantime, so a script like 
>>>>>>>>>> Justus
>>>>>>>>>> uses may be a better solution for your needs.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Sunday, January 19, 2020 at 6:46:09 PM UTC-8, Justus Pendleton
>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>> On Monday, January 20, 2020 at 5:14:13 AM UTC+7, Andrzej wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Alternatively, does anyone know if there a tool that does
>>>>>>>>>>>> something similar but is outside of beancount main repository? 
>>>>>>>>>>>> (I'm not a
>>>>>>>>>>>> fan of maintaining my own fork of beancount for this patch)
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Vivek mentioned in his original post that people wrote their own
>>>>>>>>>>> scripts, so you could just do that. Depending on what you want, it 
>>>>>>>>>>> isn't
>>>>>>>>>>> especially complicated. Here's one I had for when I wanted to 
>>>>>>>>>>> populate the
>>>>>>>>>>> price map with historical data.
>>>>>>>>>>>
>>>>>>>>>>> If uses gdate because I usually run it on a mac. If you wanted
>>>>>>>>>>> to update prices weekly instead of daily, just change the "+ 1 day" 
>>>>>>>>>>> to
>>>>>>>>>>> something else.
>>>>>>>>>>>
>>>>>>>>>>> #!/bin/bash -e
>>>>>>>>>>>
>>>>>>>>>>> DATE=gdate
>>>>>>>>>>>
>>>>>>>>>>> if [ -z $1 ]; then
>>>>>>>>>>>   echo "Must supply start date, e.g. 1983-05-22"
>>>>>>>>>>>   exit 1
>>>>>>>>>>> else
>>>>>>>>>>>   from=$1
>>>>>>>>>>> fi
>>>>>>>>>>>
>>>>>>>>>>> if [ -z $2 ]; then
>>>>>>>>>>>   to=$(${DATE} -I)
>>>>>>>>>>> else
>>>>>>>>>>>   to=$2
>>>>>>>>>>> fi
>>>>>>>>>>>
>>>>>>>>>>> d=$from
>>>>>>>>>>> while [ "$d" != "$to" ]; do
>>>>>>>>>>>   echo Fetching prices on $d...
>>>>>>>>>>>   bean-price --date $d my.beancount >> prices.beancount
>>>>>>>>>>>   d=$(${DATE} -I -d "$d + 1 day")
>>>>>>>>>>> done
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>> 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 on the web visit
>>>>>>>> https://groups.google.com/d/msgid/beancount/b471b460-1e64-47f1-91a0-4aba5789aa59n%40googlegroups.com
>>>>>>>> <https://groups.google.com/d/msgid/beancount/b471b460-1e64-47f1-91a0-4aba5789aa59n%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 on the web visit
>>>>> https://groups.google.com/d/msgid/beancount/d52cdaea-f55e-49b7-b543-8fdac7fb9823n%40googlegroups.com
>>>>> <https://groups.google.com/d/msgid/beancount/d52cdaea-f55e-49b7-b543-8fdac7fb9823n%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 on the web visit
>>>> https://groups.google.com/d/msgid/beancount/CAK21%2BhPG%2B5-9rfzu93GCRXaKVi865D4bhABfiZVXNOCut9LsYg%40mail.gmail.com
>>>> <https://groups.google.com/d/msgid/beancount/CAK21%2BhPG%2B5-9rfzu93GCRXaKVi865D4bhABfiZVXNOCut9LsYg%40mail.gmail.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 on the web visit
>> https://groups.google.com/d/msgid/beancount/224355f3-4f1e-4047-a3fd-5d556d41077dn%40googlegroups.com
>> <https://groups.google.com/d/msgid/beancount/224355f3-4f1e-4047-a3fd-5d556d41077dn%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 on the web visit 
https://groups.google.com/d/msgid/beancount/CABieCERMeSZXkPACu9zVqRYGkMqFjKL5XXV383Lj1hyMWC-vQg%40mail.gmail.com.

Reply via email to