hiveengine/steemengine - transfer/stake/unstake/sell all token at once

View this thread on: d.buzz | hive.blog | peakd.com | ecency.com
·@holger80·
0.000 HBD
hiveengine/steemengine - transfer/stake/unstake/sell all token at once
## Repository

![hiveengine](https://images.hive.blog/DQmULMMnQNSS3u96MH16XCKSYLEvWJ7RTYtEfWxQfjz68yB/hiveengine)

https://github.com/holgern/hiveengine

![steemengine](https://images.hive.blog/DQmUc1h5WF9d6c1n5jiiFrCbt2yyx84fhHu5MxgeFMHvekh/steemengine)

https://github.com/holgern/steemengine

## hiveengine/steemengine

hiveengine/steemengine is using [beem](https://github.com/holgern/beem) for broadcasting transfers and custom_json to the blockchain. hiveengine is only working when using HIVE nodes and steemengine works only when using STEEM nodes. You can check the currently set nodes with

```
beem config
```

Hive nodes can be set with

```
beem updatenodes --hive
```

For using steemengine, the nodes does not need to be changed, as always the steemit node is used.


Both packages can be installed with pip / pip3:

```
pip install hiveengine
```
and/or
```
pip install steemengine
```

## Usage
After seeing that I had several tokens left in my steem-engine account and as I was to lazy to sell each token one by one, I updated the steemengine command line tool instead.

When a token has aktive bids, selling tokens is now convinient. You can use the `sell` command to broadcast a sell order for each of your tokens and use then the `cancel` command to cancel all not fullfilled order after a while. Then you can try again with `sell`...

I ported the changes also to hiveengine package.

## Price calculation
The token price is calculated from the highest bid, or when there is currently no bid, from the last price.

## Trying with no-broadcast
```
steemengine -d command
```
or 
```
hiveengine -d command
```
A command can be tested with the `-d` or `--no-broadcast` option. When using this option, broadcasting is disabled and the transaction is just printed to the terminal.

## Sell all token

```
steemengine sell -a account_name
```
or 
```
hiveengine sell -a account_name
```
can now be used to go through all your tokens and sell them. The tool asks for each token if it should be sold, only when entering `y`, a sell order is broadcasted.

An account can be set with `-a account_name`.

![selling tokens](https://images.hive.blog/DQmTgEZW4mSbQGj3mX4jL5jLQibDnffBipcV41Yh7QToNpP/selling%20tokens)


## Transfering all tokens
```
steemengine transfer -a from_acc to_acc
```
or 
```
hiveengine transfer -a from_acc to_acc
```
This command allows it to send all tokens to the specified account. You will be asked for each token, if it should be transferred. Only when pressing `y`, the token is send.

## Staking all tokens
```
steemengine stake -a account_name
```
or 
```
hiveengine stake -a account_name
```
This helps in staking all token at once. You will be asked if you  want to stake the specific token. Only when pressing `y`, the token is staked.

![stake all your tokens](https://images.hive.blog/DQmePtpyubor7dogm3LQBzCUSwLhea16kdxpbwStFK1sT8q/stake%20all%20your%20tokens)


## Unstaking all tokens
```
steemengine unstake -a account_name
```
or 
```
hiveengine unstake -a account_name
```
This can be used to unstake all your staked tokens. You will be asked for each token if all staked token should be unstaked. Only when `y` is pressed, the token is unstaked.

![Unstake your tokens](https://images.hive.blog/DQmSEjTzVdScReBbdCtMEtZWnUhpGbagxsyhoNRHQ38siEc/Unstake%20your%20tokens)

## Show open orders
This command was enhanced so that all open orders for an account can be shown at once.

```
steemengine sellbook -a account_name
```
or 
```
hiveengine sellbook -a account_name
```
or
```
steemengine buybook -a account_name
```
or 
```
hiveengine buybook -a account_name
```

I tried, but I could not sell all my remaining tokens at steem-engine:

![My sellbook at steem-engine](https://images.hive.blog/DQmf3ZKJsy5ccCYqaVYSt4jzUyymHChKYHyEuPmE2kBRZcA/My%20sellbook%20at%20steem-engine)

Maybe it's time for
```
steemengine  transfer -a holger80 -m bye null
```


## Cancel all open buy / sell orders
```
steemengine cancel -a account_name buy
```
or 
```
hiveengine cancel -a account_name buy
```
or
```
steemengine cancel -a account_name sell
```
or 
```
hiveengine cancel -a account_name sell
```
This cancels all open sell / buy orders at once. It is possible to add `--yes` to prevent being asked if the open order should be canceled. 

## Show the worth of your liquid / staked token in HIVE
```
hiveengine balance -a account_name
```
This command exists only for hiveengine. The shown values are calculated by the highest bid or when not existing the latest price.

![token value](https://images.hive.blog/DQmY6mAP5nTT5PMZhcnYAs2oAN2jGcH6H6cDcDwFxHzAcBR/token%20value)

## Feedback
Let me know if you have ideas for improvements.

***

*If you like what I do, consider casting a vote for me as witness on [Hivesigner](https://hivesigner.com/sign/account-witness-vote?witness=holger80&approve=1) or on [PeakD](https://peakd.com/witnesses)*.
👍 , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,