-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathconfig.example.yaml
More file actions
194 lines (162 loc) · 6.02 KB
/
config.example.yaml
File metadata and controls
194 lines (162 loc) · 6.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
# Private key of the bot's wallet, only one of this or mnemonic should be set
key: "0x1234...7890"
# Mnemonic phrase, only one of this or key should be set
mnemonic: "12 or 24 mnemonic words"
# Number of excess wallets for submitting txs, required only when mnemonic option is used
walletCount: 5
# Topup amount for excess accounts, required only when mnemonic option is used
topupAmount: 0.5
# List of rpc urls, required
# example for env: url=https://rpc-url1.com,weight=0.5,trackSize=200
rpc:
- url: https://rpc-url1.com # required field
weight: 1.5 # optional
trackSize: 200 # optional
- url: https://rpc-url2.com
weight: 0.5
# Optional list of write rpc urls for write transactions
# example for env: url=https://rpc-url1.com,weight=0.5,trackSize=200
writeRpc:
- url: https://rpc-url1.com # required field
weight: 1.5 # optional
trackSize: 200 # optional
- url: https://rpc-url2.com
weight: 0.5
# List of subgraph urls, required
# for specifying more than 1 subgraph URL in the env, separate them by a comma
# NOTE: for v6 orderbook subgraph, prepend the URL with "v6=" because the v5 and v6
# subgraph schemas are identical and this prefix is needed to identify the version
subgraph:
- https://subgraph-url1.com
- https://subgraph-url2.com
- v6=https://v6-subgraph.com
# Contract addresses for different versions requireed for operating and solving trades
# at least one version should be partially or fully specified
contracts:
v4:
# Sushi RP arb v4 contract address
sushiArbAddress: "0x1234...5678"
# Generic arb v4 contract address
genericArbAddress: "0x1234...5678"
# Balancer arb v4 contract address
balancerArbAddress: "0x1234...5678"
# Stabull arb v4 contract address
stabullArbAddress: "0x1234...5678"
# Dispair v4 contract address
dispair: "0x1234...5678"
v5:
# Sushi RP arb v5 contract address
sushiArbAddress: "0x1234...5678"
# Generic arb v5 contract address
genericArbAddress: "0x1234...5678"
# Balancer arb v5 contract address
balancerArbAddress: "0x1234...5678"
# Stabull arb v5 contract address
stabullArbAddress: "0x1234...5678"
# Dispair v5 contract address
dispair: "0x1234...5678"
v6:
# Sushi RP arb v6 contract address
sushiArbAddress: "0x1234...5678"
# Generic arb v6 contract address
genericArbAddress: "0x1234...5678"
# Balancer arb v6 contract address
balancerArbAddress: "0x1234...5678"
# Stabull arb v6 contract address
stabullArbAddress: "0x1234...5678"
# Dispair v6 contract address
dispair: "0x1234...5678"
# list of liquidity providers
# if provided through an env var, they should be separated by a comma
# default includes all available liquidity providers
liquidityProviders:
- sushiswapv2
- uniswapv3
- quickswapv3
# Specifies the routing mode 'multi' or 'single' or 'full', default is single
route: single
# Seconds to wait between each arb round, default is 10
sleep: 10
# Option to specify time (in minutes) between pools updates, default is 0 minutes
poolUpdateInterval: 10
# Gas coverage percentage for each transaction to be considered profitable to be submitted, default is 100
gasCoveragePercentage: 250
# Option to set a gas limit for all submitting txs optionally with appended percentage sign to apply as percentage to original gas
txGas: 110%
# Option to set a static gas limit for quote read calls, default is 1 million
quoteGas: 1000000
# Minimum bot's wallet gas token balance required for operating, required option
botMinBalance: 0.5
# Option to multiply the gas price fetched from the rpc as percentage, default is 107, ie +7%
gasPriceMultiplier: 107
# Option to multiply the gas limit estimation from the rpc as percentage, default is 100, ie no change
gasLimitMultiplier: 100
# Optional seconds to wait for the transaction to mine before disregarding it, default is 15
timeout: 15
# Option to maximize maxIORatio, default true
maxRatio: true
# The number of orders that will be processed concurrently, default is 1, i.e. no concurrency
maxConcurrency: 10
# list of tokens to skip sweeping
skipSweep:
- "0x123...456"
- "0xabc...def"
# Option that specifies the owner limit
# for specifying in env use key=value form and separate by comma owner1=limit,owner2=limit,...
ownerProfile:
- "0x1234...5678": 100
- "0x1234...7890": max
# Optional list of vaults to self-fund when vault balance falls below specified threshold
# example for env: token=0xabcd...def,vaultId=0x123...456,orderbook="0x123...456",threshold=0.5,topupAmount=10,...
selfFundVaults:
- token: "0x1234...5678"
vaultId: "0x1234...7890"
orderbook: "0x1234...5678"
topupAmount: 0.5
threshold: 0.02
- token: "0xabcd...1234"
vaultId: 123456789
orderbook: "0x1234...5678"
topupAmount: 80
threshold: 0.1
# Optional filters for inc/exc orders, multiple items can be separated by a comma
sgFilter:
# Only process these specific order hashes
includeOrders:
- "0x1234...5678"
- "0xabcd...1234"
# Does NOT process these specific order hashes
excludeOrders:
- "0x1234...5678"
- "0xabcd...1234"
# Only process orders from these specific owners
includeOwners:
- "0x1234...5678"
- "0xabcd...1234"
# Does NOT process orders from these specific owners
excludeOwners:
- "0x1234...5678"
- "0xabcd...1234"
# Only process orders from these specific orderbooks
includeOrderbooks:
- "0x1234...5678"
- "0xabcd...1234"
# Does NOT process orders from these specific orderbooks
excludeOrderbooks:
- "0x1234...5678"
- "0xabcd...1234"
# Optional specification of trade types to enable for specific orderbooks
# if provided through an env var, the orderbooks for each trade type should be separated by a comma
orderbookTradeTypes:
# Enable router trades for the given orderbooks
router:
- "0xabcd..."
- "0x1234..."
# Enable inter-orderbook trades for the given orderbooks
interOrderbook:
- "0xabcd..."
- "0x1234..."
# Enable intra-orderbook trades for the given orderbooks
intraOrderbook:
- "0xabcd..."
- "0x1234..."