# Matcher settings
The settings described below are being applied in
/etc/waves/waves.confconfiguration 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.