Skip to main content

DXSP (DeX SwaP), A defi swap helper package. Easy peasy Swap.

Project description

dxsp

DXSP (DeX SwaP), A defi swap helper package. Easy peasy Swap.

Pypi

Install

pip install dxsp

2 swap execution mode are supported:

  • Single SWAP via 1inch API v5 and Uniswap version 2 router DEX type
  • Limit SWAP via 1inch API v3

Example

example

import os
from dotenv import load_dotenv
import asyncio
from web3 import Web3
import many_abis as ma

#YOUR VARIABLES
load_dotenv()
#chain ID being used refer to https://chainlist.org/
chain_id = os.getenv("CHAIN_ID", "10")

#your wallet details
wallet_address = os.getenv("WALLET_ADDRESS", "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE")
private_key = os.getenv("PRIVATE_KEY", "0x111111111117dc0aa78b770fa6a738034120c302")

#1 for 1inch and 2 for Uniswap V2
execution_mode = os.getenv("EXECUTION_MODE", "1")

#DATA from MANY_ABIS FOR RPC and EXCHANGE
chain = ma.get_chain_by_id(chain_id=int(chain_id))
network_provider_url = os.getenv("NETWORK_PROVIDER_URL", chain['rpc'][0])
dex_exchange = os.getenv("DEX_EXCHANGE", chain['dex'][0])

#Block explorer API from ETHERSCAN TYPE EXPLORER
block_explorer_api = os.getenv("BLOCK_EXPLORER_API", "1X23Q4ACZ5T3KXG67WIAH7X8C510F1972TM")

#DEX CONNECTIVITY
w3 = Web3(Web3.HTTPProvider(network_provider_url))



+ from dxsp import DexSwap

async def main():
	#SWAP HELPER 
+	dex = DexSwap(w3,chain_id,wallet_address,private_key,execution_mode,dex_exchange,block_explorer_api)


	#get Contract Address
+	bitcoinaddress = await dex.get_contract_address('wBTC')
	print("bitcoinaddress ", bitcoinaddress)

	#getABI
+	bitcoinABI = await dex.get_abi(bitcoinaddress)
	print("bitcoinABI ", bitcoinABI)

	#INPUT for QUOTE
+	quote = await dex.get_quote('wBTC')
	print("quote ", quote)

	#INPUT for a NORMAL SWAP
	# transaction_amount_out = 10
	# asset_out_symbol = "USDT"
	# asset_in_symbol = "ETH"

	#SWAP EXECUTION
+	# transaction = dex.get_swap(transaction_amount_out,asset_out_symbol,asset_in_symbol)
	# print("transaction ", transaction)


if __name__ == "__main__":
    asyncio.run(main())

Real case

TalkyTrader, submit trading order to CEX & DEX with messaging platform (Telegram, Matrix and Discord)

Roadmap

V1

- Single SWAP via 1inch API v5 and Uniswap version 2 router
- Limit SWAP via 1inch API v3

V2

- Uniswap V3 Support
- Ox or other API based swap or orderbook platfrom

Project details


Release history Release notifications | RSS feed

This version

0.0.3

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dxsp-0.0.3.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

dxsp-0.0.3-py3-none-any.whl (5.6 kB view details)

Uploaded Python 3

File details

Details for the file dxsp-0.0.3.tar.gz.

File metadata

  • Download URL: dxsp-0.0.3.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for dxsp-0.0.3.tar.gz
Algorithm Hash digest
SHA256 fa083ad9ce349c609bec58fb29fc8b3cd2f11e4e841e5211c048bed3a59577da
MD5 acda451ef246a259f0996fb1456e7a24
BLAKE2b-256 5ee7a05c0ba93de6c17dd761343647ec2a0f15822989b57ade31e8c4764abf35

See more details on using hashes here.

File details

Details for the file dxsp-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: dxsp-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 5.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for dxsp-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d3e6be1238bab61350923cfb2071fbb5fa8ad86995918fc90add180f5ce2d6d6
MD5 bad55b2b519f3fd00af753a758ecab8a
BLAKE2b-256 048a2716ac730383ae4747fe64ad51050cb0479c6f4e36f46264a75e1cb28a09

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page