Time based currency for Ripple

197 views
Skip to first unread message

Alex Kotov

unread,
Apr 8, 2013, 5:05:47 AM4/8/13
to rippl...@googlegroups.com
Hello, 
I understood that Ripple.com allows to set additional currency. I am interested to use/develop time based currency as "hour of unskilled labor". How to make it, and how it will interfere with others: setting codes, exchange rates? How to keep exchange rate for it if it is not market based currency. Should i set gateway for it?
Looks like some "hours" already used in Ripple: HRS, XVR ets. What are the definition of them? How to find them?

Aleksandr Kotov
rH84UjwRV2jSfcKxAXpqioLjCFYStVEizV

Seth de l'Isle

unread,
Apr 8, 2013, 10:58:20 AM4/8/13
to rippl...@googlegroups.com
Hi Alex,

2013/4/8 Alex Kotov <aleksand...@gmail.com>:
> Hello,
> I understood that Ripple.com allows to set additional currency. I am
> interested to use/develop time based currency as "hour of unskilled labor".
> How to make it, and how it will interfere with others: setting codes,
> exchange rates? How to keep exchange rate for it if it is not market based
> currency. Should i set gateway for it?

I think you would only need a gateway to bridge to another network.

You can setup exchange offers within ripple for your unit.

> Looks like some "hours" already used in Ripple: HRS, XVR ets. What are the
> definition of them? How to find them?

It sounds like people are leaning toward HRS over XVH (where the VH
stands for village hour). I have extended some trust to you in HRS.
Jorge and I have a trust relationship in the same units. If others
want to switch to a new code, I'll come along with whatever everyone
else wants to use.

Thanks,
Seth

Alex Kotov

unread,
Apr 8, 2013, 5:26:18 PM4/8/13
to rippl...@googlegroups.com


Thank you. Gate is extra in this question.

It is good to clarify what is what in "time-business".
AFIK
XVH - more or less LETS currency in a way it has fixed value in other currency - abt. 10 USD
HRS - looks like Time Bank hour unit indifferentiable to skill, effort etc. (please, confirm or correct me)
I've been thinking on system to combine both: time measure and value.
"hour of unskilled labor" was found as crossing of these dimensions.
I call it - "CHE" - Common Hour Equivalent and as definition took "minimal wage" (which is coming from "living wage") generally it close to Terra, as a"basket" of industrial resources, but only for human - basket of goods of first needs.
detailed here - http://che-rocs.wikispaces.com/
http://en.wikipedia.org/wiki/List_of_minimum_wages_by_country

Thing is CHE has non-market value, and it is different from area to area. So, every "flat" eco-system has it own CHE-local: CHE-US, CHE-EU, CHE-UK.
And CHE, we can treat as average living wage on Earth or just as a fixed reference currency valued 10 USD or 1 XVH.

Now how to implement it i Ripple?
I can start set credit lines with CHE-UA for my Ukrainian friends, CHE-EU for European and CHE for business. - Checked, no rate was asked while setting such lines of credit. Strange, how Ripple can us this path for routing without knowing the rate of exchange?
So, I could not set desired course i have to maintained it by trade.
To set it in "Trade" issuer have to be set, for CHE (ok, it is me), and reference currency ie USD. Whom should I set as USD issuer?
Next, I should set orders for buying and selling. Ok, initially it could be the same rate
All this trade could happen if trust routes exist?
And who will need to use this trade if node balances in any currency will annihilate itself while opposite transactions happen?

Alex

Jorge Timón

unread,
Apr 8, 2013, 5:48:44 PM4/8/13
to rippl...@googlegroups.com
Hi, Alex.
Personally I'm using HRS as defined for villages, I will be using them
the same way, just in different systems:

"A Note About Hours

In Villages, one hour of acknowledgement is meant to represent one
hour of basic, unskilled labour, approximately equal in value to
minimum wage. Those offering skills to the community that have taken
years of work to develop can and should be acknowledged with multiple
acknowledgement-hours for each hour of their time given, according to
the value of what they have given in that time.

