Tradovate

Créer un indicateur personnalisé dans Tradovate (JavaScript)

Aucune des études intégrées de Tradovate ne trace exactement ce que vous voulez ? Voici comment coder votre propre indicateur en JavaScript avec le Code Explorer, d'un simple décalage en deux lignes jusqu'à une véritable moyenne mobile.

On This Page

Vous avez parcouru les études intégrées de Tradovate et aucune ne trace exactement ce que vous voulez. Bonne nouvelle : vous pouvez écrire la vôtre. Toute la plateforme repose sur JavaScript, graphiques compris, et vous donne un éditeur ouvert appelé Code Explorer où vous codez un indicateur, l'enregistrez et le placez sur un graphique comme n'importe quelle étude intégrée. Ce guide vous accompagne, d'un simple décalage en deux lignes jusqu'à une véritable moyenne mobile.

Que sont les indicateurs personnalisés Tradovate ?

Tradovate Trader exécute le même JavaScript sur le web, le bureau et le mobile ; le moteur graphique et chaque étude intégrée sont donc du JavaScript en coulisses. Les indicateurs personnalisés vous exposent simplement cette même API. Un indicateur est un petit module qui exporte deux choses : un name qui l'identifie et une classe calculator dotée d'une méthode map(). map() prend chaque barre de la série et renvoie un nombre, que le graphique trace. Partez de zéro, copiez une étude intégrée et modifiez-la, ou installez-en une mise en ligne par quelqu'un d'autre ; les valeurs peuvent s'afficher sur un graphique ou sur le DOM.

Créer un indicateur personnalisé : étape par étape

1

Ouvrez le module Code Explorer

L'éditeur est intégré à la plateforme dans son propre panneau. Ajoutez le module Code Explorer à votre espace de travail, comme vous ajouteriez un graphique ou un DOM, en le faisant glisser depuis la liste des modules. Une fois ancré, vous disposez d'une arborescence de fichiers avec le code source des indicateurs propres à Tradovate d'un côté et d'un éditeur de l'autre. Ce code source intégré est votre meilleur aide-mémoire : ouvrez une étude qui vous plaît et lisez comment elle est construite.

2

Démarrez un nouveau fichier d'indicateur

Le Code Explorer étant actif, ouvrez File → New dans la barre supérieure. Vous obtenez un éditeur vide dans lequel saisir votre code. Rien n'est encore relié : un fichier vide n'apparaîtra nulle part tant que vous n'aurez pas exporté une définition correcte, ce qui est l'étape suivante.

3

Écrivez le calculator

Voici le plus petit indicateur qui fasse réellement quelque chose : une ligne décalée d'une valeur fixe sous le prix. Imaginons que vous souhaitiez une référence approximative de stop loss placée deux points sous chaque barre ; voir l'exemple de code ci-dessous. Deux éléments : le bloc module.exports enregistre l'indicateur, name est un identifiant machine (restez simple) et calculator pointe vers votre classe. La classe doit comporter au moins une méthode map(). Tradovate l'appelle une fois par barre, en parcourant toute la série ; d.value() vous donne la valeur d'entrée de cette barre, et ce que vous renvoyez est tracé. Enregistrez le fichier et il apparaît dans la liste des indicateurs du graphique sous le nom EXAMPLEOFFSET, le nom en majuscules, en traçant une simple ligne sous le prix.

4

Ajoutez des entrées et réutilisez les outils intégrés

Une valeur fixe est limitante. Les vrais indicateurs acceptent des entrées utilisateur, et vous avez rarement besoin d'écrire les calculs à la main. Tradovate fournit un dossier tools rempli d'algorithmes prêts à l'emploi que vous importez avec require. Voici une moyenne mobile exponentielle complète, bâtie sur l'assistant EMA fourni, avec une période ajustable ; voir l'exemple de code ci-dessous. Quelques éléments nouveaux : require importe predef, les préréglages partagés de paramètres et de styles de Tradovate, ainsi que l'algorithme EMA du dossier tools, la même source que vous pouvez ouvrir dans le Code Explorer. init() s'exécute une fois avant la boucle pour construire le calculateur EMA à la période choisie ; map() lui transmet ensuite la valeur de chaque barre. La ligne params ajoute un champ ajustable period valant 10 par défaut, schemeStyles colore la ligne en rouge et tags la classe sous "My Indicators" dans le menu.

