All notable changes to this project will be documented in this file.
This file is generated by Semantic Release and this project adheres to Semantic Versioning.
- lint: Fix lint issues (
3af3f8f
)
- Transactions: Allow specifying mean transaction time (
5adc88d
)
- Arbitrage: Make amount of processes configurable (
e8809f7
)
- ArbitrageFinder: Process trades in parallel (
6a047e7
)
- RedisState: Delete collection when resusing keys (
2caa9bc
)
- Trader: Make it possible to dry_run (
ab4ccce
)
- Trader: Account for gas cost when estimating trade profit (
e8eaeec
) - LogTrader: Account for gas costs when extimating profit (
c492edd
) - Arbitrage: Change arbitrage expr to work with +2 pools (
32baa2a
) - Arbitrage: Allow setting precision (
bd407ae
)
- Trader: Keep trading after exception (
404d494
)
- Whitelist: Change default settings (
ec81e39
)
- Coingecko: Retry response with code 429 (
e3f94c6
)
- CircuitBreaker: Use a CircuitBreaker to not get disconnected (
ee886e3
)
- Whitelist: Add config params and logging (
7f97dd6
)
- Whitelist: Lower request speed to not be blocked (
1360c59
)
- PoolFinder: Filter pairs with whitelist (
59dce2d
) - PoolFinder: Filter tokens with whitelist (
099c47c
) - Whitelist: Add action for finding whitelist tokens (
66d0d5c
)
- readme: Add getting started instructions (
e98da45
)
- Node: Run node against alchemy archive node (
a5b3082
)
- Trader: Make it possible to log trades (
1aa202c
)
- UniswapV2Router: Add logging when checking value of trades (
bcb1e12
)
- App: Log stacktrace and exception info (
1d6a058
)
- app: Print exceptions (
abca2ae
)
- Brig: Fix issues with Weth address (
92760f1
)
- gas-strategy: Setup web3 to use gas strategy (
9225823
) - brig: Update docker-compose (
140c845
) - Brig: Update configurations (
6863108
) - UniswapV2Router: Update bytecode and functions (
3998896
)
- account: Make it possible to sign transaction from accounts (
0ea4a1e
)
- Trader: Fix app and tests so that trader works (
4eeca95
) - ActionTree: Make it possible to subscribe to multiple events (
efbe4c3
)
- trader: Add action for trading using arbie (
8fd32a0
)
- Add arbie smart contract (
0457321
) - Add router smart contract (
8254646
) - Add Arbie contract and Uniswap router (
579f913
)
- Prevent arbitrage finder from crashing on imaginary roots (
9c0d314
) - Remove empty pools (
5279d8a
) - Fix crash when multiple arbies are running (
25fe810
)
- Add prometheus to async functions (
b5f462c
)
- Remove version configuration (
7ec1edd
)
- Add PoolUpdater action for updating pools
- Add Prometheus client for exporting performance metrics
- ActionTree now runs actions async.
- Optimize Contracts using async await.
- Optimize PoolFinder using async await.
- Remove circuit breaker, trust retry on the request lib to keep us from failing.
- Add settings to Path Finder for choosing depth, when searching for cycles. So that we don't have to wait untill the heat death of the universe.
- Add possibility to specify variable creation in config.yaml.
- Make it possible to run action tree by subscribing to redis channel. Publish to channel when adding varaible state to redis.
- How contract factories, web3 and redis connections are created.
- No longer possible to save and load store state to disk. We now use redis for keeping track of the state.
- Address() we now use str as address representation. This integrates better with web3.py
- Issue where names would not be added when creating Tokens from contracts.
- Issue where pools with zero balance would not be filtered by PoolFinder.
- Add logging to file. Logging rotated between 5 1mb files.
- Make it possible to load and save arbie state on startup, exit and crash.
- Add CLI option for log path.
- Add CLI option for state save path.
- Add CLI option for state load path.
- Move examples to arbie-examples to remove repo size and make it easier to keep examples up to date.
- Issue with pickeling store containing contracts.
- Issue with pools not normalizing to 1 and being filtered out.
- Find all cycles in a set of Pools. These can then be converted to trading opertunities.
- CLI application structure. Making it possible to configure Actions from yaml config.
- Add logging framework. Making it possible to write info to console.
- Add Action for finding Pools from PoolContracts like Uniswap and Balancer.
- Make it possible to specify address to WETH in config.yaml.
- Add functionality making it possible to find all pools and pairs.
- Smart contract wrapper for interacting with balancer and uniswap.
- Automated market maker modell called Pool. Can be used to simulate Uniswap or balancer.
- TradingGraph functionality built on top of Networkx.
- Ethereum system tests against Geth