Bonjour,
J’ai écris un bout de code avec SUPERTREND.
Le problème dans ce code, c’est que l’entrée se fait correctement
mais le TP ne s’exécute pas au moment voulu car la close de la position intervient
systématiquement à 20h45.
J’aurais besoin d’une petite explication,
- est ce que le fait d’avoir neutralisé les fonctions TP et SL provoquent cela ?
- ou est ce qu’il y a une erreur d’interprétation de la fonction IF qui devrait agir sur la sortie du Trade,
Merci pour votre aide
Cordialement
DEFPARAM CumulateOrders = false // FALSE or TRUE
DEFPARAM Preloadbars = 3000
//DEFPARAM flatafter = 214500
// TAILLE DES POSITIONS
level = 1
ST = supertrend [3,10]
A1 = close crosses over ST
// HORAIRES DE TRADING
TimeAchat = time >= 080200 and time < 200000
// CONDITION POUR ACHAT
IF not longonmarket and A1 and TimeAchat then
BUY level shares at market
if close crosses under ST then
//TARGET pPROFIT tp
//SET STOP pLOSS sl
SELL level shares at market
endif
endif
// CLOTURE DÉFINITIVE DE TOUS LES TRADES -- 20h45 Heures --
IF Longonmarket and time >= 204500 THEN
SELL AT MARKET
ENDIF
Les lignes 23 à 27 en bloc if-endif ne sont lues QUE si on entre dans le bloc if-endif des lignes 21 à 28 (c’est à dire dans ce qui est défini comme le moment de prise de position). Si on veut qu’elles soient lues aussi pendant qu’on est en position, il faut les écrire “après” le endif de la ligne 28 (rajouter un if longonmarket aussi). Sinon seules les lignes 32-34 permettent la sortie, d’où la constatation du 20h45 à chaque fois.