Okay I have an idea for yield and for forcing shorts to cover, here goes:
Every so often (details to be determined), the system looks at what the price feed is for an asset, and what the highest price bid for the asset is.
For example, lets say we are talking about bitUSD. The feed is $1.00, and lets imagine that the highest bid right now is $0.99, which is 1% below the feed.
The system therefore declares that the interest rate charged to short bitUSD is 1% annualized. If it did this every day, it would then calculate what the daily equivalent of a 1% APR is, and declare this to be the daily yield.
The system would then take this amount of daily yield collectively from the BTS collateral of all the shorts, and would divide it among all the bitAsset holders.
This achieves several goals:
1) BitAssets have yield. If the price of bitUSD is $1.00 or more, there is no yield at that time. If the price is 0.99 then there is 1% yield. If the price is 0.98, there is 2% yield, etc.
2) If the bitAsset falls too far below the feed, Shorts (creators of the bitAsset - they arent called 'shorts' anymore I guess) are pressured to cover because they are having the interest taken from their BTS collateral until they do.
3) This acts as a stabilizer pushing up on the price any time that it is too low, because not only do you have the hope of a possible gain, you also get interest. This counterbalances the force that pushes down on the price any time it is above the peg, which is that you can convert BTS into the asset and sell it for instant profit.
There would be some technical details to work out if this was accepted, such as how often the interest needs to be calculated, how to avoid having it be manipulated (randomness in the time interval?) etc.