créer une fonction dans prorealtime
Forums › ProRealTime forum Français › Support ProOrder › créer une fonction dans prorealtime
- This topic has 12 replies, 4 voices, and was last updated 2 years ago by julian_hdp.
-
-
08/06/2020 at 6:09 PM #141025
Bonjour, dans beaucoup de langages de programmation il est possible d’utiliser des fonctions, comme ça par exemple:
function1234567function add (a, b) {return a + b}add(3,4) // renvoie 7est-t il possible de faire la même chose dans un backtest prorealtime ?
Merci d’avance !
Vivien
08/07/2020 at 7:19 AM #141031> Merci de renseigner votre pays dans votre page de profile ! <<
Non, pas sous cette forme. Toutefois, tu peux créer un code à part, et faire un CALL avec les variables en paramètres. Si besoin d’aides ou d’un exemple, n’hésite pas 😉
08/07/2020 at 12:26 PM #141063Ok je vois l’idée je vais tester ça, merci à toi Nicolas !
(Et j’ai bien mis à jour le pays dans mon profil)
Bonne journée bon week-end
06/28/2022 at 4:58 PM #19633206/28/2022 at 6:47 PM #19634006/28/2022 at 7:05 PM #19634206/29/2022 at 8:34 AM #196354Voici un exemple simple, si tu veux délocaliser un calcul de division dans une fonction (ici A divisé par B), commence par créer ta fonction dans un indicateur que tu nommes “fonction_division” avec des paramètres externes A et B:
indicateur qui sera appelé via un CALL123resultat = A / Breturn resultatcet indicateur sera appelé dans ton code principal de cette manière :
1resultat = CALL "fonction_division"[A,B]tu pourras donc faire varier les valeurs de A et B dans ton code principal pour obtenir des résultats de division, sans devoir les réécrire. Bien sûr ici c’est un code très simple (une division !), mais c’est bien plus utile quand tu voudras créer des fonctions qui comporte des dizaines de lignes que tu dois utiliser X fois dans le même programme.
Pour information, les “vrais” fonctions tel qu’on les connaît dans les autres langages de programmation sont à l’étude et devraient être implantés dans ProBuilder.
06/29/2022 at 12:04 PM #196368Merci beaucoup. Belle subtilité en passant par les indicateurs 🙂 Oui, bien sûr mon code est beaucoup plus ompliqué qu’un calcul et pourra être repris dans plusieurs programmes (robot) au lieu de tout écrire à chaque fois, et de modifier dans chaque robot en cas de modif. Je suis informaticien si cela peut rassurer. Dernière question, c’est possible de passer (ou récuperer dans la fonction) un paramètre du programme pricnicpal dans la fonction? Par exemple envoyer un prix calculer et que la fonction pourra recevoir. Encore merci, cela est très utile pour moi. Bonne idée de le faire dans une prochaine version, super.
06/29/2022 at 1:41 PM #19637406/29/2022 at 4:15 PM #19639211/09/2022 at 9:41 PM #203884Bonjour,
J’ai essayé très simplement de coder une fonction de la façon suivante, j’ai crée un indicateur test_RSI avec le code :
12MyRSI = RSI[A](close)return MyRSIMais à la validation, il me demande de définir la variable A, alors que c’est une variable que je veux passer plus tard par appel à la fonction dans un probacktest avec par exemple :
1resultat = CALL "test_RSI"[21]Pourquoi ne puis-je pas valider mon indicateur?
Merci de votre aide.
11/10/2022 at 8:44 AM #203906Il faut ajouter ta variable A dans la fenêtre des variables externes, ainsi tu pourras passer la valeur à ton indicateur/fonction lors de ton CALL (la valeur “21” doit aboutir dans A).
1 user thanked author for this post.
11/10/2022 at 12:23 PM #203937Ca fonctionne! merci beaucoup.
-
AuthorPosts
Find exclusive trading pro-tools on