2 conditions d’achats différents sur la même stratégie

Viewing 11 posts - 1 through 11 (of 11 total)
  • Author
    Posts
  • #242090 quote
    Lju
    Participant
    New

    Bonsoir à tous,
    Dans ma stratégie avec le code fourni en pièce jointe je voudrais avoir la commande “IF Not OnMarket THEN” avec la commande “BUY X SHARES AT MARKET – SET TARGET pPROFIT X ” pour chacune de mes conditions
    car elles sont bien distinctes en Target profit. Malheureusement je n’arrive pas à les séparer et créer ce code, j’ai pour l’instant pu avoir un backtest avec la commande “or” entre mes 2 conditions ligne 27 de code.
    Mes 2 conditions sont de la ligne 15 à 25 sachant que la première condition c’est ” C1 et C2 ” et l’autre c’est “C3 et C4 ” avec donc un souhait de target différent et sachant que la deuxième condition doit s’enclencher seulement si la première est inactive. J’ai essayer avec la commande TRUE au lieu de False, en ligne 2 mais cela n’a pas fonctionné.
    Merci par avance pour votre aide

    // Définition des paramètres du code
    DEFPARAM CumulateOrders = False // Cumul des positions désactivé
    
    // Empêche le système de placer des ordres pour entrer sur le marché ou augmenter la taille d'une position avant l'heure spécifiée
    noEntryBeforeTime = 153000
    timeEnterBefore = time >= noEntryBeforeTime
    
    // Empêche le système de placer des ordres pour entrer sur le marché ou augmenter la taille d'une position après l'heure spécifiée
    noEntryAfterTime = 210500
    timeEnterAfter = time < noEntryAfterTime
    
    // Empêche le système de placer de nouveaux ordres sur les jours de la semaine spécifiés
    daysForbiddenEntry = OpenDayOfWeek = 6 OR OpenDayOfWeek = 0
    
    // Conditions pour ouvrir une position acheteuse
    indicator1 = MACDLine[37/3, 77/3, 9](close)
    indicator2 = MACDSignal[37/3, 77/3, 9](close)
    c1 = (indicator1 >= indicator2)
    indicator3 = MACDLine[37/3, 77/3, 9](close)
    c2 = (indicator3 >= 2.5)
    indicator4 = TRIX[15](close)
    indicator5 = Average[9](indicator4)
    c3 = (indicator4 CROSSES OVER indicator5)
    indicator6 = Average[9](TRIX[15](close))
    c4 = (indicator6 <= 0)
    
    IF (c1 AND c2) OR ( c3 AND c4) AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
    BUY 1 SHARES AT MARKET
    ENDIF
    
    // Stops et objectifs
    SET TARGET pPROFIT 5
    
    Capture-decran-2025-01-02-a-22.41.11.png Capture-decran-2025-01-02-a-22.41.11.png
    #242105 quote
    fifi743
    Participant
    Master

    quand tu utilise ” OR” faire bien attention

    la il faut mettre des parenthèses comme ci dessous

    on est bien d’accord que c’est C1 et C2 ou C3 et C4

    IF ((c1 AND c2) OR ( c3 AND c4)) AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
    Iván González thanked this post
    #242107 quote
    Lju
    Participant
    New

    oui mes 2 conditions sont C1 et C2 ou C3 et C4 mais je veux attribuer a chaque conditions la commande “BUY X SHARES AT MARKET – SET TARGET pPROFIT X ” pour que chaque condition soit autonome
    avez vous la solutions du code ?

    #242108 quote
    JS
    Participant
    Senior
    DEFPARAM CumulateOrders = false
    IF (c1 AND c2) AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
    BUYSHARES AT MARKET
    SET TARGET pPROFIT x
    ENDIF
    IF (c3 AND c4) AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
    BUYSHARES AT MARKET
    SET TARGET pPROFIT x
    ENDIF
    Iván González thanked this post
    #242109 quote
    Lju
    Participant
    New

    MERCI DE VOTRE RETOUR,
    Cette commande fonctionne bien, par contre je n’arrive pas à inclure la fonction “IF Not OnMarket THEN” pour C3 ET C4 avez vous la solution pour ça aussi ?

    #242110 quote
    JS
    Participant
    Senior

    Bonjour,

    Dans ce code, « If NOT on Market » n’est pas nécessaire, car cela est déjà géré par « DefParam CumulateOrders = false »…
    Mais si vous souhaitez l’inclure..

    IF NOT on Market AND (c3 AND c4) AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
    BUYSHARES AT MARKET
    SET TARGET pPROFIT x
    ENDIF
    #242111 quote
    Lju
    Participant
    New

    UN GRAND MERCI ! je plaçai la commande au-dessus des conditions avec « THEN » c’est pour cela que mon code ne fonctionnait pas

    #242113 quote
    Lju
    Participant
    New

    j’en profite pour vous demander si vous savez si l’on peut avoir une condition de sortie différente selon que l’achat soit fait sur C1 ET C2 ou C3 ET C4 ?

    #242114 quote
    JS
    Participant
    Senior

    C’est possible, ce que vous pourriez faire par exemple est :

    IF … (C1 and C2) …

    Buy x …

    Position1=1

    Position2=0

    EndIf

    IF … (C3 and C4) …

    Buy x…

    Position1=0

    Position2=1

    EndIf

    If Position1=1 then

    Sell …

    EndIf

    If Position2=1 then

    Sell …

    EndIf

    #242115 quote
    JS
    Participant
    Senior
    Bien entendu, vous devez spécifier vos conditions de vente lors de la vente (Sell)…
    #242116 quote
    Lju
    Participant
    New
    merci pour vos messages, je vais regarder et coder ça ce week end
Viewing 11 posts - 1 through 11 (of 11 total)
  • You must be logged in to reply to this topic.

2 conditions d’achats différents sur la même stratégie


ProOrder : Trading Automatique & Backtests

New Reply
Author
author-avatar
Lju @lju Participant
Summary

This topic contains 10 replies,
has 3 voices, and was last updated by Lju
1 year, 2 months ago.

Topic Details
Forum: ProOrder : Trading Automatique & Backtests
Language: French
Started: 01/02/2025
Status: Active
Attachments: 1 files
Logo Logo
Loading...