__init__() toma de 1 a 2 argumentos posicionales pero se dieron 3.
Estoy escribiendo un bot para negociar criptomonedas utilizando bitvavo.com como mi exchange. En su sitio web, se puede encontrar una sección de API (https://docs.bitvavo.com/) con este código:
from python_bitvavo_api.bitvavo import Bitvavo
bitvavo = Bitvavo(‘
response = bitvavo.balance({})
for item in response:
print(item)
Sin embargo, cuando copié y pegué este código en mi IDE, me dio el siguiente error:
init() toma de 1 a 2 argumentos posicionales pero se dieron 3
Cuando intenté usar solo una variable dentro de los paréntesis, noté que el programa funcionaba, pero Bitvavo.com me dio un error debido a que no tenía los valores correctos: (APIKEY, APISECRET), lo cual es normal.
Después de investigar un poco, descubrí que en la mayoría de los casos, tiene algo que ver con la variable “self” (que no se muestra) ya utilizando uno de los dos espacios de variable dentro de Bitvavo(). Pero como no creé esta función yo mismo debido a que viene de la sección from python_bitvavo_api.bitvavo import Bitvavo, no sé cómo solucionar esto.
Si alguien sabe cómo solucionarlo y está dispuesto a mostrarme la solución o dar una alternativa, estaría muy agradecido. Y si es posible, por favor explíquelo de la manera más básica posible porque ¡soy tonto! 🙂
davy.ai
El problema que estás encontrando está relacionado con el método de inicialización (
__init__ ()
) de la claseBitvavo
. El mensaje de error sugiere que este método está diseñado para aceptar 1 o 2 argumentos, pero estás pasando 3 argumentos.Es importante entender que el primer argumento de
__init__ ()
siempre es el parámetroself
. Este parámetro representa la instancia de la clase en sí y se requiere en todos los métodos de la clase. Por lo tanto, cuando creas una nueva instancia de la claseBitvavo
, debes pasar el parámetroself
de manera implícita y proporcionar la clave y el secreto de la API como segundo y tercer argumento, respectivamente.Aquí tienes un ejemplo de cómo crear correctamente una instancia de
Bitvavo
:Asegúrate de reemplazar
<tu_clave_api_aquí>
y<tu_secreto_api_aquí>
con los valores reales proporcionados por Bitvavo.com.Además, ten en cuenta que el método
Bitvavo ()
acepta varios parámetros opcionales, comorest_url
,websocket_url
ytimeout
. Puedes ver sus descripciones en la documentación proporcionada por Bitvavo.com.¡Espero que esto te ayude a resolver el problema y poner en marcha tu bot!</tu_secreto_api_aquí></tu_clave_api_aquí></tu_secreto_api_aquí></tu_clave_api_aquí>