eur/usd position à la vente

Viewing 15 posts - 1 through 15 (of 52 total)
  • Author
    Posts
  • #206274 quote
    Marlaynicolas
    Participant
    New

    Bonjour à tous,

    je vous joint une technique qui m’a fait du 100% depuis le 02/06/21 mais je voudrais avoir l’avis d’expert pour améliorer les gains (vous pouvez retirer également la condition c3 mais un peu de perte prévu)

    Programmé de 09h00 à 11h00 sur eur/usd

    technique simple mais qui semble correcte.

    Merci à nicolas et robberto au passage j’ai utilisé votre programme de breakeven.

    Alors si quelq’un pourrais se pencher dessus pour esseyer de l’améliorer et qu’il partage ses connaissances.

    bonne fête à tous.

    // Définition des paramètres du code
    DEFPARAM CumulateOrders = False
    DEFPARAM PRELOADBARS = 2000
    
    // 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 = 090000
    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 = 110000
    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 en vente à découvert
    
    indicator1 = SenkouSpanB[9,26,52]
    c1 = (close CROSSES UNDER indicator1)
    indicator2 = SenkouSpanA[9,26,52]
    c2 = (close CROSSES UNDER indicator2)
    indicator3 = ExponentialAverage[300](close)
    c3 = (close > indicator3)
    IF (c1 AND c2 and c3) AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry and tally < maxTrades THEN
    sellshort 1 CONTRACT AT MArket
    partial=0
    endif
    // sortie partielle
    if shortonmarket and positionperf>0.10/100 and partial=0 then
    exitshort 0.5 contract at market
    partial = 1
    endif
    
    once maxTrades = 10                               //maxNumberDailyTrades
    once tally = 0
    if intradayBarIndex = 0 then
    tally = 0
    endif
     
    newTrades =  (onMarket and not onMarket[1]) or ((not onMarket and not onMarket[1]) and (strategyProfit <> strategyProfit[1])) or (longOnMarket and ShortOnMarket[1]) or (longOnMarket[1] and shortOnMarket) or ((tradeIndex(1) = tradeIndex(2)) and (barIndex = tradeIndex(1)) and (barIndex > 0) and (strategyProfit = strategyProfit[1]))
     
    if newTrades then
    tally = tally +1
    endif
    //------------------------------------------------------------------------------------------------------------------------
    //---------------------------------------------------------------------------------------------------------------
    //Max-Orders per Day
    once maxOrdersL = 1  //long
    once maxOrdersS = 1  //short
    if intradayBarIndex = 0 then //reset orders count
    ordersCountL = 0
    ordersCountS = 0
    endif
     
    if longTriggered then //check if an order has opened in the current bar
    ordersCountL = ordersCountL + 1
    endif
    if shortTriggered then //check if an order has opened in the current bar
    ordersCountS = ordersCountS + 1
    endif
    
    //------------------------------------------------------------------------------------------------------------------------
    // Stops et objectifs
    set stop %loss 0.58
    set target %profit 0.195
    
    
    IF Not OnMarket THEN
    //
    // when NOT OnMarket reset values to default values
    //
    TrailStart    = 2.45          //30     Start trailing profits from this 1.74
    BasePerCent   = 0.000       //20.0%  Profit percentage to keep when setting BerakEven
    StepSize      = 1          //10     Pip chunks to increase Percentage
    PerCentInc    = 0.000       //10.0%  PerCent increment after each StepSize chunk
    BarNumber     = 10          //10     Add further % so that trades don't keep running too long
    BarPerCent    = 0.235       //10%    Add this additional percentage every BarNumber bars
    RoundTO       = -0.5        //-0.5   rounds always to Lower integer,   +0.4 rounds always to Higher integer,     0 defaults PRT behaviour
    PriceDistance = 9 * pipsize //7      minimun distance from current price
    y1            = 0           //reset to 0
    y2            = 0           //reset to 0
    ProfitPerCent = BasePerCent //reset to desired default value
    TradeBar      = BarIndex
    ELSIF LongOnMarket AND close > (TradePrice + (y1 * pipsize)) THEN                              //LONG positions
    //
    // compute the value of the Percentage of profits, if any, to lock in for LONG trades
    //
    x1 = (close - tradeprice) / pipsize                                     //convert price to pips
    IF x1 >= TrailStart THEN                                                //    go ahead only if N+ pips
    Diff1         = abs(TrailStart - x1)                                 //difference from current profit and TrailStart
    Chunks1       = max(0,round((Diff1 / StepSize) + RoundTO))           //number of STEPSIZE chunks
    ProfitPerCent = BasePerCent + (BasePerCent * (Chunks1 * PerCentInc)) //compute new size of ProfitPerCent
    // compute number of bars elapsed and add an additionl percentage
    // (this percentage is different from PerCentInc, since it's a direct percentage, not a Percentage of BasePerCent)
    // (if BasePerCent is 20% and this is 10%, the whole percentage will be 30%, not 22%)
    BarCount      = BarIndex - TradeBar
    IF BarCount MOD BarNumber = 0 THEN
    ProfitPerCent = ProfitPerCent + BarPerCent
    ENDIF
    //
    ProfitPerCent = max(ProfitPerCent[1],min(100,ProfitPerCent))         //make sure ProfitPerCent doess not exceed 100%
    y1 = max(x1 * ProfitPerCent, y1)                                     //y1 = % of max profit
    ENDIF
    ELSIF ShortOnMarket AND close < (TradePrice - (y2 * pipsize)) THEN                             //SHORT positions
    //
    // compute the value of the Percentage of profits, if any, to lock in for SHORT trades
    //
    x2 = (tradeprice - close) / pipsize                                     //convert price to pips
    IF x2 >= TrailStart THEN                                                //      go ahead only if N+ pips
    Diff2         = abs(TrailStart - x2)                                 //difference from current profit and TrailStart
    Chunks2       = max(0,round((Diff2 / StepSize) + RoundTO))           //number of STEPSIZE chunks
    ProfitPerCent = BasePerCent + (BasePerCent * (Chunks2 * PerCentInc)) //compute new size of ProfitPerCent
    // compute number of bars elapsed and add an additionl percentage
    // (this percentage is different from PerCentInc, since it's a direct percentage, not a Percentage of BasePerCent)
    // (if BasePerCent is 20% and this is 10%, the whole percentage will be 30%, not 22%)
    BarCount      = BarIndex - TradeBar
    IF BarCount MOD BarNumber = 0 THEN
    ProfitPerCent = ProfitPerCent + BarPerCent
    ENDIF
    //
    ProfitPerCent = max(ProfitPerCent[1],min(100,ProfitPerCent))         //make sure ProfitPerCent doess not exceed 100%
    y2 = max(x2 * ProfitPerCent, y2)                                     //y2 = % of max profit
    ENDIF
    ENDIF
    IF y1 THEN                                                                 //Place pending STOP order when y1 > 0   (LONG positions)
    SellPrice = Tradeprice + (y1 * pipsize)                                 //convert pips to price
    //
    // check the minimun distance between ExitPrice and current price
    //
    IF abs(close - SellPrice) > PriceDistance THEN
    //
    // place either a LIMIT or STOP pending order according to current price positioning
    //
    IF close >= SellPrice THEN
    SELL AT SellPrice STOP
    ELSE
    SELL AT SellPrice LIMIT
    ENDIF
    ELSE
    //
    //sell AT MARKET when EXITPRICE does not meet the broker's minimun distance from current price
    //
    SELL AT Market
    ENDIF
    ENDIF
    IF y2 THEN                                                                 //Place pending STOP order when y2 > 0   (SHORT positions)
    ExitPrice = Tradeprice - (y2 * pipsize)                                 //convert pips to price
    //
    // check the minimun distance between ExitPrice and current price
    //
    IF abs(close - ExitPrice) > PriceDistance THEN
    //
    // place either a LIMIT or STOP pending order according to current price positioning
    //
    IF close <= ExitPrice THEN
    EXITSHORT AT ExitPrice STOP
    ELSE
    EXITSHORT AT ExitPrice LIMIT
    ENDIF
    ELSE
    //
    //ExitShort AT MARKET when EXITPRICE does not meet the broker's minimun distance from current price
    //
    EXITSHORT AT Market
    ENDIF
    ENDIF
    Nicolas thanked this post
    Capture-decran-96.png Capture-decran-96.png
    #206283 quote
    fifi743
    Participant
    Master

    j’ai modifier le TP aussi a 0.2
    et le code en dessous

    // Conditions pour ouvrir une position en vente à découvert
    indicator1 = SenkouSpanB[9,26,52]
    indicator2 = SenkouSpanA[9,26,52]
    c1 = (close CROSSES UNDER indicator1)
    c2 = (close CROSSES UNDER indicator2)
    indicator3 = Average[400](close)
    c3 = (close > indicator3)
    IF (c1 AND c2 and (c3 or (high[3]<high[1]and low[3]<low[1] )))AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry and tally < maxTrades THEN
    sellshort 1 CONTRACT AT MArket
    partial=0
    endif
    Marlaynicolas thanked this post
    #206295 quote
    bertrandpinoy
    Participant
    Veteran

    en assemblant cela nous constatons que le pere noel existe

    #206296 quote
    bertrandpinoy
    Participant
    Veteran

    Gageons que la température du spread reste aussi froid qu’ une boule de neige! Joyeux Noel a tous les utilisateurs de ProRealCode.

    #206312 quote
    Marlaynicolas
    Participant
    New

    Merci fifi743 parfait.

    En augmentant TrailStart = 2.45 à 3.2 on passe à 864 pour un spread a 0.9.

    merci .

    Pour celui qui désirait améliorer mon code n’hesiter pas à partager.

    bonne fête à tous

    #206836 quote
    Marlaynicolas
    Participant
    New

    J’ai un code sur le nasdaq a partagé si tu peux y regarder prochainement afin d’apporter ton savoir et tes secrets si ca te dérange pas.

    #206841 quote
    fifi743
    Participant
    Master

    ok ,il est ou

    #206847 quote
    Marlaynicolas
    Participant
    New

    jtenvoi cela ce soir. tu me diras ce que tu en penses.

    #206901 quote
    Marlaynicolas
    Participant
    New

    Bonjour, je partage ca samedi matin je suis rentré tard.

    Par contre as tu un algo à partagé?

    #206905 quote
    fifi743
    Participant
    Master

    bonjour,
    tu veux celui ci ?

    Marlaynicolas thanked this post
    Capture-decran-557.png Capture-decran-557.png Capture-decran-558.png Capture-decran-558.png
    #206912 quote
    Marlaynicolas
    Participant
    New

    interessant sur grande unité de temps pas beaucoup de trade, tu as travaillé sur quelles technique?

    #206913 quote
    Marlaynicolas
    Participant
    New

    tu exposes ton capital 10000  à combien de pourcent par trade?

    #206919 quote
    fifi743
    Participant
    Master

    1 contract par trade et jamais de levier

    Florian and Marlaynicolas thanked this post
    #206920 quote
    Florian
    Participant
    Senior

    C’EST MAGNIFIQUE CA FIFI !!! @marlaynicolas tu as pas mis ton ITF sur le NASDAQ pour t’aider ?

    Joyeux  noel et bonne année 2023 !

    #206955 quote
    Marlaynicolas
    Participant
    New

    Bonjour fifi743,

    Voici mon petit algo sur le nasdaq 5 minutes basé que sur l’achat ( merci à nicolas et robertto au passage pour leur travail sur le breakeven).

    Tu pourras voir il prend 2 contrats par trade,  possibilité de l’améliorer .

    Par exemple je ne comprend pas pourquoi je n’ai que des trades long.

    Mais si tu veux y jeter un oeil et avec la communauté peut être que le résutat peut être meilleur.

    Au niveau des conditions tu peux mettre C3 ou ne pas le mettre les résultat sont différents mis intéressants.

    Il y a une année pas terrible l’annee 2022.

    Je te joint aussi avec la C3.

     

     

    // Définition des paramètres du code
    DEFPARAM CumulateOrders = false // pas de cumul de positions
    DEFPARAM Preloadbars = 1000000
    
    capital= 50000
    
    // 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 = 150000
    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 = 223000
    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 = SenkouSpanA[9,26,52]
    c1 = (close CROSSES OVER indicator1)
    indicator2 = SenkouSpanB[9,26,52]
    c2 = (close CROSSES OVER indicator2)
    c3 = (close > DOpen(0)[1])
    IF (c1 AND c2 ) AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
    BUY 2 CONTRACT AT MARKET
    partial=0
    ENDIF
    // sortie partielle
    if longonmarket and positionperf>1.7/100 and partial=0 then
    sell countofposition/9.7 contract at market
    partial = 1
    endif
    if summation[1800](longonmarket)=1800 then
    sell at market
    endif
    if summation[1000](shortonmarket)=1000 then
    exitshort at market
    endif
    
    // Stops et objectifs
    set stop %loss 1.8
    set target %profit 1.73
    
    
    IF Not OnMarket THEN
    //
    // when NOT OnMarket reset values to default values
    //
    TrailStart    = 65          //30     Start trailing profits from this point
    BasePerCent   = 0.000       //20.0%  Profit percentage to keep when setting BerakEven
    StepSize      = 1          //10     Pip chunks to increase Percentage
    PerCentInc    = 0.000       //10.0%  PerCent increment after each StepSize chunk
    BarNumber     = 10          //10     Add further % so that trades don't keep running too long
    BarPerCent    = 0.235       //10%    Add this additional percentage every BarNumber bars
    RoundTO       = -0.5        //-0.5   rounds always to Lower integer,   +0.4 rounds always to Higher integer,     0 defaults PRT behaviour
    PriceDistance = 9 * pipsize //7      minimun distance from current price
    y1            = 0           //reset to 0
    y2            = 0           //reset to 0
    ProfitPerCent = BasePerCent //reset to desired default value
    TradeBar      = BarIndex
    ELSIF LongOnMarket AND close > (TradePrice + (y1 * pipsize)) THEN                              //LONG positions
    //
    // compute the value of the Percentage of profits, if any, to lock in for LONG trades
    //
    x1 = (close - tradeprice) / pipsize                                     //convert price to pips
    IF x1 >= TrailStart THEN                                                //    go ahead only if N+ pips
    Diff1         = abs(TrailStart - x1)                                 //difference from current profit and TrailStart
    Chunks1       = max(0,round((Diff1 / StepSize) + RoundTO))           //number of STEPSIZE chunks
    ProfitPerCent = BasePerCent + (BasePerCent * (Chunks1 * PerCentInc)) //compute new size of ProfitPerCent
    // compute number of bars elapsed and add an additionl percentage
    // (this percentage is different from PerCentInc, since it's a direct percentage, not a Percentage of BasePerCent)
    // (if BasePerCent is 20% and this is 10%, the whole percentage will be 30%, not 22%)
    BarCount      = BarIndex - TradeBar
    IF BarCount MOD BarNumber = 0 THEN
    ProfitPerCent = ProfitPerCent + BarPerCent
    ENDIF
    //
    ProfitPerCent = max(ProfitPerCent[1],min(100,ProfitPerCent))         //make sure ProfitPerCent doess not exceed 100%
    y1 = max(x1 * ProfitPerCent, y1)                                     //y1 = % of max profit
    ENDIF
    ELSIF ShortOnMarket AND close < (TradePrice - (y2 * pipsize)) THEN                             //SHORT positions
    //
    // compute the value of the Percentage of profits, if any, to lock in for SHORT trades
    //
    x2 = (tradeprice - close) / pipsize                                     //convert price to pips
    IF x2 >= TrailStart THEN                                                //      go ahead only if N+ pips
    Diff2         = abs(TrailStart - x2)                                 //difference from current profit and TrailStart
    Chunks2       = max(0,round((Diff2 / StepSize) + RoundTO))           //number of STEPSIZE chunks
    ProfitPerCent = BasePerCent + (BasePerCent * (Chunks2 * PerCentInc)) //compute new size of ProfitPerCent
    // compute number of bars elapsed and add an additionl percentage
    // (this percentage is different from PerCentInc, since it's a direct percentage, not a Percentage of BasePerCent)
    // (if BasePerCent is 20% and this is 10%, the whole percentage will be 30%, not 22%)
    BarCount      = BarIndex - TradeBar
    IF BarCount MOD BarNumber = 0 THEN
    ProfitPerCent = ProfitPerCent + BarPerCent
    ENDIF
    //
    ProfitPerCent = max(ProfitPerCent[1],min(100,ProfitPerCent))         //make sure ProfitPerCent doess not exceed 100%
    y2 = max(x2 * ProfitPerCent, y2)                                     //y2 = % of max profit
    ENDIF
    ENDIF
    IF y1 THEN                                                                 //Place pending STOP order when y1 > 0   (LONG positions)
    SellPrice = Tradeprice + (y1 * pipsize)                                 //convert pips to price
    //
    // check the minimun distance between ExitPrice and current price
    //
    IF abs(close - SellPrice) > PriceDistance THEN
    //
    // place either a LIMIT or STOP pending order according to current price positioning
    //
    IF close >= SellPrice THEN
    SELL AT SellPrice STOP
    ELSE
    SELL AT SellPrice LIMIT
    ENDIF
    ELSE
    //
    //sell AT MARKET when EXITPRICE does not meet the broker's minimun distance from current price
    //
    SELL AT Market
    ENDIF
    ENDIF
    IF y2 THEN                                                                 //Place pending STOP order when y2 > 0   (SHORT positions)
    ExitPrice = Tradeprice - (y2 * pipsize)                                 //convert pips to price
    //
    // check the minimun distance between ExitPrice and current price
    //
    IF abs(close - ExitPrice) > PriceDistance THEN
    //
    // place either a LIMIT or STOP pending order according to current price positioning
    //
    IF close <= ExitPrice THEN
    EXITSHORT AT ExitPrice STOP
    ELSE
    EXITSHORT AT ExitPrice LIMIT
    ENDIF
    ELSE
    //
    //ExitShort AT MARKET when EXITPRICE does not meet the broker's minimun distance from current price
    //
    EXITSHORT AT Market
    ENDIF
    JohnScher thanked this post
    Capture-decran-98.png Capture-decran-98.png Capture-decran-99.png Capture-decran-99.png Capture-decran-100.png Capture-decran-100.png
Viewing 15 posts - 1 through 15 (of 52 total)
  • You must be logged in to reply to this topic.

eur/usd position à la vente


ProOrder : Trading Automatique & Backtests

New Reply
Author
Summary

This topic contains 51 replies,
has 7 voices, and was last updated by Marlaynicolas
1 year, 2 months ago.

Topic Details
Forum: ProOrder : Trading Automatique & Backtests
Language: French
Started: 12/24/2022
Status: Active
Attachments: 30 files
Logo Logo
Loading...