Comment écrire un robot de trading: des outils pour les débutants



Le sujet des systèmes automatisés pour le commerce en bourse est très populaire dans RuNet au cours des dernières années. Cependant, il peut être difficile pour les investisseurs novices de créer leur propre robot de trading. Aujourd'hui, nous allons discuter de la façon dont cela peut être fait sans coûts inutiles.

Remarque : toute activité d'investissement sur la bourse est associée à un certain risque, celui-ci doit être pris en compte. De plus, pour lancer votre robot de trading, vous aurez besoin d'un compte de courtage, vous pouvez l'ouvrir en ligne . Vous pouvez déboguer votre stratégie en utilisant l' accès de test avec de l'argent virtuel .

Options de création de robots


Il existe plusieurs options pour créer un logiciel robotique pour le trading sur la bourse:

  • Créer des robots pour travailler sur une connexion directe - de tels systèmes fonctionnent en contournant le système de trading du courtier, envoyant des applications directement au "moteur" du système de trading de la bourse. Cette option est déjà utilisée par les commerçants expérimentés qui sont prêts à payer, y compris pour une telle méthode de connexion .
  • Connexion au système de courtage par API. Certains courtiers vous permettent de connecter un logiciel de trading externe à leurs systèmes de trading à l'aide d'interfaces spéciales. Les clients ITI Capital peuvent le faire en utilisant l'API SMARTcom . Dans ce cas, les robots peuvent être assez complexes.
  • Automatisation des opérations directement dans le terminal de trading. Le moyen le plus simple, adapté aux débutants, consiste à automatiser le trading directement dans le programme de base de tout opérateur - le terminal.

Aujourd'hui, nous considérerons la troisième option, car elle est la plus simple.

Comment cela fonctionnait avant


Les terminaux commerciaux des générations précédentes pourraient être intégrés à divers outils d'automatisation. L'un des plus populaires, curieusement, était Excel à l'époque. Avec son aide, les traders pouvaient configurer l'exportation de données depuis le terminal de trading, ainsi que recevoir des ordres de trading.



Menu pour connecter Excel à l'un des terminaux de trading de la génération précédente

Il était également courant chez les commerçants de connecter de puissants systèmes d'analyse technique et de développement de robots tels que WealthLab et MetaStock à leurs terminaux. Dans de tels cas, l'intégration se fait généralement à l'aide de bibliothèques supplémentaires.

Dans ces cas, le trader a eu l'opportunité d'automatiser et, dans le cas de MetaStock et WealthLab, la création de systèmes de trading plutôt complexes, mais les liens vers des programmes externes étaient souvent peu fiables. Au fil du temps, ce problème a été résolu - dans certains terminaux de trading, des langages de programmation intégrés sont apparus.

Comment ça marche maintenant: apprentissage de TradeScript


De nos jours, le moyen le plus simple de créer un robot de trading simple fonctionnant avec un système de courtage sur le marché russe est d'utiliser le terminal SMARTx.

Il dispose d'un plugin spécial avec le concepteur de robots commerciaux TradeScript. En utilisant un langage de script simple mais assez puissant, les traders peuvent créer des systèmes mécaniques de différents niveaux de complexité. Le langage a été créé à l'origine pour le développement de robots de trading, il est assez facile à apprendre et de nombreux algorithmes sont similaires par écrit à Metastock, ce qui facilite la tâche des utilisateurs familiarisés avec ce progiciel.



L'avantage de TradeScript par rapport à Wealth-Lab et au même Metastock est l'absence de la nécessité de créer des conceptions complexes et d'utiliser divers connecteurs pour transférer les ordres vers le terminal de trading. Le concepteur de robot est intégré à SMARTx, ce qui permet d'atteindre une fiabilité et une vitesse considérablement plus élevées.

Voici un exemple de stratégie de trading écrite en TradeScript:

Buy Signals # ,        TREND(EMA(CLOSE, 20), 15) = UP AND TREND(MACD(13, 26, 9, SIMPLE), 5) = UP Sell Signals # ,        TREND(EMA(CLOSE, 20), 15) = DOWN AND TREND(MACD(13, 26, 9, SIMPLE), 5) = DOWN Exit Long Signal # ,         TREND(EMA(CLOSE, 20), 15) = DOWN OR TREND(MACD(13, 26, 9, SIMPLE), 5) = DOWN Exit Short Signal # ,         TREND(EMA(CLOSE, 20), 15) = UP OR TREND(MACD(13, 26, 9, SIMPLE), 5) = UP 

Dans un package avec TradeScript, il fournit également un module de backtesting qui vous permet d'évaluer les performances de la stratégie décrite sur les données historiques. Entre autres choses, le système met en œuvre la fonction de test du système de trading à la volée en utilisant les données de change actuelles, mais sans passer de commande à la bourse - l'heure d'une transaction virtuelle, le prix et la «rentabilité» qui en résulte seront affichés dans une fenêtre séparée.



De plus, l'utilisateur peut exécuter autant d'algorithmes exécutés simultanément que le permettent la vitesse d'horloge du processeur et la mémoire de l'ordinateur. Étant donné le grand nombre de mots et d'opérandes du langage de script, cela signifie la possibilité de créer des stratégies de négociation arbitrairement complexes.

Quoi d'autre: débogage sur l'accès de test


L'utilisation de la fonctionnalité intégrée pour développer des robots de trading dans le terminal de trading est un moyen pratique et fiable d'automatiser le trading. Cependant, malgré les fonctions existantes pour tester les stratégies, vous ne devez pas négliger les capacités de débogage supplémentaires.

Par conséquent, nous vous recommandons, avant de lancer une stratégie de trading d'argent réel, de la «lancer» sur l'accès de test . Cette étape vous permettra de déboguer tous les aspects, y compris la réaction du programme aux transactions terminées, sans risque de pertes financières réelles. L'utilisation de l'analyse à l'aide de données historiques, de la vérification à la volée et de l'accès aux tests vous permettra de déboguer complètement votre stratégie.

Liens utiles sur le thème de l'investissement et de la bourse:


Source: https://habr.com/ru/post/fr470233/


All Articles