If you need a dollar value for hours, $10 is a good guideline."
https://villages.cc/about/how/

About how Ripple works...it will interpret the same three letter codes
as the same currency and use the rate 1:1 for all trust lines. If you
want different rates, you need to use offers.

For example, one could offer 100 CH1 for 150 CH2. The system can also
ripple through that offer.
If you want to use it for 2 local currencies for example with different units.

CH1:centralAddress1 could be the central account of community 1, which
all the members of community 1 trust and are trusted by.
The same for CH2:centralAddress2 and community 2.
Then CH1:centralAddress1 can offer 99.99 CH1 for 150 CH2
and CH2:centralAddress2 offer 149.99 CH2 for 100 CH1

That way the orders aren't filled and can be rippled by the actual
users of the two currencies.

The problem is that orders don't need to reference each other to be
filled and validators fill them themselves. But can be hacked with
tiny differences in the price as shown above.

If you're only interested in the units, but not the actual currencies
measured, I guess there's nothing to do other than chose a different 3
letter code for each one.

Jorge Timón

http://freico.in/
> --
> You received this message because you are subscribed to the Google Groups "Ripple Project" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to rippleusers...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>

Alex Kotov

unread,
Apr 11, 2013, 5:20:39 PM4/11/13
to rippl...@googlegroups.com
Thanks a lot, Jorge.

It was good to know that Minimal Hourly Wage becoming a standard.
For local groups, villages it will be more then enough. 
What to do with international trade, with countries where minimal hourly wages differs a lot?

With currencies:
if I start using HRS, CH1, CH2, etc. Will it monopolise these codes? - Think - will not. Everybody can add his offers on these currencies with his rates. So, Everybody can put his meaning in these currencies. If same code used differently by two not connected trust-networks it is not a problem. But when connection happen - could be some small mess.

Also it is interesting that trust in XRP not allowed by default. Can we make its clone, something like "RPL" and connect it to XRP 1:1?

A bit not clear -

For example, one could offer 100 CH1 for 150 CH2. The system can also
ripple through that offer.
If you want to use it for 2 local currencies for example with different units.
Wait, in first example - same units?  

CH1:centralAddress1 could be the central account of community 1, which
all the members of community 1 trust and are trusted by.
The same for CH2:centralAddress2 and community 2.
Then CH1:centralAddress1 can offer 99.99 CH1 for 150 CH2
and CH2:centralAddress2 offer 149.99 CH2 for 100 CH1

That way the orders aren't filled and can be rippled by the actual
users of the two currencies.

The problem is that orders don't need to reference each other to be
filled and validators fill them themselves. But can be hacked with
tiny differences in the price as shown above.

If you're only interested in the units, but not the actual currencies
measured, I guess there's nothing to do other than chose a different 3
letter code for each one.

I think i do not understand difference unit - actual currency. Unit - absolutely virtual fiat trust-network currency, and "actual currency" - currency connected to some external authority/recourse?

3 Letter code - a bit to short to make Hours for all countries. May be UKH for UK, EUH - for EU, USH for USA, etc?

Alex

Jorge Timón

unread,
Apr 12, 2013, 5:33:31 AM4/12/13
to rippl...@googlegroups.com
Yeah, the offers are always voluntary and have custom rates. I'm
talking about the direct trust lines between users. Even in that case,
there's must be a person who explicitly trusts HRS from one group with
one definition and at the same time accept HRS from another group with
another definition for something bad to happen. He could do it by
mistake though.
Although custom currencies are not supported yet, they plan to do it,
so what you want may be possible after all:

"
As the rules for various currencies are likely to be different, they
must be easily distinguishable. In particular, it would not do to have
multiple gold currencies named XAU. This would be particularly bad as
anyone holding multiple types could easily lose value due to automatic
rippling through their account.

The custom currency would allow a distinguishable custom currency to be issued.

Additionally, the instead of all having a the same confusing all be 3
letter name or various odd 3 letter currencies. Instead, they might
have names like: "opencoinAU".
"
From https://ripple.com/wiki/Gateway_demurrage

