La création de nouvelles fonctions est une des fonctionnalités les plus avancées de SystemTrader, et est rarement indispensable. Il s'agit toutefois d'un outil puissant qui peut faciliter la construction d'indicateurs et de systèmes de trading plus complexes.
Une fonction dans SystemTrader est une unité d'exécution qui prend un ou plusieurs arguments, et qui retourne une ou plusieurs valeurs.
Créer une nouvelle fonction
Cliquez sur l'icône de création de nouvelle fonction, soit la deuxième icône en partant de la droite sous l'onglet "Systèmes" :

Code de la fonction
Une fonction doit tout d'abord récupérer ses arguments, qui se trouvent dans la variable "Args". La première ligne d'une fonction sera donc toujours de la forme :
1 |
Argument1, Argument2, Argument3 = Args |
S'il n'y a qu'un seul argument, il faudra tout de même utilisé un signe "," entre Argument1 et le signe "=".
La fonction effectue ensuite un certainement nombre d'opérations, jusqu'à retourner une ou plusieurs valeurs. Par exemple, la fonction suivante calculera la somme des éléments de son argument unique, et est donc équivalente à la fonction de séquence "sum" :
1 |
Values, = Args
S = 0 for V in Values: S += V
return S |
Utiliser la fonction
Une fois construite, la fonction s'utilise comme n'importe quelle autre fonction numérique, ou de séquence. Voir 2.5 Fonctions numériques et 2.8 Fonctions de séquences.