Problème d’ouverture de trade en MTF

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #116008 quote
    Roland57800
    Participant
    Veteran

    Bonjour,

    Je travaille sur l’écriture d’un code en multi time frame.

    m3 et m15

    Avec le code j’ai un signal de vente à 09h12 en m3 (ligne rouge horizontale dans l’ellipse)

    le même signal sur le chandelier m15 (ligne rouge horizontale dans l’ellipse)

    je voudrais ouvrir à à 09h12 une position short et le code ne l’exécute pas.

    aucune ouverture de position

    j’ai vérifié dans le code et je n’arrive pas à trouver d’ou vient l’erreur

    je précise que dans le code le trading est autorisé à partir de 08h05

    je joins le code et et les screens.  Situation réelle du 06/01

    Merci pour une réponse à ma demande

    Cordialement

    DEFPARAM CumulateOrders = false
    DEFPARAM Preloadbars = 3000
    
    // TAILLE DES POSITIONS
    
    level = 3
    
    // TARGET ET STOP
    //tp = 60
    sl = 25
    
    // HORAIRES DE TRADING
    TimeAchat = time >= 080500 and time < 190000
    TimeVente = time >= 080500 and time < 190000
    
    // SEUIL DE RENTABILITÉ
    //startBreakeven = 10 // Target pour activation du Breakeven
    //PointsToKeep = 2 // Target après activation du Breakeven
    
    TIMEFRAME(15 minutes,updateonclose)
    
    // INDICATEURS
    // ANALYSE 10 DERNIERS CHANDELIERS (Haussier)
    hh=highest[10](high)
    
    //bullish breakout
    if hh<>hh[1] then
    hhbar=barindex
    endif
    
    // CONDITION POUR ACHAT
    am15=close crosses over hh[1] and hhbar and TimeAchat
    
    // ANALYSE 10 DERNIERS CHANDELIERS (Baissier)
    ll=lowest[10](low)
    
    //bearish breakout
    if ll<>ll[1] then
    llbar2=barindex
    endif
    
    // CONDITION POUR VENTE
    vm15=close crosses under ll[1] and llbar2 and TimeVente
    
    TIMEFRAME(default) // TIMEFRAME m3
    
    // SEUIL DE RENTABILITÉ
    startBreakeven = 24 // Target pour activation du Breakeven
    PointsToKeep = 3 // Target après activation du Breakeven
    
    // INDICATEURS
    // ANALYSE 10 DERNIERS CHANDELIERS (Haussier)
    hh3=highest[10](high)
    
    //bullish breakout
    if hh3<>hh3[1] then
    hhbar3=barindex
    endif
    
    // CONDITION POUR ACHAT
    am3=close crosses over hh3[1] and hhbar3 and TimeAchat
    
    // ANALYSE 10 DERNIERS CHANDELIERS (Baissier)
    ll3=lowest[10](low)
    
    //bearish breakout
    if ll3<>ll3[1] then
    llbar3=barindex
    endif
    
    // CONDITION POUR VENTE
    vm3=close crosses under ll3[1] and llbar3 and TimeVente
    
    ACHAT = (am15 and am3)
    VENTE = (vm15 and vm3)
    
    // —- OUVERTURE DES ACHATS —-
    IF achat and TimeAchat then
    Buy level shares at market
    //SET TARGET pPROFIT tp
    SET STOP pLOSS sl
    ENDIF
    
    // Reset du breakevenLevel quand aucune transaction n’est sur le marché
    IF NOT ONMARKET THEN
    breakevenLevel=0
    ENDIF
    
    // Côté ACHETEUR
    // TEST si le prix a évolué favorablement de ” startBreakeven ”
    IF longonmarket and close-tradeprice(1)>=startBreakeven*pipsize Then
    breakevenLevel = tradeprice(1)+PointsToKeep*pipsize
    ENDIF
    
    // Placer le nouveau ” ORDRE STOP” sur le Marché à breakevenLevel
    IF breakevenLevel>0 THEN
    SELL AT breakevenLevel STOP
    ENDIF
    
    // — CONDITION POUR SORTIR DES ACHATS —
    if longonmarket then
    if vm3 then
    sell at market
    endif
    endif
    
    // —- OUVERTURE DES VENTES —-
    // SEUIL DE RENTABILITÉ
    startBreakeven1 = 6 // Target pour activation du Breakeven
    PointsToKeep1 = 2 // Target après activation du Breakeven
    // Reset du breakevenLevel quand aucune transaction n’est sur le marché
    IF NOT ONMARKET THEN
    breakevenLevel1=0
    ENDIF
    
    IF vente and TimeVente THEN
    Sellshort level shares at market
    //SET TARGET pPROFIT tp
    SET STOP pLOSS sl
    ENDIF
    
    // Côté VENDEUR
    // TEST si le prix a évolué favorablement de ” startBreakeven ”
    IF shortonmarket and tradeprice(1)-close>startBreakeven1*pipsize Then
    breakevenLevel1 = tradeprice(1)-PointsToKeep1*pipsize
    ENDIF
    
    // Placer le nouveau ” ORDRE STOP” sur le Marché à breakevenLevel
    IF breakevenLevel1>0 THEN
    SELL AT breakevenLevel1 STOP
    ENDIF
    
    // — CONDITION POUR SORTIR DES VENTES —
    if shortonmarket then
    if am3 then
    exitshort at market
    endif
    endif
    SCREEN-DU-06-01-2020.doc
    #116032 quote
    robertogozzi
    Moderator
    Master

    >> Pour la clarté des messages sur les forums de ProRealCode, merci d’utiliser le bouton “insert PRT code” pour séparer la partie texte de la partie code, merci ! <<
    🙂

    #116036 quote
    robertogozzi
    Moderator
    Master

    Votre transaction sera enregistrée à 09h15, car les conditions sur le UT  de 15 minutes sont évaluées à la fermeture de ce chandelier.
    Si vous souhaitez entrer pendant que le chandelier de 15 minutes se forme, remplacez UPDATEONCLOSE par DEFAULT à la ligne 20.
    Soyez averti que les événements évalués lors de la construction d’une barre ne peuvent pas toujours être confirmés à sa fermeture.

    #116048 quote
    Roland57800
    Participant
    Veteran

    Bonjour Robertogozzi,

     

    merci pour la remarque sur le code, je vais noter ça dans mes tablettes pour l’avenir

    concernant la suite de votre réponse, je vais regarder ça

    En fait je progresse doucement, je n’ai pas encore une grande expérience en codage

    merci pour votre réponse

    cordialement

    #116050 quote
    Roland57800
    Participant
    Veteran

    Je reviens sur le sujet,

    en fait en DEFAULT, je ne suis plus en multi timeframe ??

    en fait mon signal se produit en m3 à 8h57, et j’ai un second signal avec le chandelier 09h12

    j’ai en m 15 le signal sur le chandelier de 09h00

    dois je comprendre que l’ouverture du trade tel que j’ai codé

    se fait avec le 2ème signal de m3 ??

    #116053 quote
    Nicolas
    Keymaster
    Master

    Ce que souhaite te faire comprendre Roberto, c’est qu’avec un UPDATEONCLOSE, l’information du timeframe supérieur sera mis à jour uniquement à sa clôture, donc à la fermeture de la prochaine barre de 15-minutes dans ton cas.

    Hors si tu souhaites obtenir des informations intra-bar, c’est à dire à l’intérieur du timeframe 15-minutes, il faut enlever UPDATEONCLOSE. Evidemment, si tu regardes l’historique, tu vois l’information d’une barre clôturée et donc pas ce qui s’est passé à l’intérieur, et cela peut avoir un impact différent sur la stratégie telle que tu l’as pensé.

    Donc si tu récupères une info de l’UT 15-minutes, à 15h48, avec UPDATEONCLOSE, ce sera la valeur de clôture de 15h45 qui sera utilisée.

    Je l’explique ici en français : Première approche sur le multi timeframe avec ProRealTime

    #116063 quote
    Roland57800
    Participant
    Veteran

    Merci Nicolas,

    je vais continuer à relire la documentation

    peut-être à bientôt

    Cordialement

Viewing 7 posts - 1 through 7 (of 7 total)
  • You must be logged in to reply to this topic.

Problème d’ouverture de trade en MTF


ProOrder : Trading Automatique & Backtests

New Reply
Author
Summary

This topic contains 6 replies,
has 3 voices, and was last updated by Roland57800
6 years, 2 months ago.

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