Take into account that the system won't enforce eny specific exchange
rate. The exchange rates must be explicitly set by the users through
trade offers.

About xrp, you're right, you can use another code for credit and then
make 1:1 offers on advanced -> trade.

About different hours, yes, you could use UKH, EUH, etc.

When I say units I refer to the three letter codes. When I say
currencies, I'm implying that the same unit issued by different
issuers are in fact different currencies.
For example, weexUSD and bitstampUSD are different currencies.
jtimonHRS and alexHRS are different currencies.
> --
> You received this message because you are subscribed to the Google Groups
> "Ripple Project" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to rippleusers...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>


--
Jorge Timón

http://freico.in/

Alex Kotov

unread,
Apr 14, 2013, 6:48:14 PM4/14/13
to rippl...@googlegroups.com
Tried set currency exchange for communities with different "minimal wages".
To avoid a lot of rates from each community currency to all others, I
choose to use cross-courses via USD, via "central" account.

So, we have:

Community1(Russia) - RUC with currency RUC (RU-CHE)    RUC/USD=1.02
Community2(Ukraine) - UAC with currency UAC (UA-CHE)     UAC/USD=0.86
(You see far it is from XVH/USD=10)
Account CHE as intermediary node for setting courses and routing local-CHEs.

Set RUC and USD trusts between Russia and CHE
and UAH and USD trusts between Ukraine and CHE.


Fist I thought that only account CHE need to make "Offers". Buy and Sell
offer of RUC for USD and UAC for USD. It is important choose right
"issuer". Issuer should be (guessing) the side sending units. (Please confirm or correct)
Strange, that finally no Path from Russia to Ukraine was found in any
local currency.

Later I add "Offers" from Russia(RUC) and Ukrane (UAC) 
CHE:


Russia(RUC):

and Ukraine(UAC):



- again "No Path"

To many pictures, because need to switch issuer to see all records in Order book 

Noted that sometimes "Orders book" does not refresh,- need to log out/in.
Also, sometimes "Buy" Offers appeared as "Sell"(with twisted rate) in "My
orders", sometimes - not.

Jorge Timón

unread,
Apr 22, 2013, 2:54:14 PM4/22/13
to rippl...@googlegroups.com
You don't need the CHE account. Each users is connected to its
community, and the communities directly trust and set offers between
each other currencies.

Community1(Russia) sells community1 RUC for community2 UAC (be sure to
get the issuers right)
Community2(Ukraine) sells community2 UAC for community1 RUC

Try to pay with somone Community1 trusts to someone that trusts Community2

I think this should work.
Although you may need a slightly different rate to avoid the orders to
fulfill each other.

Yes, the order book won't refresh correctly often.


