Delegation

From Minter Wiki


Delegation is transaction in the Minter network when funds on user's account are blocked, increasing stake of the selected Validator. This process can be called "bonding" and the opposite action is "unbonding".

Any user of the network can delegate their BIP coins, as well as any custom сoin issued on the Minter network.

The user who delegates funds is called Delegator.

Why delegate coins

Delegation performs several important functions in the network:

  1. By delegating funds, each user increases the Validator's Voting Strength, which is necessary for making important decisions such as Validator voting, including signing block
  2. Rewards is credited only on the delegated funds amount.

Delegating security

Although this transaction is similar to the send coins transaction, all coins remain in the Delegate's account but are blocked from use and are not displayed on the Delegate's balance. The Validator does not have access to these funds and cannot withdraw or spend them.

Fines for validators and delegates

Also see the article Is it possible to lose delegated funds

Снимок экрана 2019-09-20 в 11.36.09.png

Delegated funds may be reduced due to penalties imposed on the Validator in the following cases:

  • Penalty for blocks missing. If 12 of the last 24 blocks are skipped, no matter what the reason is, the Validator will be fined 1% of the total node stake. This node is also excluded from the active node and it stops signing new blocks. The owners of the node, once the problem has been resolved, must restart it. During idle time, Delegates don’t get any rewards.
  • Double Signature Attempt Fine. When double signature of the same block is attempted, the Validator will be fined 5% of the total node stake. In doing so, all funds delegated to the master node are forcibly undelegated (unbonded) and appear on the Delegate's balance after 518,400 blocks (~ 30 days).

Deactivation of the Validator

If the Validator will have the node disabled for a long period for various reasons, no rewards will be charged. All funds will remain delegated until the Delegate creates unbonding transaction. After that, the funds will be displayed on the balance after 518,400 blocks (~ 30 days).

Network Commission for Delegating

Delegation fees are fixed on the amount of 0.20 BIP.

It does not depend on the number of delegated coins and on what coins you send.

You can also send up to 1024 bytes of useful data in the Message field in each transaction. There is a commission of 0.002 BIP for each byte.

In the program code, for any transaction cost is considered to be another type of measurement — units. 1 BIP = 1000 units. Therefore, you can find the following display of transaction cost:

TypeDelegate	200 units
TypeUnbond	200 units

Validator's choice

For more details see the article Comparison of validators

A list of all Validators can be obtained from one of the services:

Before delegating funds, you need to select the Validator by various criteria:

1.Validator's commission.

Regardless of who you delegate your funds to, you will receive the same reward. But each Validator has the ability to set its own commission from 0 to 100% of the awards paid to its delegates. Therefore, it is more profitable to choose Validator with the lowest commission. It is necessary to pay attention to the fact that the Validator after the launch of the node can not change its commission either more or less.

2. Cashback, bonuses, promotions.

Each Validator may offer different bonuses to attract Delegates to his node:

  • A cashback in the form of a daily refund of part of the commission to the delegate's account. Validators often use their own coins for this purpose. Sometimes cashback is used to lower the actual commission, and sometimes cashback is used to create special conditions for Delegates with large amounts of money, sometimes the refund reaches the amount of the commission and the actual commission becomes 0%.
  • Some Validators use different bonus systems. This can be a reduction of the commission when a certain stake size is reached (e.g. when Delegating 1 million BIP, the commission will be 0%)
  • Different shares. Many Validators use all sorts of forms of activity enhancing among their Delegates. For example, daily lotteries, quizzes, contests, cheques, etc. There are regular and one-off promotions.

3.Validator reliability.

As it is already described in the section "Delegation security", a node may be fined if it fails. Therefore, it is necessary to take this issue seriously and to study the history of already received fines, if there were any; to look at information about technical and software equipment of the node. It should be noted that fines were frequent when main network was launched and most nodes that received fines were trying to compensate for all losses of their Delegates.

4.Feedback.

It is advisable to find the Validator's contact details - chat rooms in Telegram, e-mail or feedback bot in Telegram, personal contact details of node administrators. It is necessary for the operative solution of arising questions on node work.

5.Minimum Stake for Delegating.

For details, look for Minimum number of coins to be delegated.

For now, you should know that some popular Validators have a minimum amount of money for Delegating which should be taken into account when making a decision.

After reviewing the above information, each Delegate should decide on the Validator choice.

Minimum number of coins to delegate

Each Validator has 1000 slots for delegation. This restriction is introduced because the system has to recalculate the "weight" of the delegated coins quite often. It should be noted that once all Validators have been added to the blockchain, and there will be 256 of them, the maximum number of slots in the Minter network will be 256,000.

Each individual slot is designed to accommodate funds from one Delegator in a separate custom coin. That is if the Delegator sends 2 amounts: 500 BIP and 100 POPE, it will take up 2 slots. If the Delegator sends first 100 BIPs and then another 200 BIPs, these coins are summed up in 1 slot.

All slots are sorted according to the delegated funds amount in terms of BIP. The re-calculation of custom coins during delegation is done according to a special method (see Delegating Cost of custom coins during delegation).

After the Delegate has occupied all 1000 slots, there is a limit on the amount of the delegated funds. Any new Delegate cannot deposit less than the amount in Slot 1000. If he sends more than 1000, then his funds will take their place among the Validator slots, and the funds from slot 1000 will be divided and instantly returned (unblocked) to the Delegate's account without displaying them in the transaction list.

Displaying slot information in Minterscan

When Delegating, it is very important to control the positions of your slots in the Validators list. Let's consider these actions on the example of Explorer Minterscan.

In the Validators list, we can find out the number of occupied slots and the minimum BIP stake for delegation.

Снимок экрана 2019-09-21 в 19.03.28.png

After selecting any Validator at the bottom of the screen, a list of all slots sorted by slot size in BIP is displayed. You can scroll through the list to the slots in the last places and see their sizes. This is useful when estimating the chances of your steak coming out.

If you enter your address in the search field, only the slots that are occupied by that address with the location will be displayed at the bottom.

Снимок экрана 2019-09-21 в 19.06.36.png

Costs of custom coins on delegation

Since every coin on the Minter network can be instantly exchanged for a base coin and back, development team has proposed a new approach to delegation: they have made it possible to delegate any coins in the Minter blockchain. As soon as a coin reaches the Validator steak, blockchain calculates its real value and adds it to the Validator's Voice Strength. For this reason, the real size of the stakes and the list of validators are recalculated every 120 blocks, or if one of the current validators is disabled.

Using features of the Minter network, in certain cases you may find several options for estimation value of custom coins. In Minter, absolutely every coin has a reserve in BIP, so you can buy, sell or delegate it at any time. This may create a little confusion.

  • Cost of custom coins in Conversion (including payment for various services). See the article Coin conversion for more details.
  • Cost of Custom coins at Delegation. Let's consider it below.

The developers have identified the following problem:

But there was a problem that arose when users delegate their coins. Suppose that there is a coin A. Selling 100 units brings 10 BIP, but selling 200 units will bring only 15 BIP. This is due to the floating price of each sold coin. Let's imagine a scenario:

  • The user creates 2 wallets
  • From one wallet, he delegates 100 coins
  • The second wallet delegates the same amount

The real value of 200 coins is 15 BIP. However, steaks are counted separately, so the actual number of delegated coins will be 100 coins + 100 coins = 20 BIP. This means that it is possible to deceive the system and delegate more coins than the user has.

To solve this problem, we had to introduce the following mechanism:

  • Summarize all the delegated coins of the same type
  • We're counting how much the sale of all the steaks will bring in in total
  • Distribute the received number of BIPs to the delegates in proportion to their stakes

The formula for calculating the value of Custom coins during delegation will be the following:

PriceD = (reserve * (1 - (1 - sellAmount / supply) ^ (100 / crr))) / sellAmount

  • PriceD is the cost of a custom coin when delegating to BIP;
  • Reserve - reserve for coins in BIP;
  • SellAmount - the number of coins sold;
  • Supply - the amount of coins in circulation;
  • Crr - CRR coins

Calculation of the number of Custom coins with a minimum stake

For the calculation, we need to know

After that, it is necessary to make a simple calculation:

RQCC = MNS *100 / CCCD, where

  • RQCC required quantity of Customian coins
  • MNS Minimal node stakes
  • CCCD - Cost of custom coins on delegation in %

For example, a POPE coin has a 74% CCCD and we need to know the minimum size for delegation in the node Minter_Pro_5%, which has a minimum 512 BIP stake. Then:

RQCC = 512 BIP *100 / 74% = 691.89 POPE

Attention! It's a Minimal amount calculation! In order for the calculated amount not to be knocked out of the delegation at once, it is necessary to delegate more than the calculated amount.

Ways of Delegating

To delegate, simply send the delegation transaction on masternode public key. The Validator public key always starts with the "MP..." prefix. It is identified in the Validator description in text format or as a QR code.

You can send the delegation transaction from the Delegation section to Console or from the Send section on of the mobile application by specifying the public key in the To field.

Delegation from the Console

Delegation.png

For delegation, you just need to specify the Validator Public Key, Custom Coin for delegation and the coin amount in the "Delegation" tab. In the advanced mode, you can select a coin to pay the commission and attach a message to the transaction. After that press the "Delegate" button and confirm the operation.

Delegating from the mobile wallet iOS or Android

Android Wallet Send Tab.png

On the "Send" tab you should specify the Validator Public Key, Custom Coin for delegation and the coin amount. Press the "Send" button and confirm the operation.

Auto delegation

For more details see the article How to set up auto delegation

Auto delegation in Minter network is automatic creation of delegation transactions and sending these transactions to the Validator when the necessary amount of money is accumulated on the wallet

For autodelegation you can use the form in the section Delegation in the Console or use third-party services.

Allocation of funds ("albond")

For more details see the article Unbond

In order to protect against long-range attacks, the developers have introduced a blocking of delegated funds for 30 days after their "withdrawal".

Unbond of funds can be performed only in the Console on the "Delegation" tab. To do this, you need to fill in the form "UNBOND COINS FROM MASTERNOD" public key of the node than choose a token and coins amount.

Transaction types when delegating

In the program code the transaction is displayed as a transaction: " TypeDelegate 0x07 " TypeUnbond 0x08

Transaction for delegation

" Type: 0x07

During the operation of delegation the following data will be contained in the system: type DelegateData struct { PubKey []byte Coin [10]byte Stake *big.Int }

PubKey - Validator public key
Coin - Ticker of the delegated coin
Stake - Coin volume for delegation

Unbonding transaction

" Type: 0x08

During Unbonding of the coin the system will contain the following data: type UnbondData struct { PubKey []byte Coin [10]byte Value *big.Int }

PubKey - Validator public key
Coin - Ticker of the unbonded coin
Value - Coin volume for the undond