wetrade
: una biblioteca Python de comercio electrónico creada para el comercio de acciones automatizado wetrade
wetrade
es una biblioteca API de comercio electrónico no oficial creada inicialmente para su uso en sistemas comerciales sin cabeza. Proporciona una gran cantidad de funciones integradas útiles y fue diseñado para ser flexible y extensible y para adaptarse a una amplia variedad de necesidades de negociación de acciones.
Las características incluyen:
wetrade
Para obtener nuestra documentación completa, consulte: https://wetrade.readthedocs.io/en/latest/.
wetrade
Para acceder a la API de E-Trade, deberá seguir los 4 pasos detallados en la página de inicio para desarrolladores de E-Trade y luego solicitar una clave API a través de la página vinculada. También se recomienda que habilite los datos en tiempo real en el centro de suscripción para no recibir cotizaciones retrasadas.
Instalar wetrade
:
Es una buena idea crear un nuevo entorno virtual para un nuevo proyecto de Python.
# create venv
python3 -m venv venv
# enter venv
source venv/bin/activate
Luego podemos instalar wetrade
en nuestro venv. Para iniciar sesión automáticamente, también necesitaremos instalar nuestro navegador.
pip install wetrade
playwright install firefox
A continuación, ¡comenzará en poco tiempo a utilizar nuestro script de nuevo proyecto automatizado!
python -m wetrade new-project
Ahora verá un puñado de archivos en el directorio de su proyecto, incluido un archivo settings.py donde ingresará su información de usuario y API y tendrá la opción de configurar varias configuraciones wetrade
.
Además de settings.py, también hemos creado un Dockerfile para una fácil implementación, así como un require.txt y un archivo de ejemplo main.py que demuestra algunos usos básicos de wetrade:
principal.py
from wetrade . api import APIClient
from wetrade . account import Account
from wetrade . quote import Quote
from wetrade . order import LimitOrder
from wetrade . utils import setup_cloud_logging
def main ():
# Setup cloud logging (optional) and APIClient
setup_cloud_logging ()
client = APIClient ()
# Check out your account
account = Account ( client = client )
print ( 'My Account Key: ' , account . account_key )
print ( 'My Balance: ' , account . check_balance ())
# Get a stock quote
quote = Quote ( client = client , symbol = 'IBM' )
print ( f'Last { quote . symbol } Quote Price: ' , quote . get_last_price ())
# Place some orders and stuff
order1 = LimitOrder (
client = client ,
account_key = account . account_key ,
symbol = 'NVDA' ,
action = 'BUY' ,
quantity = 1 ,
price = 50.00 )
order1 . place_order ()
order1 . run_when_status (
'CANCELLED' ,
func = print ,
func_args = [ 'Test message' ])
order2 = LimitOrder (
client = client ,
account_key = account . account_key ,
symbol = 'NFLX' ,
action = 'BUY' ,
quantity = 1 ,
price = 50.00 )
order2 . place_order ()
order2 . run_when_status (
'CANCELLED' ,
order1 . cancel_order )
order2 . cancel_order ()
if __name__ == '__main__' :
main ()
wetrade
fue diseñado inicialmente para ejecutarse sin cabeza y tiene manejo integrado para la mayoría de los errores esperados de corretaje, servidor y API. Esta y la mayoría de las otras funciones wetrade
son completamente opcionales y nuestra estructura modular le permite utilizar tanto o tan poco de la biblioteca como desee. Nuestro objetivo es agregar constantemente nuevas funciones para admitir casos de uso adicionales. Si tiene algún comentario o sugerencia sobre nuevas funciones, no dude en crear un problema o comunicarse con: [email protected]. También hemos creado un servidor de Discord donde puede obtener ayuda o simplemente chatear con otros usuarios wetrade
.
Descargo de responsabilidad: wetrade es una biblioteca API no oficial y no ofrece garantía de ningún tipo. No cuenta con el respaldo ni está afiliado de ninguna manera a E*TRADE Financial ni a ninguna organización asociada. Asegúrese de leer y comprender los términos de servicio de la API subyacente antes de utilizar este paquete. Los autores no aceptan ninguna responsabilidad por cualquier daño que pueda derivarse del uso de este paquete. Consulte el archivo de LICENCIA para obtener más detalles.