This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const { ContractFactory, utils } = require("ethers") | |
const WETH9 = require("../WETH9.json") | |
const fs = require('fs'); | |
const { promisify } = require('util'); | |
const artifacts = { | |
UniswapV3Factory: require("@uniswap/v3-core/artifacts/contracts/UniswapV3Factory.sol/UniswapV3Factory.json"), | |
SwapRouter: require("@uniswap/v3-periphery/artifacts/contracts/SwapRouter.sol/SwapRouter.json"), | |
NFTDescriptor: require("@uniswap/v3-periphery/artifacts/contracts/libraries/NFTDescriptor.sol/NFTDescriptor.json"), |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const ethers = require('ethers') | |
const v3PoolArtifact = require("@uniswap/v3-core/artifacts/contracts/UniswapV3Pool.sol/UniswapV3Pool.json") | |
const poolAddresses = [ | |
'0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640', // USDC/ETH 0.05% | |
'0xcbcdf9626bc03e24f779434178a73a0b4bad62ed', // WBTC/ETH 0.3% | |
'0x5777d92f208679db4b9778590fa3cab3ac9e2168', // DAI/USDC 0.01% | |
'0x8ad599c3a0ff1de082011efddc58f1908eb6e6d8', // USDC/ETH 0.3% | |
'0x4585fe77225b41b697c938b018e2ac67ac5a20c0', // WBTC/ETH 0.05% |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const { ContractFactory, utils } = require("ethers") | |
const WETH9 = require("../WETH9.json") | |
const fs = require('fs'); | |
const { promisify } = require('util'); | |
const artifacts = { | |
UniswapV3Factory: require("@uniswap/v3-core/artifacts/contracts/UniswapV3Factory.sol/UniswapV3Factory.json"), | |
SwapRouter: require("@uniswap/v3-periphery/artifacts/contracts/SwapRouter.sol/SwapRouter.json"), | |
NFTDescriptor: require("@uniswap/v3-periphery/artifacts/contracts/libraries/NFTDescriptor.sol/NFTDescriptor.json"), |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const ethers = require('ethers') | |
const v3PoolArtifact = require("@uniswap/v3-core/artifacts/contracts/UniswapV3Pool.sol/UniswapV3Pool.json") | |
const v2PairArtifact = require('@uniswap/v2-periphery/build/IUniswapV2Pair.json') | |
const USDC_ETH_V3 = '0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640' | |
const ETH_USDT_V2 = '0x0d4a11d5eeaac28ec3f61d100daf4d40471f1852' | |
const ETH_USDT_SUSHI = '0x06da0fd433c1a5d7a4faa01111c044910a184553' | |
sqrtToPrice = (sqrt) => { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const ethers = require('ethers'); | |
const routerArtifact = require('@uniswap/v2-periphery/build/UniswapV2Router02.json') | |
const erc20Abi = require("../erc20.json") | |
const wethArtifact = require("../weth.json") | |
WETH_ADDRESS= '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2' | |
USDT_ADDRESS= '0xdAC17F958D2ee523a2206206994597C13D831ec7' | |
ROUTER_ADDRESS= '0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D' | |
PAIR_ADDRESS= '0x0d4a11d5eeaac28ec3f61d100daf4d40471f1852' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const { | |
Contract, ContractFactory, utils, constants, | |
} = require("ethers") | |
const WETH9 = require("../WETH9.json") | |
const factoryArtifact = require('@uniswap/v2-core/build/UniswapV2Factory.json') | |
const routerArtifact = require('@uniswap/v2-periphery/build/UniswapV2Router02.json') | |
const pairArtifact = require('@uniswap/v2-periphery/build/IUniswapV2Pair.json') |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const ethers = require('ethers') | |
const factoryArtifact = require('@uniswap/v2-core/build/UniswapV2Factory.json') | |
const provider = new ethers.JsonRpcProvider('https://mainnet.infura.io/v3/abc') | |
const SUSHI_FACTORY = '0xC0AEe478e3658e2610c5F7A4A2E1777cE9e4f2Ac' | |
const UNI_FACTORY = '0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f' | |
const USDC = '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48' | |
const WETH = '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
npx hardhat run --network localhost scripts/01_deployContracts.js | |
*/ | |
const { ContractFactory, utils } = require("ethers") | |
const WETH9 = require("../WETH9.json") | |
const artifacts = { | |
UniswapV3Factory: require("@uniswap/v3-core/artifacts/contracts/UniswapV3Factory.sol/UniswapV3Factory.json"), | |
SwapRouter: require("@uniswap/v3-periphery/artifacts/contracts/SwapRouter.sol/SwapRouter.json"), |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const { Contract, ContractFactory, utils, BigNumber, constants } = require("ethers") | |
const WETH9 = require("../WETH9.json") | |
const factoryArtifact = require('@uniswap/v2-core/build/UniswapV2Factory.json') | |
const routerArtifact = require('@uniswap/v2-periphery/build/UniswapV2Router02.json') | |
const pairArtifact = require('@uniswap/v2-periphery/build/IUniswapV2Pair.json') | |
async function main() { ... code here... } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const { abi: QuoterV2ABI } = require('@uniswap/v3-periphery/artifacts/contracts/lens/QuoterV2.sol/QuoterV2.json') | |
const { abi: PoolABI } = require('@uniswap/v3-core/artifacts/contracts/UniswapV3Pool.sol/UniswapV3Pool.json') | |
const { abi: FactoryABI } = require("@uniswap/v3-core/artifacts/contracts/UniswapV3Factory.sol/UniswapV3Factory.json") | |
const QUOTER2_ADDRESS = '0x61fFE014bA17989E743c5F6cB21bF9697530B21e' | |
const FACTORY_ADDRESS = '0x1F98431c8aD98523631AE4a59f267346ea31F984' | |
const WETH_ADDRESS = '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2' | |
const USDC_ADDRESS = '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48' |