Live here: https://4g0r4.github.io/cc-sat
Third iteration of the Cowboy Credits order book, thanks to everyone who gave feedback, especially @harrym for pushing on order matching mechanics and fee clarity in v0.2, and @ek with his @ccbank bot to trigger me work more on this project.
This update is mostly about transparency and usability. No more guessing what a trade actually costs you.
What's New in v0.3
Trade Simulator
This is probably the best UX feature to help stackers better evaluate orders. Pick any order, enter how many CCs you want to trade, and the simulator tells you exactly:
No more mental math! Try it now.
Fee Transparency & BUY/SELL Buttons
Each order now has a direct link to its SN offer page and some tags to help stacker better evaluate offers: [Fees Included] / [Buyer +30%] / [Founder -21%] at a glance
How to Use It
- Browse — Go to the site. No login needed.
- Simulate — Pick an order, enter your volume, see the real cost.
- Trade — Click BUY/SELL to go to the SN offer, or DM the seller directly.
- Submit your own — Post in the comments below, create your [SELL] - [BUY] offer in the AGORA or simply click the [Submit Order via GH] button from https://4g0r4.github.io/cc-sat (Needs a GH token yours with
gistscope).
Visit https://4g0r4.github.io/cc-sat and try it yourself. What would make it more useful for you? Drop a comment below or open an issue.
Repository: https://github.com/4G0R4/cc-sat
Stay humble, stack sats.
~AGORA Territory orders
Territory founders receive a 21% rebate on zaps in their territory, which means they can offer better exchange rates than the SN vending machine. We have now two live offers:
Thanks @optimism for your feefback #1560528 both suggestions have now been implemented. Simulator make much more sense now.
<3
One note: I think the order table still can use some work (ask side is upside down if you merge it like that)
generally you'd display it like:
ask highest .... ask lowest --- mid market / spread-- bid highest ... bid lowestif you collapse into a single table. it can be that the highest bid is higher than the lowest ask, then there is a negative spread (= a market inefficiency)
The previous version of the table with 2 separate tables for each side was more clear, because the best deal was at the top of each table.
Ok make sense, make sense. I was trying to incorprate 0x feedback #1560542
Let me see how I can merge both ideas. I like the fact to have negative spread, that could be reflected in the chart too.
That works but then you have to normalize both sides (like for the spread graph)
Yes, it's important information because it means bidder (a) should talk to asker (b)! (or someone arbs it.)
PS This is why I think that the top 2 deals aren't real/actual, because no way Undisc would have let those free sats sit there for 9 months: take the deal from bullish, then convert back useless CCs by selling them to darth... your only ante is 2x LN fees, which will be covered by the gains on the deal from bullish.
Wow, inside arbitrage. I never tougth it would be even possible.
PS I think I found a way to merge it all
I think it's still wrong based on your screenshot, haha.
Bid should be at the bottom in the order it is now, ask at the top in reverse order of what you have right now. This is also what @0xbitcoiner shows.
That way the truth is in the middle: on the bid side, the best deal is closest to the middle bar (i.e. on the top of bids), and on the ask side, the best deal is also closest to the middle bar (i.e. at the bottom of asks)
ok I will invert the order of the bids too. But still I feel the bids should be at the top-left and the asks at bottom-right
You’re saying you prefer it this way?
I prefer it like this. Can’t argue about taste! Haha.
Either way is fine for me, I actually prefer the same as you. At the time of my comment the implementation didn't normalize so the best offer on the bid side was folded into the worst offer on the ask side. Either way is fine, it just has to not compare apples to shoesoles.
Consider using this kind of chart for the order book. IMO, it’s way easier to visualize the orders this way. I made up the order volumes, but if this were actually the case, you could clearly see that AGORA could absorb all the sell orders for CCs.
Looking much better now, however still need some more work
That's a great suggestion, I'll seek ways to integrate it.
I’d like to point out a few inconsistencies and things that could be improved. It’d be great if buyers and sellers could say how much they want to trade.
Great suggestion, the image with the suggestions works great! have a look at the changes.
One thing I cannot grasp, is why do would you want orders with the same exchange rate to be merged in the same line?
It’s just a matter of aesthetics and data consistency. I don’t see any problem with leaving it like this. In an exchange order book, the “sats” column never repeats values, it combines all the volume at a given price. One thing that would definitely look better is matching the buy/sell orders.
Ok this make sense. And I was thinking to build it exactly like this from a traditional stand. From a stacker perspective I feel like the Buy orders will be more a thing here, and that's why I moved at the top, and the sell offers, in an inverted order, at the bottom.
Check latest deployment.
I prefer it this way.
I just had an idea for grouping identical orders: combine all the volume at the same price and only show the total amount for that price. Then, when you click on the order, it expands and shows who submitted it, along with the amount for each individual order.
Volume is something I excluded from the variables because to have correct metrics, then it would be mandatory to track all trades. For example, for
@ccbankhe has a daily variable rate, and volume is defined by demand. I thought that placing a 1CC volume for all orders would be a way to avoid such detailed tracking.I like the idea of the expandable line to display all individual orders.
@ek to remove or add offers you need to add a GH token from the button.
I reccomend you to add the new offer before deleting the existing one.
You want a personal access token to remove an order? Why don't you remove it for me, when you added it without me?
Yes I can, but why should I remove it? is there something incorrect?
Yes, both are incorrect
I'll be happy to edit for you if you provide the correct data points
Usage: @ccbank sell <invoice> Exchange credits for sats. <invoice> must be a mainnet lightning invoice with an amount that is valid for at least 24h.