Cow Feeder is a bot automatically execute trade on cowswap, includes functions:
- Monitoring Ethereum network gas price and execute trade when gas price is low and reaches target gas price set by user.
- Protect trade from quick price change when bot waits for a good gas price.
- Automatically approve to trade on cowswap when gas price is low and reaches target gas price set by user. (In progress)
Extra bonus to use Cow Feeder:
- More chances to have CoWs. People are more likely to set same target gas price, such as 40 gwei, thus executing trade at a small time window together.
Python 3
pip install -r requirements.txt
{
"network": "mainnet",
"http_provider_url": "https://mainnet.infura.io/v3/<api-key>",
"your_wallet_address": "0x..........",
"private_key": "your_wallet_address_private_key",
"sell_token_address": "0xddafbb505ad214d7b80b1f830fccc89b60fb7a83",
"buy_token_address": "0x4ecaba5870353805a9f068101a40e0f32ed605c6",
"sell_token_amount": "100",
"least_buy_token_amount": "80",
"target_gas_price": "40"
}
http_provider_url
: If you don't already have a http provider, you can register a free one at infura.io.
private_key
: Private key is not mnemonic. With metamask, you can find it by clicking three dots, opening account detail and exporting private key. Private key is important. You can also leave private_key as an empty string in config.json and set it as environment variable with export private_key=your_wallet_private_key
. Cow Feeder handles both cases.
least_buy_token_amount
: While gas price goes down, price of trading pair might change as well. If the amount of token you are getting is lower than least buy token amount, Cow Feeder will not execute trade.
target_gas_price
: Gas price is in gwei, you can decide target gas price by referring historical gas price at etherscan.io/gastracker.
{
"network": "xDai",
"http_provider_url": "https://rpc.xdaichain.com/",
"your_wallet_address": "0x..........",
"private_key": "your_wallet_address_private_key",
"sell_token_address": "0xddafbb505ad214d7b80b1f830fccc89b60fb7a83",
"buy_token_address": "0x4ecaba5870353805a9f068101a40e0f32ed605c6",
"sell_token_amount": "0.5",
"least_buy_token_amount": "0.49",
"target_gas_price": "1"
}
You can try it out on xDai network. You don't need a http provider api key for xDai network. Gas price on xDai network is usually at 1, you can refer to xdai gas price oracle
python cowfeeder.py
- Curtain (yellowcurtain3@gmail.com)
This is alpha release. Use at your own risk.