Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - starspirit

Pages: 1 [2] 3 4 5 6 7
16
We are all constantly debating over the best form for bitAssets to take. We are all trying to have our voice heard as to what we think is the best structure. So why not let us put in place whatever structure we like?

There are people in this community that have skills to design and develop all sorts of block-chain based equivalents to CFDs, futures, options, ETFs, prediction markets etc. So instead of trying to funnel this through a resource constrained core development team, with bytemaster acting as the queue master, could we do something like the following:

- Allow Designers to design and develop code templates for different classes of instrument, that operate to different rules,
- Promoters can use these templates to specify their particular parameters, pay a fee to have it accepted into the core bitShares code, and pay a fee to the Designer

Privatised bitAssets will allow anybody to take the bitAsset template and reset the parameters how they like. The above approach extends this to any class or form we can imagine, so that we can build new markets.

I personally believe that we have all been somewhat obsessed by trying to find the perfect bitAsset structure (and especially currency structure) that will suit everybody's needs and wants. But such a structure does not exist. Instead we need to realise that there are many possible structures, just as there are in the traditional financial environment, that each meet different needs and purposes. What I'm looking for here is a way to make that happen more effectively and faster, rather than the current process of trying to force a million pigs through the poor old python (or choosing one pig from the million). I'm not a coder/developer, so others may have better ideas on how such a goal could be implemented.

Not sure how clear this is, hopefully you get the gist.

17
bytemaster and others interested,

*** The Short Version ***

I'm proposing an approach to bitAssets, for assets not intended as currencies, that is more like a traditional exchange-traded fund (ETF). This would be like holding the real asset, but where the underlying number of units changes gradually over time according to a market-determined funding rate, that could be positive or negative. Due to 2-way arbitrage, the tracking token would tend to centre around fair value, while still having some spread for liquidity.

I'm looking for interest in the concept, as a possible alternative to BTA 2.0 for these types of assets, with a view to writing up a full design concept for further review.

**** Longer Version ***

It seems to me that there are different goals for tokens to be used as currency in goods and services transactions (bitUSD, bitCNY etc) versus tokens that are intended to simply behave like holding and storing an asset (e.g. oil or other commodities, stocks and stock indices, etc). This suggests that the optimal structure for each class may also be different.

bytemaster, you seem to be taking the bitAsset 2.0 design along the path of having a continuous premium to parity to accommodate a cut to payment facilitators when currencies are used with merchants. As you know, I am not sold on this yet, but we can take this up in the other thread. In any case, I believe this line of reasoning has no relevance to the second class of tokens above, which will never be used for goods and services.

I believe that the most useful design in these cases is something similar to the way that exchange-traded funds (ETFs) behave. An ETF allows investors to receive the performance of the underlying assets held in the fund. That includes any earnings or costs associated with the holding of those assets. To the extent those earnings are reinvested, or expenses paid from the assets of the fund, the effective number of units of the underlying asset per share in the ETF varies over time. But that does not matter to the investor. What matters to them is that the returns on the fund are a near perfect proxy for having held the assets themselves.

I've designed a concept that constructs a bitAsset to behave in this manner, although of course its construction is by necessity different to an ETF, representing decentralised trades between parties rather than a security on a fund. The structure could even be used for currencies, as long as investors are buying as an investment exposure rather than for use in transactions. That's because there is a market-determined funding rate that adjusts the number of notional asset units of exposure per token over time, whether positive or negative. That is, its not a fixed exposure to the asset. The funding rate is determined by supply and demand, but these in turn will have at least some regard to external funding rates (or interest rates on currencies), providing an external linkage.

For non-transactional holdings, I think this structure is favourable to bitAsset 2.0 because it centres around the fair value of the underlying asset instead of at a premium, and arbitrage mechanisms act as a compressing force around the peg. This will give investors and traders exactly what they are looking for. [Edit: It also may pay a reinvested yield, just like the underlying asset, where net yields are positive in the external market].

I would like to know whether you would like to collaborate further on this concept if you see it fitting into the core BitShares protocols, and how to take forward. It still requires peer review, and no doubt some refinement. Interested in your view and that of anybody else interested in this approach.