On 4/15/13, Alex Kotov <aleksand...@gmail.com> wrote:
> Tried set currency exchange for communities with different "minimal wages".
> To avoid a lot of rates from each community currency to all others, I
> choose to use cross-courses via USD, via "central" account.
>
> So, we have:
>
> Community1(Russia) - RUC with currency RUC (RU-CHE) RUC/USD=1.02
> Community2(Ukraine) - UAC with currency UAC (UA-CHE) UAC/USD=0.86
> (You see far it is from XVH/USD=10)
> Account CHE as intermediary node for setting courses and routing
> local-CHEs.
>
> Set RUC and USD trusts between Russia and CHE
> and UAH and USD trusts between Ukraine and CHE.
>
> <https://lh3.googleusercontent.com/-_mhrqKPov0o/UWsvLM832yI/AAAAAAAAAzs/gRjwClBJXeE/s1600/CHE-RUC-UAC-trusts.png>
>
> Fist I thought that only account CHE need to make "Offers". Buy and Sell
> offer of RUC for USD and UAC for USD. It is important choose right
> "issuer". Issuer should be (guessing) the side sending units. (Please
> confirm or correct)
> Strange, that finally no Path from Russia to Ukraine was found in any
> local currency.
>
> Later I add "Offers" from Russia(RUC) and Ukrane (UAC)
> CHE:
>
> <https://lh5.googleusercontent.com/-6avQTjqWar8/UWsvkJ6Z0zI/AAAAAAAAAz0/zYXgZOKADjI/s1600/CHE-My+Orders.png>
>
> <https://lh6.googleusercontent.com/-sLF0dbjd-J4/UWsvv7qjI0I/AAAAAAAAAz8/8tHXX_2zhYw/s1600/CHE-Orders+book-RUC.USD-Base_cur_iss_CHE.png>
>
> <https://lh4.googleusercontent.com/-9fr4zTY0TAw/UWsv1ITUTYI/AAAAAAAAA0E/PA95fcAlubw/s1600/CHE-Orders+book-RUC.USD-Base_cur_iss_RUC.png>
>
> <https://lh5.googleusercontent.com/-xirdA56bAXI/UWsv8gD_YWI/AAAAAAAAA0M/hhDz8KHoUP0/s1600/CHE-Orders+book-UAC.USD-Base_cur_iss_CHE.png>
>
> <https://lh5.googleusercontent.com/-YE23l98zQUs/UWswCWxUWjI/AAAAAAAAA0U/1AsD06XRCMw/s1600/CHE-Orders+book-UAC.USD-Base_cur_iss_UAC.png>
> Russia(RUC):
>
> <https://lh4.googleusercontent.com/-w9aOP1_e3GM/UWswVNT4-CI/AAAAAAAAA0c/e3Cg3ZzoPKU/s1600/RUC-MyOrders.png>
>
> <https://lh5.googleusercontent.com/-zY-N36YdM4g/UWswczDa9GI/AAAAAAAAA0k/e9Cg3B8AixI/s1600/RUC-Order+book-RUC.USD-Base_cur_iss_CHE.png>
>
> <https://lh6.googleusercontent.com/-3880gQ2QG9I/UWswjcAd8CI/AAAAAAAAA0s/Yu8lo75IPYc/s1600/RUC-Order+book-RUC.USD-Base_cur_iss_RUC.png>
> and Ukraine(UAC):
>
> <https://lh3.googleusercontent.com/-BrAskGJL0mk/UWswuXLSRxI/AAAAAAAAA00/RuIeizJzF94/s1600/UAC-My+Orders.png>
>
> <https://lh6.googleusercontent.com/-vMZD-N7QmSw/UWsw2RwVFUI/AAAAAAAAA08/G8_Vh_62Alw/s1600/UAC-Order+book-UAC.USD-Base_cur_iss_CHE.png>
>
> <https://lh4.googleusercontent.com/-1ks3iuYv3_Q/UWsw6uWu8DI/AAAAAAAAA1E/Guizn3QwjK8/s1600/UAC-Order+book-UAC.USD-Base_cur_iss_UAC.png>
>
>
> - again "No Path"
>
> <https://lh4.googleusercontent.com/-dhDqpwuNt0M/UWsxAlnyTVI/AAAAAAAAA1M/0sSNpQ_5_Zc/s1600/RUC-UAC-No_path.png>
>
> <https://lh4.googleusercontent.com/-e9mdv36i1fY/UWsxFaE3rjI/AAAAAAAAA1U/zJXjisyc7Ew/s1600/UAC-RUC-No_path.png>
> To many pictures, because need to switch issuer to see all records in Order
>
> book
>
> Noted that sometimes "Orders book" does not refresh,- need to log out/in.
> Also, sometimes "Buy" Offers appeared as "Sell"(with twisted rate) in "My
> orders", sometimes - not.
>

Alex Kotov

unread,
Apr 22, 2013, 3:53:02 PM4/22/13
to rippl...@googlegroups.com
Yes, Jorge, it is extra node, but less work.
If we have X communities. On one hand it is better to have one extra high level node and 4*X Offers, then do not use it and to have (2*(X-1))^2 offers. To update all exchanging rates will take a lot of time. On another hand it is a bit risky to have all dependent from one node.
The original Ripple exchanging scheme could be better for this case.
I hope when they complete custom currency addon, something could be simplified in exchanges.

