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

[FEATURE] Order expiration and auto-prolongation. #2573

Closed
username1565 opened this issue Sep 10, 2019 · 4 comments
Closed

[FEATURE] Order expiration and auto-prolongation. #2573

username1565 opened this issue Sep 10, 2019 · 4 comments
Assignees
Labels

Comments

@username1565
Copy link

username1565 commented Sep 10, 2019

Аbstract
Is your feature request related to a problem? Please describe.
Maybe yes, but maybe no.
Here: https://github.com/wavesplatform/waves-documentation/blob/master/en/waves-client/frequently-asked-questions-faq/waves-dex/order-time.md
I can see, that maximum age for order is 29 days.
This value can be changed only in waves-client, but no more than 29 days.
There is available shorter periods: 5 minutes, 30 minutes, 1 hour, 1 day, 1 week, and at last - 29 days.
After 29 days, there is auto-cancelleration of the order.
Maybe, this is good idea, because trading floors automatically cleaned,
and there is minimal risk to buy something from people, who lost their seed/private_keys, or from people who is dead, and send the crypto for their addresses - forever.
But... This scheme need to re-open position every time, and make PR again and again...
This is not good.
I think, if you want to keep active users only, you can programming the complex system, to auto-prolongation of the orders, which will using the owner's signature.
For example:

  1. User open the order. This have tha maximum expiration period 29 days, and order will be closed after 29 days, automatically, if user is inactive.
  2. User enable auto-prolongation for his order.
  3. When user log in into the account, or when user connect to the matcher, or when user open new order on that matcher, he must to sign the message.
  4. Matcher do verify signed message, and if verification is successfull, then user is active, and user is a real owner of his private key.
  5. Enable autoprolongation for all orders from this user, on that matcher.
  6. Else, if user not sign any message within 29 days - auto cancelleration of his order, because user is inactive.

Motivation and Purposes
A clear and concise description of what the problem is. Ex. I'm always frustrated when [I cann't set large expiration time for my order. When many my orders is cancelled automatically, so I don't remember assets, which I wanted to buy, and prices which I selected earlier. When I put the limit-order for fixed price, and wait that price, and then this price is reached, and I think about this order is already filled at this price, and then I make PR, and I make it long-time, but I turn back, and see my order was been - cancelled, but price already not mine...].

Specification
A clear and concise description of what you want to happen. Describe alternatives you've considered

  1. I want to be able to set the maximum time for my opened order, and this time to be greater than 29 days.
  2. I want to my orders can be auto-prolongate, if I'm still active, logged in my waves-wallet, and if I still trading.
  3. I want to my orders will be auto-cancelled, within 29 days or greater than, if I'll be inactive.

Backwards Compatibility
Can your proposition affect any existing features?
Maybe no, of course, and backward compatibility will be supported.
Just changing the expiration time for orders - on working and existing matchers.

Examples and Implementation
Examples of implementation in other projects?
Hm... Only on your exchange I see auto-cancelleration for all orders!
This seems cool, but I already descripted some problems, related with this.

@pivoo81
Copy link
Member

pivoo81 commented Sep 12, 2019

Hi! This feature request is concerning DEX Client behaviour.
Please open such issue here:
https://github.com/wavesplatform/WavesGUI

@username1565
Copy link
Author

username1565 commented Sep 12, 2019

Ok. Issue is opened there.

Is there matcher's already have any option to change the order-expiration time, and set this more over 29 days?
And set this to custom value and change it at any time,
on the matcher, using some query?
The modification the source code of waves-client will be enough to realize this?
Or need to modify the source code of node, or "matcher" extension for the node, and add some additional commands in Matcher REST API?

Best regards.

@pivoo81
Copy link
Member

pivoo81 commented Sep 18, 2019

Blockchain will not accept exchange transaction containing order with expiration time more than 30 days.

@username1565
Copy link
Author

Ok. Then, maybe, this is possible to realize, using some scripts on client.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants