亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

利用 Python 監控 Uniswap 加密貨幣價格的方法

發布時間:2021-06-15 15:57:08 來源:億速云 閱讀:1032 作者:chen 欄目:編程語言

本篇內容介紹了“利用 Python 監控 Uniswap 加密貨幣價格的方法”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

Uniswap是一個基于以太坊的交易所協議,允許任何人交換ERC20代幣。普遍上講,交易代幣要求買賣雙方創造委托訂單,而Uniswap則是自動創建一個交易市場。Uniswap旨在幫助解決去中心化交易所的流動性問題,是一種去中心化的交易所。

在過去的幾個月里,我在 Uniswap 上新上市的幣上觀察到了一個非常有趣的規律,尤其是那些被炒作的幣種。在新幣上市后的前 10-15 分鐘內,價格上漲非常高,不過在接下來的幾個小時內大幅下跌,然后在接下來的 24 小時內上漲超過 50%。不要以為你可以在價格低的時候買進,然后10分鐘后高價賣出。因為以太坊網絡擁堵的原因,這段時間的gas費用非常高(數百美元)。

利用 Python 監控 Uniswap 加密貨幣價格的方法

Superfarm 是之前比較受歡迎的一個新項目,在 Telegram 上擁有超過 86,000 名成員,在 Twitter 上擁有超過 88,000 名關注者。所以我決定來測試一下這個規律,或者說我決定進行推測。在最初的幾分鐘里,價格飆升至 2 美元左右,然后跌至 1 美元左右,因此我決定投資 0.98 eth(按當前價格計算約 1.5K 美元)。

第二天,如果價格要上漲,我必須觀察價格才能退出我在 Superfarm 代幣上的頭寸。每分鐘檢查價格真的是在浪費時間,所以我決定制作一個腳本來監控價格,如果價格達到某個目標,它會通知我。

為了查看 Uniswap 的價格,我使用了 uniswap-python 庫。

!pip install uniswap-python

如果你想知道我為什么使用它,pip 前面的感嘆號是因為我已經在 Jupyter Notebook 中進行了編碼,并且我已經從 Notebook 單元安裝了所有必要的 python 庫。

eth = "0x0000000000000000000000000000000000000000"  dai = "0x6B175474E89094C44Da98b954EedeAC495271d0F"  sup = "0xe53EC727dbDEB9E2d5456c3be40cFF031AB40A55"  address = "0x0000000000000000000000000000000000000000"  #  if you're not making transactions  private_key = None  # if you're not going to make transactions  provider = <the url of your provider> # if you use Infura    will be    like 'https://mainnet.infura.io/v3/########'  uniswap_wrapper = Uniswap(address, private_key, version=2, providerprovider=provider)  # use Uniswap v2

第一個變量包含我們想要在 Uniswap 上獲得加密貨幣的以太坊地址校驗和。

要獲取加密貨幣的以太坊地址校驗和,您可以使用 Coingecko 首先獲取合約地址:

利用 Python 監控 Uniswap 加密貨幣價格的方法

然后你就可以使用下面網站輕松從合約地址中獲取以太坊地址校驗和。

https://ethsum.netlify.app/

如果您不太熟悉什么是以太坊地址校驗和,您可以將其視為一個標識符,基于這個加密貨幣標識符 Uniswap 將能夠為您提供價格。

provider(web3 provider)是一個運行 geth 或 parity 節點的網站,它與以太坊網絡交互。要獲得provider,您可以使用 Infura。如果您使用 Infura,必須注冊然后創建一個新項目,在設置選項卡上您可以看到提供商 URL:

利用 Python 監控 Uniswap 加密貨幣價格的方法

要獲得以 eth 表示的 Superfarm 幣價格:

sup_price = uniswap_wrapper.get_token_eth_input_price(sup, 10 ** 18)  print(sup_price / 10**18)  # 0.000901625376604887

10 ** 18代表Superfarm 幣的數量,它必須是一個整數值,如果我們選擇小數量值將是0(由于近似),所以我們需要一個大數量。我們將獲得 10 ** 18個 Superfarm 幣的 eth 價格。

如果我們想以美元計算 1 個 Superfarm 幣的價格,我們可以使用 Dai 穩定幣(1 Dai ~= 1 美元)。我們可以請求相同數量的 Superfarm 和 Dai 幣,然后分割它們。

def get_sup_price_in_dollars():      sup_price = uniswap_wrapper.get_token_eth_input_price(sup, 10 ** 18)      dai_price = uniswap_wrapper.get_token_eth_input_price(dai, 10 ** 18)      return round(sup_price / dai_price, 4)  print(get_sup_price_in_dollars())  # 1.357 --> the price in dollars for 1 Superfarm coin

為了在我的桌面上推送通知,我使用了plyer庫:

!pip install plyer

這是監控 Superfarm 價格和自前一個值以來的變化的函數:

from plyer import notification  def notify(price: int, new_price: int):      notification.notify(      title = 'Superfarm price whatcher',      message = f"Total value of SUPER = {new_price}, change: {round(new_price - price, 3)}",      timeout = 10,      app_icon = '/home/kederrac/Pictures/uniswap.ICO',      )

如您所見,我還添加了一個應用程序圖標,為了能夠使用應用程序圖標,我還必須將 .png 圖片轉換為 .ico 格式,安裝 dbus-python 庫(如果您使用的是 Windows,則不需要)。

!pip install  dbus-python

現在讓我們把它們放在一起:

import time  price = get_sup_price_in_dollars()  notify(price, price)  while True:      new_price = get_sup_price_in_dollars()          if abs(price - new_price) > 0.05:          notify(price, new_price)              price = new_price      time.sleep(10)

在這里,我每 10 秒調用一次 get_sup_price_in_dollars() 函數來檢查價格是否發生變化,如果變化大于 0.05 美元,將推送通知,您可以更改變化的最小值以獲得通知,或者您 可以設置要通知的最低價格目標。

結果如下:

利用 Python 監控 Uniswap 加密貨幣價格的方法

(在 ubuntu 20.04 上)

利用 Python 監控 Uniswap 加密貨幣價格的方法

(在 windows 10 上)

這對于實時價格通知非常有幫助,這種方法的另一優點是速度,與必須使用 Coingecko 相比,您將獲得數分鐘的時間,如果您使用 Uniswap 網絡界面,時間將更快。

在這里你可以看到我一開始所說的規律:

利用 Python 監控 Uniswap 加密貨幣價格的方法

“利用 Python 監控 Uniswap 加密貨幣價格的方法”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鸡西市| 宁南县| 正阳县| 射洪县| 婺源县| 依兰县| 河津市| 米脂县| 绿春县| 淮北市| 类乌齐县| 广南县| 巴东县| 青海省| 新兴县| 绥德县| 庄河市| 吉首市| 泸水县| 阿坝| 榆社县| 抚松县| 启东市| 金塔县| 玉门市| 石渠县| 赤水市| 邵阳县| 平湖市| 介休市| 阿拉尔市| 阿坝县| 庐江县| 西乌珠穆沁旗| 龙游县| 叶城县| 沁阳市| 大埔区| 莱西市| 韩城市| 卢龙县|