Acheter à l’ouverture de la bougie sur condition

Viewing 10 posts - 1 through 10 (of 10 total)
  • Author
    Posts
  • #222689 quote
    BF
    Participant
    New

    Bonjour à tous,

    voici un code simple de backtest mais il achète à l’ouverture de la bougie suivante, or je voudrai que :

    Si la condition C1 est réalisée alors l’achat s’effectue au même moment (pas au close de la bougie en cours, ni à l’open de la bougie suivante)

    // Définition des paramètres du code
    DEFPARAM CumulateOrders = False // Cumul des positions désactivé
    
    // Conditions pour ouvrir une position acheteuse
    ignored, indicator1, ignored = CALL "BF SCALP1 Long(Memo meta)"[70](open)
    
    c1 = (indicator1 >= 0.5)
    
    IF c1 THEN
    BUY 1 CONTRACT AT MARKET
    ENDIF
    
    // Conditions pour fermer une position acheteuse
    ignored, ignored, indicator2 = CALL "BF SCALP1 Long(Memo meta)"[70](open)
    c2 = (indicator2 >= 0.5)
    
    IF c2 THEN
    SELL AT MARKET
    ENDIF

     

     

     

    D’avance merci

    #222690 quote
    GraHal
    Participant
    Master

    Le plus proche de ce que vous pouvez obtenir est d’exécuter la stratégie sur une période d’une seconde.

    Le code de stratégie est lu à la fin de chaque barre (toutes les plateformes de trading sont comme ça) et ainsi votre code sera lu et exécuté toutes les 1 seconde barre.   

    BF thanked this post
    #222691 quote
    BF
    Participant
    New

    Merci mais ce n’est pas ce que je cherche.

    Donc je reformule si ce n’était pas clair:

    l’état de la  condition C1 est obtenu à l’ouverture d’une bougie (1 minutes, 1 heure, 1 jour) si elle est réalisée, alors je veux acheter dans la foulée (pendant la même bougie et avant sa fermeture)

    Comment modifier mon code pour réaliser cela svp ?

    #222697 quote
    GraHal
    Participant
    Master

    l’état de condition C1 est obtenu à l’ouverture d’une bougie

    Cela peut apparaître comme ci-dessus car la transaction est ouverte au début d’une bougie, mais le code est lu/exécuté à la clôture de la bougie précédente. Il n’y a que quelques millisecondes entre la fermeture de la mesure 1 et l’ouverture de la mesure 2.

    Si vous organisez votre code comme ci-dessous, toutes les secondes, le code s’exécutera et vérifiera (sur une période de 5 minutes) si C1 = True et/ou C2 = True

    Dormez dessus et vous verrez qu’utiliser un délai d’une seconde pour l’exécution du code de stratégie est le seul moyen d’obtenir ce que vous voulez.

    // Definition of DEFPARAM code parameters
    CumulateOrders = False // Cumulation of positions disabled
    Timeframe (5 minutes) 
    // Conditions for opening a long position
    ignored, indicator1, ignored = CALL “BF SCALP1 Long(Memo meta)”[70](open)
    
    // Conditions for closing a long position
    ignored, ignored, indicator2 = CALL “BF SCALP1 Long(Memo meta)”[70](open)
    
    c1 = (indicator1 >= 0.5)
    c2 = (indicator2 >= 0.5)
    
    Timeframe (1 second)
    IF c1 THEN
    BUY 1 CONTRACT AT MARKET
    ENDIF
    
    IF c2 THEN
    SELL AT MARKET
    ENDIF
    BF thanked this post
    #222750 quote
    BF
    Participant
    New

    Merci )) mais cela ne fonctionne pas (en mode trading automatique un message d’erreur s’affiche: “erreur interne ..” )

    Je reformule ma demande: imaginons une stratégie basée sur le RSI (14). c1=RSI (14) > x

    Or la valeur du RSI varie pendant toute la durée de la bougie du timeframe choisi.

    Ce que je veux c’est à l’open mémoriser la valeur de RSI / voir si C1 est réalisée et si oui alors, acheter immédiatement.

     

    D’avance merci

    #222757 quote
    GraHal
    Participant
    Master
    BF wrote: an error message is displayed: “internal error..”) You should explore what this internal error is.   The code is read when the bars close (not when the bars open), so the closest to what you describe is to use a 1 second delay in your strategy. I know I’m repeating myself, but I repeat it because it’s the truth! 🙂

    There is no magic way to buy halfway through a candle or bar formation. Surely 1 second (between the opening and closing of a 1 second bar) is as close to immediate as it makes no difference?

    We can set pending orders for Stop Loss and Take Profit which could be executed when a bar is formed.  Nous ne pouvons pas tester quand une condition est vraie (afin d’exécuter une transaction)  while a bar is forming unless you use multiple time frames as I suggested above (C1 = True during a 5 minute bar and a buy executed using a bar of 1 second). (If anyone else wants to chime in, feel free (as always), I’m just trying to offer what I can so people can move forward and be ready for Monday’s action! 😉 )
    BF thanked this post
    #222758 quote
    GraHal
    Participant
    Master
    Vous pouvez définir un ordre en attente pour un stop d’achat ou une limite d’achat à un certain prix, mais ce type d’ordre en attente ne fonctionnerait pas pour tester si une condition est vraie. Le code Starategy doit être exécuté pour tester une Condition = True. Le code est exécuté à la fin d’une barre et si la condition est vraie, la transaction est exécutée à l’ouverture de la barre suivante.
    BF thanked this post
    #222759 quote
    GraHal
    Participant
    Master
    Mods Toutes mes excuses, mon message 2 ci-dessus était en français, mais semble maintenant être revenu à l’anglais et également en gras.  
    JC_Bywan thanked this post
    #222959 quote
    BF
    Participant
    New
    Merci GraHal, le temps de vérification à été long. Je vais continuer à chercher car la solution que vous me donnez malheureusement ne me convient pas. Je vais faire un autre post sur le thème “Comment lancer un ordre d’achat (ou de vente) pendant le cours d’une bougie sur le signal d’un indicateur”   Encore merci pour votre aide
    GraHal thanked this post
    #222960 quote
    GraHal
    Participant
    Master
    Oui fais ça, je promets de ne pas poster sur ton prochain Topic… ça sera intéressant de voir ce que d’autres proposent comme solution.
    BF thanked this post
Viewing 10 posts - 1 through 10 (of 10 total)
  • You must be logged in to reply to this topic.

Acheter à l’ouverture de la bougie sur condition


ProOrder : Trading Automatique & Backtests

New Reply
Author
author-avatar
BF @bf Participant
Summary

This topic contains 9 replies,
has 2 voices, and was last updated by GraHal
2 years, 4 months ago.

Topic Details
Forum: ProOrder : Trading Automatique & Backtests
Language: French
Started: 10/20/2023
Status: Active
Attachments: No files
Logo Logo
Loading...