yield_farming.cpython-311.pyc•17.1 kB
�
R\�hC � �t � d dl Z d dlZd dlmZ d dlmZ d dlmZ ej e � � Z
G d� d� � ZdS )� N)�EthereumClient)�
PolygonClient)�SolanaClientc �~ � e Zd ZdZd� Zd� Zd� Zd� Zd� Zd� Z d� Z
d � Zd
� Zd� Z
d� Zd
� Zd� Zd� Zd� Zd� Zd� Zd� ZdS )�YieldFarmingOperationsz0Yield farming and liquidity provision operationsc � � t � � | _ t � � | _ t � � | _ dddd�ddd�d�| _ d S ) N�*0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f�*0x1F98431c8aD98523631AE4a59f267346ea31F984�*0xC0AEe478e3658e2610c5F7A4A2E1777cE9e4f2Ac)�
uniswap_v2�
uniswap_v3� sushiswap�*0x5757371414417b8C6CAad45bAeF941aBc7d3Ab32�*0xc35DADB65012eC5796536bD9864eD8773aBc74C4)� quickswapr )�ethereum�polygon)r �ethereum_clientr �polygon_clientr �
solana_client� protocols)�selfs �2/home/runner/workspace/defi_tools/yield_farming.py�__init__zYieldFarmingOperations.__init__ sc � �-�/�/���+�o�o���)�^�^���
K�J�I�� � J�I�� �
�
����� c �� � |� � � dk r| � |||||||� � S |� � � dk r| � |||||||� � S |� � � dk r| � |||||||� � S dd|� �d�S # t $ rF} t
� dt | � � � �� � dt | � � d�cY d} ~ S d} ~ ww xY w) zAdd liquidity to a farming poolr r �solanaF�Unsupported blockchain: ��success�errorz Add liquidity operation failed: N)�lower�_add_liquidity_ethereum�_add_liquidity_polygon�_add_liquidity_solana� Exception�loggerr! �str)
r �
blockchain�protocol�wallet_address�pool_id�token_a�token_b�amount_a�amount_b�es
r �
add_liquidityz$YieldFarmingOperations.add_liquidity s2 � � 7����!�!�Z�/�/��3�3�H�n�g�W^�`g�iq�s{�|�|�|��!�!�#�#�y�0�0��2�2�8�^�W�V]�_f�hp�rz�{�{�{��!�!�#�#�x�/�/��1�1�(�N�G�U\�^e�go�qy�z�z�z�#(�3Z�j�3Z�3Z�[�[�[��� 7� 7� 7��L�L�D�C��F�F�D�D�E�E�E�$�s�1�v�v�6�6�6�6�6�6�6�6����� 7���s. �2B# �2B# �(2B# �B# �#
C3�-;C.�(C3�.C3c �~ � |� � � dk r| � |||||� � S |� � � dk r| � |||||� � S dd|� �d�S # t $ rF}t � dt
|� � � �� � dt
|� � d�cY d}~S d}~ww xY w)zAdd liquidity on Ethereum�uniswapr F�Unsupported protocol: r z$Ethereum liquidity addition failed: N)r"