Il s'agit d'un petit programme développé par les utilisateurs du site afin d'implémenter une stratégie d'investissement. Dans ce programme, vous devez calculer une valeur pour chaque période de temps où votre indicateur est considéré. Pour ce faire, vous avez accès à toutes les informations de marché de base : cours d'ouverture, de cloture, plus haut, plus bas et volume de transaction de la période. Il a également accès aux résultats de tous les indicateurs standards tradrz (les mêmes que ceux que vous utilisez déjà pour créer vos signaux d'achat / vente ou pour tracer vos graphes). Vous pouvez également utiliser tous les indicateurs personnels que vous auriez développé au préalable.
Les indicateurs personnels tradrz doivent être écrits dans un sous-ensemble du langage de programmation PHP. Plus d'informations sur ce langage et les fonctions utilisables dans le cadre de tradrz sont disponibles au paragraphe 3
Lorsque vous écrivez un indicateur personnel, votre objectif est de calculer une valeur de votre indicateur pour chaque période de temps pour lesquelles il est observé. La liste des périodes de temps de votre indicateur est toujours la même que celle des données de base que vous recevez. Pour calculer une valeur pour votre indicateur, vous pouvez appliquer aux données de base des opérations arithmétiques simples, des fonctions mathématiques (voir la liste [lien]) ou même le résultat du calcul d'autres indicateurs. Prenons un exemple simple:
foreach($context->close as $date => $close) {
$context->data[$date] = $close * 2;
}
Dans cet exemple, nous effectuons une boucle sur toutes les valeurs de cloture (les valeurs de base sont toujours triées dans l'ordre chronologique donc nous n'avons pas à nous préocuper de leur ordre). Pour chaque période, nous obtenons 2 variables:
Puis, nous effectuons un calcul simple qui est de multiplier cette valeur de cloture par 2 et nous stockons le résultat dans notre indicateur. Maintenant, quelque soit l'action , la période et l'unité de temps auxquels nous appliquerons cet indicateur, il vaudra toujours 2 fois la valeur de cloture.
L'objet $context est l'objet par lequel vous allez pouvoir intéragir avec la plate-forme tradrz. Il contient à la fois les données de marché, les paramètres de vos indicateurs ainsi que l'endroit où vous pourrez stocker les valeurs calculées de vos indicateurs.
Lorsque vous créez un paramètre pour votre indicateur, tradrz ajoute automatiquement une nouvelle propriété à l'objet $context portant le nom de ce paramètre. Par exemple, imaginons que vous souhaitez ajouter un paramètre appelé "range" à votre nouvel indicateur. Une fois ce paramètre ajouté via le lien "ajouter un paramètre" de l'interface, vous pourrez accéder à sa valeur dans votre code par $context->range.
NB : c'est pour cette raison que les noms de paramètres ne peuvent avoir que des caractères alphanumériques.
Une fois le traitement de votre indicateur terminé, la propriété $context->data doit contenir un tableau indexé par les périodes stockant les valeurs pour chaque période de votre indicateur. C'est cette propriété qui sera utilisée par tous les sous-systèmes tradrz (graphes, alertes, signaux...) pour lire les valeurs de votre indicateur.
Parfois, vous avez besoin pour implémenter votre indicateur d'utiliser des indicateurs déjà existants (un ROC ou une moyenne mobile par exemple). Vous n'avez pas besoin de redévelopper ces calculs. Il vous suffit de coller dans votre code un indicateur existant (soit standard tradrz soit un indicateur personnel que vous aurez développé au préalable) à l'aide de la palette présente sur le côté gauche de l'interface utilisateur. Vous verrez alors apparaître cet indicateur dans la ligne au-dessus de la fenêtre d'édition du code source de votre indicateur. Il est représenté par un nom (SMA1 par exemple dans le cas d'une moyenne mobile simple) et ses paramètes. A partir de ce moment, une variable portant le nom de cet indicateur ($SMA1 dans notre exemple) est accessible dans votre code. Cette variable est un tableau indexé par les périodes et contenant la valeur de l'indicateur pour chacune des périodes.
PHP est un language de programmation extrêmement populaire dans le développement d'applications web. Une description synthétique du language peut être trouvée sur wikipedia à l'adresse http://fr.wikipedia.org/wiki/PHP
Pour des raisons de sécurité. PHP est un langage très puissant et beaucoup de cette puissance n'a pas beaucoup d'emploi pour le calcul d'indicateurs techniques. Il n'est par exemple pas nécessaire de pouvoir supprimer des fichiers ou lancer des programmes externes pour calculer une moyenne mobile ! En conséquence, tout le code écrit par les utilisateurs sera exécuté, non pas sur l'environnement principal servant à afficher le site, mais sur un environnement dédié. Cet environnement dédié a été volontairement restreint pour ne pouvoir exécuter que les fonctions utiles pour des calculs d'analyse technique. La liste des fonctions utilisables est disponible dans les paragraphes suivants.
Voir la documentation officielle du langage.
Voir la documentation officielle du langage
Voir la documentation officielle du langage