Tested scheme User1-Loc.community1-Loc.community2-User2 - not working
Joel replied: "We have two issues that sometimes cause payments not to find paths they should. They're high priority issues for us and we hope to have them fixed within a few days."

Jorge Timón

unread,
Apr 22, 2013, 4:29:13 PM4/22/13
to rippl...@googlegroups.com
Ok, then the central node accepts trusts them all but doesn't make any
offer. Each community makes its offers in exchange for the central
one. In this case they need to sell their own for the central one and
also the other way around. To do that, they need to buy the central
currency in advance.
But by setting this central node you're also implying that all
communities trust each other and cannot choose for how much to each
other community.
I think the central node approach is actually more complicated.
>> > email to rippleusers...@googlegroups.com <javascript:>.

Alex Kotov

unread,
Apr 22, 2013, 5:02:22 PM4/22/13
to rippl...@googlegroups.com


On Monday, April 22, 2013 11:29:13 PM UTC+3, Jorge Timón wrote:
Ok, then the central node accepts trusts them all but doesn't make any
offer. Each community makes its offers in exchange for the central
one. In this case they need to sell their own for the central one and
also the other way around. To do that, they need to buy the central
currency in advance.
That is what i tried in test. Central node used just USD. 
Community buying USD and selling own currency, and Central node selling USD and buying Locals.
Do you mean offers from Central node are not necessary at all?
But by setting this central node you're also implying that all
communities trust each other and cannot choose for how much to each
other community.
Yes, and even local-to local model need community authority to decide home much to trust to other community. This is going waste p2p advantages of ripple.
and also members from different communities could not (properly) use direct trust lines, because they use their local currency.  
I think the central node approach is actually more complicated.
I think it necessary to ask some new futures to let one node create currency, define its rate to nationals and others could just accept this and use it.
It looks like way of Ripple.com is too much P2P )), it is of course a big possibilities for each node to be a broker, but does anybody need it to be  24/7?

Jorge Timón

unread,
Apr 23, 2013, 4:00:59 AM4/23/13
to rippl...@googlegroups.com
On 4/22/13, Alex Kotov <aleksand...@gmail.com> wrote:
>
>
> On Monday, April 22, 2013 11:29:13 PM UTC+3, Jorge Timón wrote:
>>
>> Ok, then the central node accepts trusts them all but doesn't make any
>> offer. Each community makes its offers in exchange for the central
>> one. In this case they need to sell their own for the central one and
>> also the other way around. To do that, they need to buy the central
>> currency in advance.
>>
> That is what i tried in test. Central node used just USD.
> Community buying USD and selling own currency, and Central node selling USD
>
> and buying Locals.
> Do you mean offers from Central node are not necessary at all?

Yes. The central node would give the same amount of USD to each
community (or something like that) in advance.

>> But by setting this central node you're also implying that all
>> communities trust each other and cannot choose for how much to each
>> other community.
>>
> Yes, and even local-to local model need community authority to decide home
> much to trust to other community. This is going waste p2p advantages of
> ripple.

This is why I don't like the central node.

> and also members from different communities could not (properly) use direct
>
> trust lines, because they use their local currency.

This may be possible with the custom currencies I've talked you about
before. In any case, users can always simulate trust lines with
offers.

>> I think the central node approach is actually more complicated.
>>
> I think it necessary to ask some new futures to let one node create
> currency, define its rate to nationals and others could just accept this
> and use it.

They plan to implement the custom currencies. But fixed rates are not
necessary and are in fact an edge case that I don't think would be
very useful.

> It looks like way of Ripple.com is too much P2P )), it is of course a
> big possibilities for each node to be a broker, but does anybody need it to
>
> be 24/7?

The point is to enable all features for all users and then let the
users decide what subset they want to use. Again, take into account
that what you want to do is a very particular case and will not be the
norm. Still, you can model your system with what's currently
implemented.

Here's another solution for your system:

1) Everybody uses the same value standard for an hour, say USH.

2) All the participants calculate how many "USH are the hours worth in
their country",