5

Enregistrez-le et ajoutez-le à votre graphique

Enregistrez le fichier et passez à un graphique. Ouvrez la liste Indicators, repérez votre indicateur grâce à son nom en majuscules et ajoutez-le comme n'importe quelle étude intégrée. S'il acceptait un period, vous verrez ce champ dans ses paramètres, modifiable pour chaque graphique. Vous préférez ne pas coder du tout ? Tradovate vous permet aussi de recourir à Explore Community Indicators : parcourez les études partagées par d'autres traders, consultez les détails et le nombre de téléchargements, puis installez-en une directement dans votre menu d'indicateurs en quelques clics.

class offset {
    map(d) {
        return d.value() - 2.0;
    }
}

module.exports = {
    name: "exampleOffset",
    calculator: offset
};

const predef = require("./tools/predef");
const EMA = require("./tools/EMA");

class ema {
    init() {
        this.emaAlgo = EMA(this.props.period);
    }

    map(d) {
        return this.emaAlgo(d.value());
    }
}

module.exports = {
    name: "exampleEma",
    description: "My EMA",
    calculator: ema,
    params: {
        period: predef.paramSpecs.period(10)
    },
    tags: ["My Indicators"],
    schemeStyles: predef.styles.solidLine("red")
};

Vous préférez les signaux à la syntaxe ?

Coder un indicateur vous donne une vue personnalisée du marché, mais un indicateur ne fait que tracer. Il ne peut pas appuyer sur la détente. Si votre objectif est d'agir sur un signal à l'instant où il se déclenche, c'est un autre travail : PickMyTrade achemine vos alertes TradingView directement vers Tradovate sous forme d'ordres réels, pour que votre stratégie trade toute seule.

Automatisez vos entrées sur Tradovate

Un indicateur ne fait que tracer, il ne peut pas appuyer sur la détente. PickMyTrade achemine vos alertes TradingView directement vers Tradovate sous forme d'ordres réels, pour que votre stratégie trade toute seule.

Commencez votre essai gratuit de 7 jours

Questions fréquentes

Un peu de connaissance aide, mais vous n'avez pas à partir d'une page blanche. Le Code Explorer fournit le code source des études propres à Tradovate ; le plus simple est donc d'en ouvrir une proche de ce que vous voulez, de la copier et de modifier les parties que vous comprenez. Les deux exemples ci-dessus, une ligne décalée et une moyenne mobile, sont à peu près ce qu'il y a de plus simple.

Non. Un indicateur personnalisé ne fait que calculer des valeurs et les tracer sur le graphique ou le DOM. Il ne peut pas envoyer d'ordres de lui-même. Pour agir automatiquement sur un signal, il vous faut une couche d'automatisation distincte qui surveille la condition et achemine l'ordre.

Ce guide est fourni à des fins exclusivement pédagogiques et informatives et ne constitue ni un conseil financier, ni un conseil en investissement, ni un conseil de trading. Le trading de contrats à terme et d'autres produits à effet de levier comporte un risque de perte important et ne convient pas à tous les investisseurs. PickMyTrade est une plateforme d'automatisation tierce indépendante et n'est ni affiliée à Tradovate, Inc., ni approuvée, ni parrainée par cette dernière. « Tradovate » ainsi que tous les noms, logos et marques associés sont la propriété de leurs détenteurs respectifs. Les fonctionnalités et les étapes de la plateforme évoluent avec le temps ; vérifiez donc toujours la procédure en vigueur dans la plateforme et la documentation officielles de Tradovate avant d'agir.