18
[Edit: I need to think more on this idea, not sure if it is actually a good idea or not yet]

Dan (& others), here is another idea that may affect the way you plan to implement price feeds and settlements. I know there is a mooted change with price feeds taking account of liquidity in some way, but not clear what this is yet.

In principle, a bitUSD that has the same purchasing power as a real USD should only be able to settle for as many BTS as could be bought in the external market. This implies that the settlement price should have a sliding scale that varies with the size of the settlement being requested, and this scale might vary over time according to the market depth on the ask/sell side of BTS in the external market.

Anybody settling $1 gets settled at the external mid-market price of BTS. $100000 would require paying a premium for the BTS. In this way, whale bitUSD holders cannot claim strategic stakes in BTS without paying up for it as they would in external markets.

Its also not possible for settling parties to manipulate the external BTS price to seek more a more favourable settlement price. If they try to sell BTS down by taking out bids this has no direct impact on the sell side of the market. If other sellers follow this lead and drop their asking prices, their ask prices will likely still be higher than where the manipulator was forced to sell. If the manipulator had the power to spark a self-fulfilling cycle of panicked selling from other market participants that pushed the price down even further, then they would make more profit waiting to get hit on lower bids than to settle bitUSD at the asks, which is effectively like crossing the spread a second time. In practice though, I would still probably have a 24 hour non-cancellable delay on settlements to ensure minimum opportunity to take advantage of short term market aberrations not reflected in the current scale.

With this approach, there might be no need to limit the size of settlements. This would be self-reinforcing for any whales that wanted to obtain a better price by splitting their settlements. It also means settlers don't need to wait long periods before other settlements are filled. There would also be no need to change the price feed from the mid-price to something based around higher liquidity like $100000. Small settlers would still get the usual price feed (and so still maintain a bid close to parity with a real USD in the external market), while larger settlements incur a fair price based on the scale.

Just throwing this one around for thoughts.

