Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Advanced options for makers #52

Closed
Reckless-Satoshi opened this issue Feb 20, 2022 · 3 comments
Closed

Advanced options for makers #52

Reckless-Satoshi opened this issue Feb 20, 2022 · 3 comments
Assignees
Labels
enhancement 🆙 New feature or request
Milestone

Comments

@Reckless-Satoshi
Copy link
Collaborator

Reckless-Satoshi commented Feb 20, 2022

The maker page is simple, yet it should be sufficient for most casual users. However, some advanced options can be added in an "Advanced Options" tab. These are mostly directed to fulfill the needs of larger liquidity providers and advanced users.

Possible advanced options

  • Set public expiry time. A datetime input to explicitly specify the time of expiry of a public order. This input will have to be limited to a max of ~10 hours from 'now' in order to not have too long-lived HTLCs. Example usage:
    • A maker has only 30 minutes for lunch or before going to bed. He places an order with a expiry time 30 minutes in the future. If it is taken he will be available for the trade, else the order expires no action needed.
  • Set fiat exchange duration. It has recently been bumped to 24 hours. I deem it already too long (probably unsafe). Yet, makers might still want to ask for very slow payment methods such as bank transfers or cash by mail (totally not advised!). This option could allow for CLTV expiry of up to 1 week. It will have to be extensively tested in testnet first. (EDIT: longer CLTVs will probably never happen, looks bad, see Implement full trustless escrow approach as in "hodlcontracts" for maker-buyers #56 for more info)
  • Amount range. the maker enters the minimum and maximum order size. The taker will select the exact amount just after "Take Order" button is pressed. Challenge: it is harder to compute a fair maker bond size.
  • Set bond size. Bounded 1-20%. Will be the size of both, maker and taker bonds.
  • Allow bond-less takers. How is someone new to LN going to buy Satoshis if he needs to lock satoshis in the first place? Makers might choose to allow bond-less takers in exchange of collecting a higher premium for the extra counterpart risk.

Submit your comments and ideas so we can craft this feature the right way before putting the work into it.

Challenges

Most of these options will make the overall UI messier in other pages. For example, the book and order page will need to accommodate the extra information of these advanced options so takers are aware of the details of the order. That might make new users dizzy. There might be a way to simply add a check in the order page "Show advanced", otherwise the advanced orders will not show.

@decentralizedb
Copy link
Contributor

  • Allow bond-less takers. How is someone new to LN going to buy Satoshis if he needs to lock satoshis in the first place? Makers might choose to allow bond-less takers in exchange of collecting a higher premium for the extra counterpart risk.

About the bond-less takers topic. I think this option should be had by default some limits, one of them does not exceed some sats amount, maybe the minimum amount allowed in the platform (20K for example.). Another one should be to have a premium minimum higher by default, 15% eg., but it could be increased by the Maker.

@Reckless-Satoshi
Copy link
Collaborator Author

About the bond-less takers topic. I think this option should be had by default some limits, one of them does not exceed some sats amount, maybe the minimum amount allowed in the platform (20K for example.). Another one should be to have a premium minimum higher by default, 15% eg., but it could be increased by the Maker.

Agree! It should be limited in some way so stakes are low. In the current state of PR #76 the max for this option is 50K sats.

I am unsure to whether limiting lower bound premium is a good idea. In my conceptualization of the great free market I want RoboSats to be, the maker should be free to select a premium that he deems is worth taking the risk (without it being imposed by anyone, this is not hodlhodl :P).

@decentralizedb
Copy link
Contributor

About the bond-less takers topic. I think this option should be had by default some limits, one of them does not exceed some sats amount, maybe the minimum amount allowed in the platform (20K for example.). Another one should be to have a premium minimum higher by default, 15% eg., but it could be increased by the Maker.

Agree! It should be limited in some way so stakes are low. In the current state of PR #76 the max for this option is 50K sats.

I am unsure to whether limiting lower bound premium is a good idea. In my conceptualization of the great free market I want RoboSats to be, the maker should be free to select a premium that he deems is worth taking the risk (without it being imposed by anyone, this is not hodlhodl :P).

Yes, I understand you, but it's not just the Maker that we should think about, we should think about the person or people who are going to have to deal with resolving all the disputes that this feature may generate on the platform.
I'm not sure, maybe one idea is to start with not limit and try to test it, if the problem is bigger, so, limit the bond premium.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement 🆙 New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants