# Matcher settings
The settings described below are being applied in
/etc/waves/waves.conf
configuration file. Read more about node configuration file (opens new window).
Configuration section matcher
can be used to configure WX Network matcher.
Use enable
parameter to enable WX Network matcher. By default, it’s disabled.
With account
parameter you can provide the address of the matcher. The address is used to receive orders and pay or collect fees.
bind-address
parameter allows to set the IP address of local network interface to bind matcher’s REST API.
port
parameter is used to set the port number on which the matcher’s REST API will accept incoming connections.
min-order-fee
parameter allows to set the minimum required fee to process orders. For now, matcher accepts fee only in WAVES. The fee should be given in minimal units (WAVELETS).
Use order-match-tx-fee
parameter to set the transaction fee of the order match transactions created by the matcher.
matcher-direcotory
parameter can be used to set the location of matcher’s files.
With the data-directory
, journal-directory
and snapshots-directory
parameters, you can set the location of the matcher’s data. Matcher has its own LevelDB database.
leveldb-cache-size
parameter allows to set the size of cache for Matcher’s LevelDB database. By default it’s the same as for the node.
Use snapshots-interval
parameter to change the period of time between snapshots of matcher’s state.
Use order-cleanup-interval
parameter to adjust how often the clean up of expired orders occurs.
Use max-open-orders
parameter to limit the number of unmatched orders stored in the matcher.
Use parameters price-assets
and predefined-pairs
to define rules of asset pairs creation for the matcher. Inside the matcher a trading pair consists of an "amount" asset and a "price" asset. The "amount" asset is used to specify the amount in order. The "price" asset is used to specify the price in order.
Parameter price-assets
is the list of assets IDs that will be used as price asset (second one) in a pair with any unknown asset. If both assets in the pair are "price" assets you have to use parameter predefined-pairs
to define the correct order of assets in the pair.
In case of no definition given, assets will be sorted by their IDs and the first one will be selected as "price" asset and the second one will be selected as "amount" asset.
To specify Waves as a side of a pair, use special asset ID "WAVES".
Below you can find an example of setting up asset pairs.
price-assets = [
"WAVES",
"8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS",
"474jTeYx2r2Va35794tCScAXWJG9hU2HcgxzMowaZUnu",
"DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p",
"4LHHvYGNKJUg5hj65aGD5vgScvCBmLpdRFtjokvCjSL8"
]
predefined-pairs = [
{amountAsset = "WAVES", priceAsset = "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS"},
{amountAsset = "WAVES", priceAsset = "474jTeYx2r2Va35794tCScAXWJG9hU2HcgxzMowaZUnu"},
{amountAsset = "WAVES", priceAsset = "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p"},
{amountAsset = "WAVES", priceAsset = "4LHHvYGNKJUg5hj65aGD5vgScvCBmLpdRFtjokvCjSL8"},
{amountAsset = "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS", priceAsset = "34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ"},
{amountAsset = "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS", priceAsset = "6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ"},
{amountAsset = "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS", priceAsset = "HZk1mbfuJpmxU1Fs4AX5MWLVYtctsNcg6e2C6VKqK8zk"},
{amountAsset = "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p", priceAsset = "474jTeYx2r2Va35794tCScAXWJG9hU2HcgxzMowaZUnu"}
]
Parameter max-timestamp-diff
is used to set the maximum allowed time difference between order and local matcher’s time.
Parameters blacklisted-assets
and blacklisted-names
can be used to blacklist assets from WX Network.
To deny operations in WX Network for the specified addresses use blacklisted-addresses
parameter.