PLUSIEURS ORDRES DANS UNE BARRE

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

    Bonjour à toutes et tous est-il possible au sein d’un même barre de placer plusieurs ordres avec des règles d’execution?

     

    Merci bien de vos retours.

    #146092 quote
    Nicolas
    Keymaster
    Master

    On peut en effet placer plusieurs ordres conditionnels (STOP ou LIMIT) au même moment, et à des niveaux différents si besoin. Si tu as un descriptif de ce que tu souhaites faire, alors je pourrai le programmer.

    #151919 quote
    oxy75
    Participant
    Average

    Bonjour Nicolas,

    Je tombe sur ce post, dommage que l’auteur n’ait pas poursuivi car je cherche la réponse 😀

    Je cherche à positionner 3 ordres lorsqu’une condition X est réunie :

    L’ordre n°1 aurait au stoploss à 40 pips et un take profit à 20 pips
    L’ordre n°2 aurait au stoploss à 40 pips et un take profit à 40 pips

    L’ordre n°3 aurait au stoploss à 40 pips et un tale profit à 60 pips

    Merci de ton aide 🙂

    #151933 quote
    Nicolas
    Keymaster
    Master

    C’est un peu différent ici, je parlai d’ordres d’entrée en position de type LIMIT et STOP.

    On peut aussi utiliser ce genre d’ordres pour fermer des positions, mais le déclenchement d’un seul fera fermer automatiquement l’ensemble des positions.

    Par contre, on peut utiliser la fermeture partielle, qui devrait être possible désormais en V11 avec IG.

    Soit selon tes besoins :

    if condition then 
     buy 3 contracts at market
     sell at close+20*pointsize limit 
     sell at close+40*pointsize limit 
     sell at close+60*pointsize limit  
     set stop ploss 40
    endif 
    
    if longonmarket then 
     sell at tradeprice+20*pointsize limit 
     sell at tradeprice+40*pointsize limit 
     sell at tradeprice+60*pointsize limit 
    endif

    A tester.

    #151955 quote
    oxy75
    Participant
    Average

    Re,

    Voici le code que j’essaye de travailler  :

     

    Defparam cumulateorders = true
    
    n = 3
    
    IF TIME = 080000 THEN
    HAUT = highest[2](high)
    BAS = lowest[2](low)
    Achatjour = 0
    ventejour = 0
    //amplitude = haut-bas
    ENDIF
    
    Ctime = time >= 100000 AND time <= 180000
    Ccanal = close < haut and close > bas
    
    IF Ctime and Ccanal then
    
    IF achatjour = 0 THEN
    buy n share at haut stop
    sell at close+20*pointsize limit
    sell at close+40*pointsize limit
    sell at close+60*pointsize limit
    set stop ploss 40
    endif
    endif
    
    If ctime and ventejour = 0 and Ccanal THEN
    sellshort n shares at BAS stop
    sell at close+20*pointsize limit
    sell at close+40*pointsize limit
    sell at close+60*pointsize limit
    set stop ploss 40
    endif
    
    
    if longonmarket then
    sell at tradeprice+20*pointsize limit
    sell at tradeprice+40*pointsize limit
    sell at tradeprice+60*pointsize limit
    endif
    
    
    IF longonmarket THEN
    achatjour = 1
    ENDIF
    IF shortonmarket THEN
    ventejour = 1
    ENDIF

    Je cherche a faire la chose suivante :

    • 3 Ordres d’achats sur le plus haut (ou 3  ordres de ventes sur le plus bas) de la période 07h/08h avec prise de position après 10h00
    • Les ordres achat/vente peuvent se cumuler
    • Les stop sont placés à chaque fois à 40 pips, et les TP respectivements à 20, 40 et 60 pips

    Avec le code ci dessus : les TP distincts ne sont pas pris : un seul TP pris a 20 PIPS pour les trois ordres.

    Une autre idée ? Par ailleurs comment faire pour que quand le système à passé les 3 ordres de vente et/ou les 3 ordres d’achats, il n’en cumule pas dans la même journée. En gros que cela soit limités à 6 au max (3 achat et 3 ventes) ? Car là il me prends des 6 voir 9 ordres parfois.

    Merci

    #151956 quote
    oxy75
    Participant
    Average

    Ce code plutot :

     

    Defparam cumulateorders = true
     
    n = 3
    
    
    IF TIME = 080000 THEN
    HAUT = highest[2](high)
    BAS = lowest[2](low)
     Achatjour = 0
    ventejour = 0
    //amplitude = haut-bas
    ENDIF
     
    Ctime = time >= 100000 AND time <= 180000
     Ccanal = close < haut and close > bas
     
    IF Ctime  and Ccanal  then
    
    IF achatjour = 0 THEN
    buy n share at haut stop
    sell at close+20*pointsize limit
    sell at close+40*pointsize limit
    sell at close+60*pointsize limit
    set stop ploss 40
    endif
    endif
    
    If ctime and ventejour = 0  and Ccanal THEN
    sellshort n shares at BAS stop
    EXITSHORT at close+20*pointsize limit
    EXITSHORT at close+40*pointsize limit
    EXITSHORT at close+60*pointsize limit
    set stop ploss 40
    endif
    
    
     
    
    IF longonmarket THEN
    achatjour = 1
    ENDIF
    IF shortonmarket THEN
    ventejour = 1
    ENDIF
    
    #152444 quote
    oxy75
    Participant
    Average

    Je me permets de remonter, si jamais à qqun à une idée 🙂

    #152486 quote
    Nicolas
    Keymaster
    Master

    En effet, erreur de ma part, dans mon premier code je demandais la clôture de l’ensemble des positions sur le même niveau de prix, désolé.

    if condition then 
     buy 3 contracts at market
     sell 1 contract at close+20*pointsize limit 
     sell 1 contract at close+40*pointsize limit 
     sell 1 contract at close+60*pointsize limit  
     set stop ploss 40
    endif 
    
    if longonmarket then 
     sell 1 contract at tradeprice+20*pointsize limit 
     sell 1 contract at tradeprice+40*pointsize limit 
     sell 1 contract at tradeprice+60*pointsize limit 
    endif

    Dans ton code avec les exitshort, pour fermer les positions de vente à découvert, tu dois fermer à un seuil de prix au dessous du prix d’ouverture et non au dessus si t u veux que ce soient en gains.

    Par ailleurs, tu dois aussi remettre les positions en attente à chaque chandelier, car elles expirent à chaque chandelier, comme dans mon exemple ci-dessous avec la condition pour les remettre: “if onmarket …”

    #152746 quote
    oxy75
    Participant
    Average

    Top, merci ! 🙂 😀

    #153484 quote
    oxy75
    Participant
    Average

    Pour quelle raisons le code en vente ne fonctionne t-il pas ? il me clôture les 3 positions à 60 pips :

    If Condition then
     
    sellshort 3 contract at bas stop
    EXITSHORT 1 contract at close-20*pointsize limit
    EXITSHORT 1 contract at close-40*pointsize limit
    EXITSHORT 1 contract at close-60*pointsize limit
    set stop ploss 40
    endif
     
    if longonmarket then
    EXITSHORT 1 contract at tradeprice-20*pointsize limit
    EXITSHORT 1 contract at tradeprice-40*pointsize limit
    EXITSHORT 1 contract at tradeprice-60*pointsize limit
    
    endif
    #153490 quote
    oxy75
    Participant
    Average

    Trouvé, arf ! Il fallait mettre “If ShortonMarket” 🙂 je mets la réponse si ca peut aider :

     

    if ShortOnMarket then
    EXITSHORT 1 contract at tradeprice-20*pointsize limit
    EXITSHORT 1 contract at tradeprice-40*pointsize limit
    EXITSHORT 1 contract at tradeprice-60*pointsize limit
    
    endif
Viewing 11 posts - 1 through 11 (of 11 total)
  • You must be logged in to reply to this topic.

PLUSIEURS ORDRES DANS UNE BARRE


ProScreener : Scanners de Marché & Détection

New Reply
Author
author-avatar
EBITDA2020 @ebitda2020 Participant
Summary

This topic contains 10 replies,
has 3 voices, and was last updated by oxy75
5 years, 2 months ago.

Topic Details
Forum: ProScreener : Scanners de Marché & Détection
Language: French
Started: 09/30/2020
Status: Active
Attachments: No files
Logo Logo
Loading...