wetrade
: Une bibliothèque E-Trade Python conçue pour le trading automatisé d'actions wetrade
wetrade
est une bibliothèque API E-Trade non officielle initialement créée pour être utilisée dans les systèmes de trading sans tête. Il offre de nombreuses fonctionnalités intégrées utiles et a été conçu pour être flexible et extensible et pour répondre à une grande variété de besoins en matière de négociation d'actions.
Les fonctionnalités incluent :
wetrade
Pour notre documentation complète, consultez : https://wetrade.readthedocs.io/en/latest/.
wetrade
Pour accéder à l'API E-Trade, vous devrez suivre les 4 étapes détaillées sur la page de démarrage du développeur E-Trade, puis demander une clé API via la page liée. Il est également recommandé d'activer les données en temps réel dans le centre d'abonnement afin de ne pas recevoir de devis en retard.
Installez wetrade
:
C'est une bonne idée de créer un nouvel environnement virtuel pour un nouveau projet Python
# create venv
python3 -m venv venv
# enter venv
source venv/bin/activate
Nous pouvons ensuite installer wetrade
dans notre venv. Pour une connexion automatique, nous devrons également installer notre navigateur.
pip install wetrade
playwright install firefox
Ensuite, vous commencerez en un rien de temps en utilisant notre nouveau script de projet automatisé !
python -m wetrade new-project
Vous verrez maintenant une poignée de fichiers dans le répertoire de votre projet, y compris un fichier settings.py dans lequel vous entrerez vos informations d'utilisateur et d'API et aurez la possibilité de configurer divers paramètres wetrade
.
En plus de settings.py , nous avons également créé un fichier Docker pour un déploiement facile, ainsi qu'un fichier requirejs.txt et un exemple de fichier main.py qui illustre une utilisation de base de wetrade :
main.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
a été initialement conçu pour fonctionner sans interface graphique et intègre une gestion intégrée des erreurs de courtage, de serveur et d'API les plus attendues. Cette fonctionnalité et la majorité des autres fonctionnalités wetrade
sont entièrement facultatives à utiliser, et notre structure modulaire vous permet d'utiliser autant ou aussi peu de la bibliothèque que vous le souhaitez. Notre objectif est d'ajouter constamment de nouvelles fonctionnalités pour prendre en charge des cas d'utilisation supplémentaires. Si vous avez des commentaires ou des suggestions de nouvelles fonctionnalités, n'hésitez pas à créer un problème ou à contacter : [email protected]. Nous avons également créé un serveur Discord sur lequel vous pouvez obtenir de l'aide ou simplement discuter avec d'autres utilisateurs wetrade
.
Avertissement : wetrade est une bibliothèque API non officielle et ne comporte aucune garantie d'aucune sorte. Il n'est en aucun cas approuvé ou affilié à E*TRADE Financial ou à toute organisation associée. Assurez-vous de lire et de comprendre les conditions de service de l'API sous-jacente avant d'utiliser ce package. Les auteurs n'acceptent aucune responsabilité pour tout dommage qui pourrait découler de l'utilisation de ce package. Voir le fichier LICENSE pour plus de détails.