[Edit: This approach may need to be modified to allow for situations where there are hordes of simultaneous small settlements, which should also ideally require a higher premium. I've got an idea on this too, but would like to discuss above as a principle first, even though it may not be perfect.]

19
Its time we lost a lot of our old thinking and look differently at what our offering can provide to the world. Its time we stopped talking about bitAssets as CFDs (of which its only a mutated version anyway). There is no need to invoke the requirement that currency is created by speculative shorts. There is no need for all currencies and assets to be based on a one-size-fits-all bitAsset structure. They had a place once, but the external world does not care for and may even fear these technical curiosities. It wants familiar and better services offering greater freedom and flexibility. BitAssets are so much more than these things, and thinking of them in this way is heavily constraining their required evolution, and our path to self-funding profitability.

What is a bitUSD? Its a transferable token that represents a collateralised USD loan to a set of borrowers. Anybody can borrow in bitUSD, for any purpose, by providing acceptable digital collateral (*i). Anybody can use their borrowing as a margin loan if they choose to buy other digital assets, including BTS (*ii). Anybody can use the funds for market-making income by switching between bitUSD and real USD(*iii). Anybody can use the transferable token as a substitute USD.

The bond market (to come) is a way to lend and borrow USD at different terms. Again these USD funds can be used for any purpose as long as collateral is provided (*iv).

Combined, these services provide competition against Bitfinex, Poloniex, and others, with the advantages of eliminating exchange risk, allowing general purpose loans, and allowing loan receipts to be used as a substitute stable currency.

The trading exchange (to come) is a way to take margined positions on speculative assets. These can either be done in derivative form (expiry of instruments) or traditional CFD form (with an intermediary taking a spread). But the current BitAsset structure is not ideal for these instruments and needs to be discarded (*v). For a start, bitUSD should be the currency of denomination, not BTS. This service would compete against every asset exchange in the world with the advantage of eliminating exchange risk and lowering costs.

Unshackle the existing bitAsset paradigm, and suddenly we may see whole new ways to compete and earn profit. I see the potential for a more rewarding roadmap. It's not constant and evolves. But I think a roadmap on the services we are striving to offer is critical to making the right choices about our product design.

(*i Self-create a bitUSD by depositing the required collateral, sell the bitUSD for real USD funds)
(*ii Want leverage to BTS? Use the real USD funds to buy more BTS. Or why not BTC or LTC or DASH....)
(*iii Self-create bitUSD, sell bitUSD for real USD at premium, buy back at discount, etc)
(*iv Self-create a bond by depositing the required collateral, sell the bond for bitUSD or real USD funds).
(*v Require bitUSD deposit/margin accounts, leverage and long/short symmetry.)

20
We always talk of shorts as being BTS bulls getting leverage to BTS.

Instead we can promote BTS widely as a way to obtain general purpose loans. Anybody that holds BTS can use it to self-create bitUSD (as one example), then swap that bitUSD for real USD to use for any purpose they desire. That works particularly well I think if the collateral requirement is reduced as proposed.

In effect, somebody is using their BTS as collateral to borrow up to 50% of that value for whatever they like. To repay the loan they use real USD to buy bitUSD and self-cancel their loan.

[They have to be careful in managing collateral though to avoid getting called].

21
General Discussion / A Generalised Approach to Yield on BitAssets
« on: May 16, 2015, 11:27:04 pm »
[Edit 18 May: After I wrote this OP, I have continued to work on it toward an improved approach. I hope to write that up also in the next few days.]

Here is a yield approach that could be applied to just about any type of bitAsset, so is largely independent of the exact form bitAssets ultimately take. This yield mechanism could also be added at any time, if it were desired to test with a no-yield option first. However despite the added complexity, I would prefer to incorporate yield from the outset to better manage supply and demand.

Basic Approach

- all shorts must specify and maintain a maximum interest rate they are willing to pay to longs (the "max rates")
- at any time, there is a single floating rate paid from all shorts to all longs ("the market rate")
- by construction the market rate is always equal to (or lower - see below) than the lowest of the max rates
- forced short covers other than margin calls, aimed at mitigating bitAsset discounts, are prioritised from lowest max rate to highest max rate
- shorts are able to change their max rates at any time, and new shorts created, subject to not being less than a rate determined by the market rate

The result of this is that bitAsset discounts are always removed through a combination of reduced supply and higher rates. This moderates supply changes compared to relying on the supply adjustment alone.

Managing yield fluctuation

Ultimately, if markets were very liquid, and bond market yields were available to provide a comparison to the (zero-term) market rate, then yield fluctuation would be fairly smooth. In immature markets however, the rate that perfectly calibrates supply and demand is likely to gap up or down and add to yield uncertainty. It may be best initially to find a happy medium even if it takes longer to reach parity, as long as that parity is still assured. These restrictions could be gradually loosened over time as markets get more liquid:

- set a daily lower bound and upper bound on the market rate, being the prior days' rate +/- X% (for example 0.25%, or higher rate to be determined)
- when forced short covers occur, the market rate would effectively rise X% per day until reaching the lowest max rate
- changes to max rates, and max rates on new shorts, cannot be less than the lower bound
- its also possible to lower the market rate X% per day while there is a bitAsset premium (though this may not be necessary if shorts follow down the lower bound)
- the X% limit could be expanded if the bitAsset is a long way from the peg

Dealing with Negative Yields (Payments Longs to Shorts)


In situations where external interest rates in the underlying currency are very low, and supply falls short of demand (both of which we have currently for USD), the natural market rate is likely to be negative. A negative rate would then be necessary to remove bitAsset premiums and guarantee a return to parity. Assuming we wished to incorporate negative yields (an open question), below are a couple of possible ways to deal with this, though developer input would be required on what's feasible:

1. Use a variable transaction fee on bitAsset movements that reflects accrued negative interest paid to the shorts

2. Establish a DEPOSIT token that represents a varying number of bitAsset units as interest accrues in either direction, and create a checking facility denominated in bitAssets that settles as a transfer of DEPOSIT tokens between the parties

Integration with the Bond Market

BitAssets with a yield can be thought of as units being held on deposit. When they are switched to the bond market, they give up the at-call yield in return for the yield offered on the bonds.

22
For consideration, this is a possible alternative to forced settlement in the internal bitUSD:BTS market that could offer the following benefits if it stacks up:

- no internal forced settlement and no opportunity for BTS market manipulation
- supply reduction is triggered directly by discounts in the primary bitUSD:USD market
- forced short covers get a demonstrably fair market price
- it could facilitate a natural buy wall in the bitUSD:USD market (and sell wall, if use yield)
- the voluntary act of self-creation could be the only action that requires a feed from the BTS market

I haven't thought long down this track, so it could fall down somewhere...please attack!

Basic concept

1. No forced settlement of longs, and no constraints on buyers, sellers or shorts in the internal bitUSD:BTS market

2. On any day the ask in the external bitUSD:USD market falls below 1:1, this instantly triggers a block of shorts to be selected for calling (this could be done on yield or collateral). The size of the block could conceivably depend on the level of discount, size of ask orders etc.

3. When such a block of shorts is selected, 24 hour notice is put to the market that a sale of collateral for bitUSD will occur. This gives ample notice for shorts, bargain-hunters, arbitragers etc to prepare for the sale, to get the most effective settlement terms for selected shorts. Shorts in the block could cover before that if desired.

4. At the 24 hour mark, any still uncovered shorts in the block have their collateral sold automatically for bitUSD to cancel their short

5. Each day, as long as the ask in the bitUSD:USD market is below parity, further short blocks will be covered until the ask returns back to or over parity. This guarantees "settlement" and a return to parity as long as there are some willing holders.

How settlement is enabled

I've been a big proponent of the need for longs to be able to force settlement in order to underpin valuation of bitUSD, and thereby minimise discounts to the peg. But maybe this doesn't need to happen in the internal market, where one needs to carefully design some rules so that BTS prices cannot be easily manipulated to force more favourable settlement terms.

The method here effectively achieves the same result, but bitUSD owners can effectively force settlement from the bitUSD:USD market rather than the bitUSD:BTS market, with other parties incentivised to take the bitUSD for USD and offset in the internal market. The way in which this would occur is as follows:

- if there were a lot of demand for BTS, some parties might buy the external bitUSD to sell for BTS in the internal market, especially if they could get a sizeable BTS stake at a lower premium than buying in external markets. Competition among stake-buyers puts an upper bound on the settlement price at which they are willing to buy the BTS from the margined shorts

- if there is weak demand for the BTS, arbitragers will buy the external bitUSD to sell for a premium in the internal market. They need a premium to cover the spread in selling their BTS proceeds in the weak external market. Competition among arbitragers puts a lower bound on the settlement price at which BTS is bought from the called shorts

- market-makers in the bitUSD:USD market may buy the bitUSD at or below parity to sell at a premium later, given ongoing supply reduction is guaranteed to return to bitUSD to at least parity

The settlement price for called shorts, between these bounds, reflects all market and liquidity conditions and is therefore a "fair" free-market price. I don't think it can be easily manipulated, but interested if others can see ways it can.

Some extra ideas

Introducing a yield between longs and shorts

A yield mechanism would allow for situations where the market consensus is that a bitUSD is worth more or less than parity with the USD. As a result, it would allow more moderate swings in supply to balance the demand. It would also limit premiums to the peg. I've discussed this elsewhere, though it should be noted this is not in line with BM's current proposals. I have a process to incorporate yield into the above approach but won't detail it here unless interested.

Creating and cancelling shorts

Given that pegging is enforced in the bitUSD:USD market, especially with a yield mechanism to limit premiums, market-making becomes a more profitable endeavour in that market. BTS owners can easily earn an income from this as follows:
- self-create bitUSD
- use the bitUSD to sell at a premium for USD, and buy at a discount with USD, in the bitUSD:USD market, earning the spread
- when user wishes to stop this activity, buy the bitUSD and self-cancel

It's also possible for shorts to always be self-created and self-cancelled, and never be created in the internal bitUSD:BTS market. This could vastly simplify the internal market. But it would require shorts to self-create with $2 of BTS, then sell their $1 bitUSD for BTS in order to get exposed to $3 of BTS. This is 3:2 leverage, and would not be as much leverage as the 2:1 provided if they can short directly in the internal bitUSD:BTS market.

23
When margin calls are made against shorts, is the total position covered, or just enough to get it back to a target collateral ratio?

For example, suppose target BTS collateral (shorts collateral only) is 100% and a margin call is made at 50%. Only half the position would need to be closed to get them back to 100% coverage.

24
General Discussion / Idea: Flexible Collateral
« on: May 14, 2015, 01:13:55 am »
*** SHORT VERSION ***

- allow bit-Currencies to be backed by an assortment of on-chain tokens
- each token counts a certain percentage toward their total collateral requirement based on risk factors
- allows shorts to obtain funding for a diversified portfolio of holdings
- allows shorts to manage the composition of their collateral portfolio
- allows shorts to use their tokens to collateralise a general purpose loan
- allows shorts to still get BTS leverage if they like
- allows shorts to close positions from collateral instead of buying externally
- just an idea, don't know all what the practicalities are

*** LONGER VERSION ***

This may not fit at all with the direction BM wants to go, but I thought I would raise this concept as a hypothetical to explore.

There is no reason why bitAssets need to be collateralised by BTS. In principle they could be collateralised by an assortment of on-chain tokens.

Imagine a short maintains a locked collateral account that could hold BTS, bitUSD, bitUER, bitCNY, bitBTC, bit-bonds at various terms, maybe even UIAs, as long as they exist on the BitShares block chain. And imagine they are free to trade these against each other.

Each token counts toward their total collateral requirement based on a risk-based approach. So for example, if the bitAsset obligation were bitUSD, holding bitUSD in collateral would count toward 100% coverage. Holding BTS would count toward 33% coverage (making it equivalent to the current system) or 50% coverage (equivalent to BitAsset 2.0). The coverage ratio on each token would depend on specific risk factors such as liquidity/depth in the underlying market, volatility or other risk factors. Total coverage must add to at least 100%, and if it falls below 100% the short has their position called.

So for example, holding all BTS in collateral would require 2x collateral (assuming 50% as per BitAsset 2.0). While holding all bitUSD would only require 1x collateral.

At any time a short, having converted their collateral fully to bitUSD, could self-cancel their short with collateral held, rather than having to buy a bitUSD with external funds.

Shorts would be able to use leverage on a diversified portfolio of tokens, and have control of that portfolio within the bounds of their total collateral constraints.

The coverage ratios for each token could be periodically updated with notice to give shorts time to adjust collateral.

If a short is called, or if a cover is requested, their tokens are each automatically used to purchase bitUSD in market (if a bitUSD market does not exist in the token, there may be more than one step), thus cancelling their position. There are different ways of prioritising these conversions and returning residual collateral to the short.

A user would also be able self-create a short by posting any form of collateral that meets the Total Coverage requirement, and then selling the bitUSD in the market for USD. This effectively gives them a general purpose loan against their BitShares token holdings.

The borrower could also use the bitUSD to buy BTS if they wish, giving them the same risk profile as they have currently (leverage to BTS). But this would not be necessary, and open up shorting to a more general set of motivations.

I haven't yet thought about a number of more practical issues, just thought it might be interesting enough to raise.

25
I would like to better understand the process by which new designs (e.g. bitAssets) or other code gets introduced into BitShares. My background is financial not coding, so I'm admittedly a layman on this topic.

- Where does the BitShares code reside (for example, the trading engine)? Is it all in the client? Is there separate code used by the block-producing nodes, and how is it different? Does common code also sit elsewhere?

- If there is a major code change, who directs the propagation of this change through the network and how? Is it users, delegates, or both? Does this acceptance happen by simply downloading a new client version?

- In practice, how do all the developers agree on the code change? Is somebody responsible for vetting and testing all the changes made before a new version is released?

- If there were competing developers or development teams, that might produce competing client versions, how is a consensus formed within the community on which one will be supported? In practice, is it possible to even have developers compete on version design, or does this need to be a coordinated effort?

Sorry if these questions don't make complete sense.

26
Why do I ask?

This approach could be one possible solution to the zero bound on interest rates for cash/currency holdings. It would allow longs to pay interest to shorts if and when the market calls for it.

There are possibly other ways of allowing for negative rates that might also be explored. For example, maybe it's possible that when people pay USD from their wallets, a variable "transaction cost" is applied to represent accrued interest owing at that point.

Also note this is no issue at all in bill/bond markets based around zero-coupon bond structures, because negative rates are simply reflected in exchange prices above par.

How might this work?

Suppose we had a token called DEPOSIT. People can buy, sell and short DEPOSIT tokens. At any time, a DEPOSIT represents a certain number of USD effectively held in a block-chain deposit account. So a feed price can easily be calculated for the fair value of a DEPOSIT.

However, the number of USD that a DEPOSIT represents is variable. When the interest rate is positive, it goes up, and when it is negative it goes down. On settlement, shorts are only obliged to pay back the same number of DEPOSIT tokens as they shorted, and they do not pay any additional interest, as the interest rate is built into the value of a DEPOSIT in the price feed.

In theory it would be possible for people to exchange DEPOSIT tokens for goods and services. But as they represent a variable basket of USD, this is not the most convenient for pricing such goods. That's where a checking system could be useful. Party A wants to pay for a service from Party B for X USD. So they create X check tokens, sign them and issue them to Party B. Party B sends the check, now signed by both parties, to the block-chain. The block-chain checks that Party A has the USD available, and if not, "bounces" the check. If it does, it calculates the settlement as a certain number of DEPOSIT tokens transferring from Party A to Party B.

[Edit: Maybe the system could prevent Party A from issuing checks in excess of their USD, so avoid bouncing altogether.]

Any thoughts?

 

27
General Discussion / Is it feasible to make a bitBTC backed by BTC?
« on: April 25, 2015, 12:41:31 pm »
This is just a thought-provoker. Currently we make bitBTC backed by BTS. I wonder what the broader crypto-community would think of a bitBTC backed by a reserve of BTC, where the transfer operations of the reserve are largely automatic and maybe subject to decentralised control by bitBTC owners? One that had zero financial risk associated with BitShares except as the designer and owner of the system? The bitBTC would then have:

- fast, guaranteed exchangeability with real BTC
- 10 second block times
- no feed price
- no collateral volatility

Even though we might argue that counterparty risk is introduced (and the goal should be to minimise that as far as possible), I think if people accept the security is still very high they may find it more understandable and attractive than one backed by BTS, at least at this early stage in BitShares' growth.

For BTS owners, a spread could be earned on transfers in and out of the reserve, and transaction fees from exchange markets, and this would not be limited by the market cap of BTS. For example, there's no reason why there could not be $100m of bitUSD earning $2m a year for BTS, even if the BTS valuation were lower than this.

There's been a lot of talk recently about ACCT, escrow functions, multi-sig, etc, some of which could be used. So I wondered, does this concept seem technically and legally feasible?

Just throwing this one out there.

28
I would like to understand this concept better that I've seen referred to numerous times, because I'm just not getting what is meant by it. Maybe somebody can help make this concept click into place for me?

My starting point is that the holder of a bitAsset requires some assurance that its value (measured against external assets) will track the value of the real asset. Their key concern is that when they sell the bitAsset, an asset within the system, they receive enough funds that they could buy the real asset outside the system, should they wish to.

So this requires an exchange price of at least one asset inside the system to at least one asset outside the system, in order to make this calculation. This is what I understand as an external or exogenous price feed.

It's been said by many that when liquidity is significant inside the system, that we can move toward an endogenous price feed.

When people refer to an endogenous price feed, being "within the market", what exactly is meant by this? Does this involve a comparison of only the values of tokens that all reside inside the system? If so, I can't see how this provides any information about how any internal token is to be valued outside the system.

Am I understanding the concept correctly?

Thanks.

29
[Whitepaper v1] – Yield Market System for Pegged Block-chain Currencies

This (draft v1) whitepaper describes a modular yield-based system for implementing pegged currencies on a block-chain. It is a complete architecture in that it integrates currency and bill/bond markets in a single system.

Warning: Long post.

30
Meta / What's the maximum length of a forum post?
« on: April 21, 2015, 08:06:31 am »
...and do attached images make a difference?
Ta.

Pages: 1 [2] 3 4 5 6 7