When russians trade an hour, they pay 1.02 HRS instead of 1 RUC
When people want to trade with hours in Ukraine, people pay 0.86 HRS
instead of 1 UAC.

This way everythin becomes simpler. Communities can use trust lines
directly with each other and everybody is talking in the same units.
If I want to buy some Russian lessons through the internet to a
Russian, he can set his price as "1.02 HRS per class hour" instead of
"1 RUC per class hour", and I don't need any conversion.
Isn't this better at all lights?

Sorry, but I still don't understand why arbitrary (and unfair IMO)
minimum wage laws should be relevant at all for voluntary
international trades.
If I want, say, some lessons and people from Argentina and Germany
offer them, I just want to now what each one can offer and their
prices. I don't care about the wages in their respective countries at
all. Why should I care?

Alex Kotov

unread,
Apr 27, 2013, 6:08:43 PM4/27/13
to rippl...@googlegroups.com
My idea  is what we all living in systems with a different rate of "life" circulation. Nature, economy etc make this. Same like in Relativist theory - In all systems time runs normaly when everybody look on their own system, and and in others looks like time goes faster or slower. Every body could use its natural time measure and its common for all systems when you are live in. 
Same as with a time zones, we all do not need  to live on GMT, we all could live in natural time orientation. To understand others time we must find the way how it relies to our. 
In every system there is a living wage - set of resources need to survive - this is universal measure (but looks different from others systems) same as second in Universe.
If we choose "foreign" measure we will always have problem on local prices, because "time difference"  between systems are not constant. 

"If I want, say, some lessons and people from Argentina and Germany 
offer them, I just want to now what each one can offer and their 
prices. I don't care about the wages in their respective countries at 
all. Why should I care? "
but you always like to not how much is "their price" in you price scale. 
we used to live in USD or EUR - what has no definite meaning in space and time.

tried check routing with conversion without offers from central node - no path
probably still not fixed issue or i do something wrong. Did you tested yourself routing via offers? I could not make it anyhow.

Jorge Timón

unread,
Apr 29, 2013, 11:18:20 AM4/29/13
to rippl...@googlegroups.com
On 4/28/13, Alex Kotov <aleksand...@gmail.com> wrote:
> My idea is what we all living in systems with a different rate of "life"
> circulation. Nature, economy etc make this. Same like in Relativist theory
> - In all systems time runs normaly when everybody look on their own system,
>
> and and in others looks like time goes faster or slower. Every body could
> use its natural time measure and its common for all systems when you are
> live in.
> Same as with a time zones, we all do not need to live on GMT, we all could
>
> live in natural time orientation. To understand others time we must find
> the way how it relies to our.
> In every system there is a living wage - set of resources need to survive -
>
> this is universal measure (but looks different from others systems) same as
>
> second in Universe.
> If we choose "foreign" measure we will always have problem on local
> prices, because "time difference" between systems are not constant.

Oh, so because it's all relative and natural, we need to sit some
experts to set fixed conversion rates between countries?

> "If I want, say, some lessons and people from Argentina and Germany
> offer them, I just want to now what each one can offer and their
> prices. I don't care about the wages in their respective countries at
> all. Why should I care? "
> but you always like to not how much is "their price" in you price scale.
> we used to live in USD or EUR - what has no definite meaning in space and
> time.

Yes, you only need to know that, so you just need to look at market
prices for your currency and the merchant's currency, whatever which 2
countries are.
If hours from my local time bank in Cáceres are traded 1.5:1 for
another hour's currency in Madrid, but are traded at 1:1 for a third
time bank in Berlin, I think those are the prices I'm going to get
when I buy from each place no matter what the CHE definition or
minimum wages laws in each country say.

> tried check routing with conversion without offers from central node - no
> path
> probably still not fixed issue or i do something wrong. Did you tested
> yourself routing via offers? I could not make it anyhow.

Sorry, I didn't tried myself.
If you think there's a bug, please, report it here:

https://github.com/rippleFoundation/ripple-client/issues
Reply all
Reply to author
Forward
0 new messages