Exécuter des scripts IA Python dans la plateforme de trading : TradingInPython avec Keras et JAX

La plateforme devient un interpréteur de scripts écris en Python, un langage simple et facile à s'approprier.

Dans cet article, je vous montre comment exécuter un agent IA de trading, un agent qui utilise les modules IA, Keras et JAX.

Le Script Runner de TradingInPython

Ces le composant logiciel qui exécute vos scripts, il utilise les capacités du langage Python afin d'exécuter soit un script compilé, soit le script lui même non compilé. On dit dans ce cas que le script est interprété.

La plateforme vous permet d'exécuter vos scripts.

L'interpréteur de scripts est décrit dans la documentation technique :

TradingInPython - Interpréteur de scripts

Exécution du script Python agent_ai.py sur la plateforme
Exécution du script Python agent_ai.py sur la plateforme

Injection de l'API TradingInPython

Le côté intéressant de l'interaction entre votre scripts et l'API de TradingInPython, c'est que la plateforme va pouvoir transmettre à votre script des données, comme la Nom de la Stock analysée (nom de l'action), son "ticker", des données sur le cours de cette action OHLCV (Open, High, Low, Close, Volume).

L'API permet de transmettre également des "screeners", c'est à dire des listes d'actions réalisée par l'utilisateur (vous). Vous pouvez ainsi définir des listes sur lesquelles vous allez déclencher vos scripts.

Retrouvez comment utiliser l'API TradingInPython dans :

TradingInPython - Utilisation de l'API des données plateforme

Création de l'agent IA

Nous allons maintenant créer un agent IA qui va travailler sur les données transmises par la plateforme.

Cet agent IA commence par calculer des indicateurs techniques sur les données du cours de bourse de la stock : RSI, MACD et le STOCH comme dans l'article suivant :

Trouver un point d’entrée avec le MACD et le Stochastique, confirmé par le RSI

Pour l'exécution d'un agent IA utilisant Keras il y a toujours 5 phases :

  • calcul préalables sur les data et leur mise en forme
  • la préparation des données pour l'exécution du model 
  • la création du model proprement dit avec ses différentes couches
  • l'entrainement du model
  • la prédiction

Ici notre prédiction calcule un Score comprise entre 0 et 1 et délivre un Signal : BUY/SELL/HOLD.

Le Score délivré par le script est pilotable par deux constantes :

BUY_THRESHOLD  = 0.60
SELL_THRESHOLD = 0.40

Que vous pouvez ajuster à votre guise en fonction de votre backtesting.

Résultat de l'exécution de l'agent IA

Dans la console de la plateforme vous obtenez les résultats suivants :
[Test] loss=0.6878  MAE=0.3539

-- Réglages --
  Seuil d'achat  : 0.6
  Seuil de vente : 0.4

-- Signal de trading pour : STELLANTIS --
  Score    : 0.489
  Signal   : HOLD
  RSI      : 44.99
  MACD     : -0.0539
  STOCH_K  : 26.92

-- Validation du modèle --
Epochs effectuées : 13
Meilleure val_loss : 0.6907
Modèle rejeté : val_loss trop élevée, réentraîner le modele avec plus de données ou ajuster les hyperparamètres.
[INFO] Script terminé.

Aujourd'hui le Signal de notre agent IA pour STELLANTIS est à : HOLD.

Utilisation de Keras IA avec le backend JAX plus léger que Tensorflow

L’un des aspects les plus intéressants de l’agent IA agent_ia.py est l’utilisation de Keras avec le backend JAX directement à l’intérieur de TradingInPython.

Contrairement aux anciennes architectures basées exclusivement sur TensorFlow, Keras 3 permet désormais de choisir différents moteurs de calcul ("backends") :

  • TensorFlow
  • JAX
  • PyTorch

Dans TradingInPython, le choix a été fait d’utiliser JAX comme moteur d’exécution :

import os
os.environ["KERAS_BACKEND"] = "jax"

Ce backend est ensuite utilisé via keras_core de la façon suivante :

import keras_core as keras
from keras_core import layers, callbacks

Pourquoi utiliser JAX ?

JAX est une librairie développée par Google orientée :

  • calcul scientifique haute performance
  • accélération GPU/TPU
  • compilation optimisée
  • différentiation automatique
  • machine learning moderne

L’objectif de JAX est de fournir un moteur numérique extrêmement rapide tout en conservant une syntaxe proche de NumPy, avec :

  • compilation XLA
  • vectorisation automatique
  • accélération matérielle

Pourquoi ne pas utiliser directement TensorFlow ?

Pendant longtemps, TensorFlow était pratiquement obligatoire avec Keras.

Mais les nouvelles versions de Keras ont évolué vers une architecture multi-backends beaucoup plus moderne.

Dans le cadre de TradingInPython, JAX présente plusieurs avantages :

TensorFlow JAX
Framework très lourd Architecture plus légère
Écosystème historique complexe API plus moderne
Intégration GPU parfois délicate Compilation XLA très efficace
Beaucoup de dépendances Runtime plus compact
Orienté production IA généraliste Excellent pour calcul scientifique et séries temporelles

Keras Core : une couche d’abstraction moderne

Dans TradingInPython, les modèles IA sont construits avec keras_core.

Cela permet d’écrire :

model = keras.Sequential([
   layers.Dense(128, activation="relu"),
   layers.Dropout(0.3),
   layers.Dense(1, activation="sigmoid")
])

sans dépendre directement d’un backend spécifique.

Le même modèle pourrait théoriquement fonctionner avec :

  • TensorFlow
  • JAX
  • PyTorch

simplement en changeant :

os.environ["KERAS_BACKEND"]

Cette séparation entre l'API Keras et le moteur d’exécution représente une évolution importante dans l’écosystème IA Python.

Code Source en Python

Retrouver tout ce que nous venons d'évoquer dans le script Python :

TradingInPython - Github - PyTrading - agent_ai.py

Vers une plateforme IA-native

Avec cette architecture, TradingInPython évolue progressivement vers une plateforme IA-native capable de :

  • charger dynamiquement des agents IA
  • utiliser des modèles Keras/JAX
  • manipuler directement des DataFrames Pandas
  • combiner analyse technique et machine learning
  • créer des stratégies de trading entièrement programmables en Python

L’objectif n’est plus seulement d’afficher des graphiques, mais de fournir un véritable environnement de recherche et d’expérimentation pour le trading algorithmique moderne.

Plateforme de trading technique

Pensez à faire vos analyses de trading technique avec la plateforme : TradingInPython.


Commentaires

TOC

Posts les plus consultés de ce blog

SOITEC - Analyse de la Smart Money

DASSAULT AVIATION

Indicateurs Boursiers

LEGRAND

Termes boursiers

Vusion S.A.

STELLANTIS

Plan de trading