Create a smart contract which helps users execute a dollar-cost averaging approach to investing in a single ERC20 token with ether. The contract should:
-
Accept one-time ether payment
-
Allow spaced conversions of ether into a single ERC20 token over a fixed time period
- a. Bonus: incentivize these conversions
- Conversions should happen via Uniswap V2 and be executed as “market sells” of ether for the ERC20 token
- a. Bonus: resists price manipulation
- UNIDCA.sol
- UNIOracle.sol
- REWARD.sol