Bonjour à toute et à tous.
Cela fait un sacré moment que je ne suis pas revenu sur prorealcode. Beaucoup de chose on changé et cela me ravis de le voir.
Donc, je viens vers vous pour plusieurs raisons.
Tout d’abord, dans le cadre de ma stratégie de suivie de tendance, j’aimerais crée un stop suiveur qui placera mon SL sous mon indicateur parabolique SAR, pour évité d’être devant mon écran.
Donc dans un premier temps, j’ai fouillé le forum et suis tombé sur le code suivant, traduit par mes soins (pour les réfractaires à la langue de Shakespeare) avec quelques explications :
//Stop Loss fait maison.
//Paramétrage du parabolique SAR
a=sar[0.02,0.02,0.2]
//Paramétrage des variables du Stop Suiveur
trailingstard = 30
trailingstep = a-1
// Variable qui nous permettra d’incrémenté notre SL suiveur de position
IF NOT ONMARKET THEN
newSL = 0 // Elle revient à 0 quand on est hors marché.
ENDIF
//********************************************************************************************************************************************************************************************************************
//On va gerer les positions acheteuse (long).
IF LONGONMARKET THEN //Vois si on est en achat sur le marché (long)
IF newSL = 0 AND close-tradeprice(1) >= trailingstard*pointsize THEN // Détermine si la variable newSL est à 0 et si la différence du prix d'entrée de notre trade et de la clôture est supérieur ou égale avec la variable trailingstart
newSL = tradeprice(1)+trailingstep*pointsize // la variable tralingstep devient notre prix d'entré
ENDIF
//On va cré une condition pour que notre SL suiveur suive le mouvement.
IF newSL > 0 AND close-newSL >= trailingstep*pointsize THEN
newSL = newSL + trailingstep*pointsize
ENDIF
ENDIF
//********************************************************************************************************************************************************************************************************************
//On va gerer les positions vendeuse (short)
IF SHORTONMARKET THEN
IF newSL = 0 AND tradeprice(1)-close >= trailingstard*pointsize THEN
newSL = tradeprice(1)+trailingstep*pointsize
ENDIF
//On va cré une condition pour que notre SL suiveur suive le mouvement.
IF newSL > 0 AND newSL-close >=Trailingstep*pointsize THEN
newSL = newSL + Trailingstep*pointsize
ENDIF
ENDIF
//On crée une condition pour clôturer notre position (short ou long) via un ordre stop.
IF newSL > 0 THEN
SELL AT newSL STOP //On clôture (vend) notre achat au prix de newSL avec un ordre stop.
EXITSHORT AT newSL STOP //On clôture (rachete) notre vente au prix de newSL avec un ordre stop.
ENDIF
Ce code a été trouvé sur le forum. Je n’ai rien crée. Cela m’a permis de me remettre dans le bain du codage et de dépoussière mon cerveau.
C’est la où interviens mon/mes problème(s).
La première c’est que j’aimerais qu’il intervienne (mon SL suiveur), quand j’ai pris une position manuellement. Comme le SL suiveur de la plate-forme PRT. Donc qu’il se mette juste en dessous/dessus du parabolic SAR. Sauf qu’il faut que je met une condition de prise d’achat ou de vente (càd BUY ou SHORTSHORT) pour pouvoir lancer ce SL suiveur, ce qui le rendrais totalement automatique. Ce que je ne veux pas.
De plus, ayant une intervention sur du 100 ticks, PRT me dit que je dois choisir une unité de temps autre que le tick. Je suppose que même avec la version 11, le semi-automatique en tick n’est pas pris en charge? Si cela est le cas, pourquoi le SL suiveur de la plate-forme fonction en tick?
Enfin, si quelqu’un aurais le code du SL suiveur de la plate-forme, ça serais charitable. Je suis sur les futures via IB.
Merci à tous de votre aide et vous souhaite un agréable week-end.