Prix à une heure donnée codée
Forums › ProRealTime forum Français › Support ProOrder › Prix à une heure donnée codée
- This topic has 44 replies, 3 voices, and was last updated 6 years ago by Zakmeb.
-
-
08/16/2018 at 10:13 AM #78349
Quelles sont les niveaux de prix où tu cherches à acheter / vendre dans ton code ? Je vois que tu en calcules certains mais qu’ils ne sont pas utilisés. Par ailleurs, dans cette stratégie, tu ouvres une position sans aucune condition et tu la fermes immédiatement à la barre d’après, toujours sans aucune condition.
Pour placer des ordres conditionnels à des niveaux de prix calculés, tu peux utiliser les ordres STOP ou LIMIT, voir dans la documentation:
08/19/2018 at 9:22 PM #78611Bonsoir Nicolas,
Désolé de te répondre si tardivement. J’ai noté tes remarques et je suis en train de travailler dessus. Je te reviens dès que j’ai d’autres questions et/ou un autre code à soumettre à ta correction.
Merci encore pour ton assistance.
ZM.
08/23/2018 at 3:48 PM #78856Bonjour Nicolas,
Le but de mon indicateur est de simplement donner comme résultat le prix lorsque les courbes du supertrend et des prix se croisent. Il m’envoie un message comme quoi il y a trop d’itération, le programme tourne en boucle. J’ai surement mal codé.
Price/ crosse line1234567891011121314151617181920212223242526272829P=close[i]i=0C1=(P crosses under supertrend[3,10])C2=(P crosses over supertrend[3,10])if C1 thensignal=1elsesignal=0endifif C2 thensignal=-1elsesignal=0endifif signal=0 thenwhile signal=0 doi=i+1continuewendelsif signal=1 or signal=-1 thenP=close[i]endifReturn PMerci pour ton aide.
08/23/2018 at 3:57 PM #7885708/24/2018 at 8:25 AM #78897Dans ton premier code, tu utilises l’instruction ‘continue’ qui n’existe pas en langage ProBuilder. Si la boucle n’est pas cassée (break), elle continuera à tourner jusqu’à ce que ta variable “signal” soit différent de 0, hors elle ne change jamais dans ta boucle, donc elle est infini. Bref tu as fait une très mauvaise utilisation des boucles dans ton code 🙂 mais c’est comme ça que l’on a tous appris ! Je te conseil les cours de programmation en vidéo du site: (les boucles sont abordées dans la deuxième formation) Apprendre la programmation pour ProRealTime
Dans le deuxième code tu cherches à tester si P (soit le Close) est égal au Supertrend, ça n’arrivera jamais au moment ou le code est testé dans l’historique (soit au Close de chaque bougie) car c’est justement ce qui fait changer le SuperTrend de tendance, son croisement avec le prix.
Pour ce que tu cherches à faire, il y a plus simple :
123456789P=closeif P crosses over supertrend[3,10] thenprix = closeelseprix = 0endifReturn Prix as "prix lors du croisement"08/24/2018 at 9:26 AM #78906Bonjour Nicolas
Et merci pour ton retour et ton aide. En effet, je ne maitrise pas encore correctement ce langage, mais j’avance tout doucement 🙂
Je vais suivre ta formation et continuer à avancer. Comme tu l’as vu plus haut dans notre discussion, tu m’as conseillé de placer des ordres “limit” ou “stop”. C’est la prochaine étape qui fait suite à l’indicateur que tu m’as corrigé.
Je te reviendrai surement avec d’autres questions et d’autres erreurs. Merci pour ta patience et ta disponibilité.
08/26/2018 at 5:21 PM #79123Bonjour Nicolas,
Comme tu l’as remarqué, je suis encore en train d’apprendre. C’est pourquoi, j’ai besoin de ton aide.
J’essaie de coder l’ indicateur suivant et qui fait suite au code que tu m’as précédemment corrigé:
On prend un point de référence qui est le cours d’ouverture open[0] que l’on nomme Pex par exemple. Je lui rajoute ou déduit un delta qui varie suivant le support sur lequel on travaille (action, devises etc…). Je compare open[0]+delta et open[0]-delta au prix (ici close). Dès que c’est atteint (crosses over ou crosses under?), Pex égale close (cela fait donc référence au code que tu m’as corrigé). Ensuite on continue durant la journée de transaction le même schéma.
Pex=close est supposé inchangé si les condition suivantes ne sont pas vérifiés. Cela doit donner une courbe en dent de scie.
J’espere que c’est assez clair.
Merci pour ton aide.
08/27/2018 at 9:33 AM #7914908/27/2018 at 10:21 AM #7915509/30/2018 at 4:51 PM #81624Bonjour Nicolas,
Je vais suivre ta formation dans les jours à venir amis en attendant j’ai besoin de tes lumières.
Je travaille sur CAC 40 10€ (ou 1€).
J’ai pris le cours d’ouverture du vendredi 28/09/2018 comme indiqué sur le code. Le but du code est d’acheter si le prix augmente de 2 pts et donc de vendre (short) si le prix baisse de 2. Ensuite pour une position acheteuse, je vends dès que le prix augmente de 3 pts et pour une position short, j’achète dès que le prix diminue de 3 pts. Si dans les deux cas les 3 pts ne sont pas atteint et que la tendance s’inverse, pour une position acheteuse, je vends dès que le prix diminue de 2 pts et pour une position short, j’achète dès que le prix augmente de 2 pts. Et ainsi de suite.
Mon code ne semble pas répondre comme il faut.
Merci pour ton aide.
CAC 40123456789101112131415161718192021222324252627282930313233343536373839404142once Pex=5514.55Q=10A=2B=3if Pex+A<close thenif not longonmarket thenbuy Q lot at marketPex=Tradepriceendifif Pex+B<close thenif longonmarket thensell at marketPex=Tradepriceendifelsif Pex-A>close thenif longonmarket thensell at marketPex=Tradepriceendifendifelsif Pex-A>close thenif not shortonmarket thensellshort Q lot at marketPex=Tradepriceendifif Pex-B>close thenif shortonmarket thenexitshort at marketPex=Tradepriceendifelsif Pex+A<close thenif shortonmarket thenexitshort at marketPex=Tradepriceendifendifendif10/01/2018 at 1:19 PM #8167010/01/2018 at 2:11 PM #8167410/01/2018 at 2:26 PM #81678Non, donc pas vraiment une moyenne à la baisse dans ce cas.
Pour cela il faudrait utiliser des ordres conditionnels STOP/LIMIT et la distance minimale à respecter vis à vis du cours actuel, pour le CAC40 est de 4 points: https://www.ig.com/fr/indices/marches-indices/france-40
Par ailleurs, merci d’ouvrir une file unique pour chaque nouvelle question/problème. Je crois qu’on s’égare ici 😉
10/03/2018 at 12:11 PM #8183910/04/2018 at 10:57 AM #81897Bonjour Nicolas,
Suite à ton retour, une dernière question:
Lorsque la première position (Acheteuse ou vendeuse) est prise puis que le take profit est exécuté, comment prend il une seconde position quant on sait que pour prendre la première j’utilise comme point de départ (ou prix de départ) le cours d’ouverture en chiffre comme indiqué dans le code que je t’ai envoyé (“once Pex=5514.55″). En effet, pour que la boucle fonctionne bien, il faut que le nouveau point de départ soit au moins le prix d’exécution du take profit (ou du stop loss).
Merci pour ton retour.
-
AuthorPosts
Find exclusive trading pro-tools on