Chiusura parziale dell’operazione
Forums › ProRealTime forum Italiano › Supporto ProOrder › Chiusura parziale dell’operazione
- This topic has 21 replies, 6 voices, and was last updated 2 years ago by robertogozzi.
-
-
07/17/2022 at 8:59 AM #197393
Ciao roberto,
Avrò bisogno del tuo aiuto per l’integrazione di vendita parziale su una strategia algoritmica di 2 minuti di euro che ho condiviso. E non posso integrare la formula è quello che puoi aiutarmi ringraziandoti e avendo la tua opinione in merito.
Cordiali saluti
eur/usd 2minutes123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156// Définition des paramètres du codeDEFPARAM 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éenoEntryBeforeTime = 080000timeEnterBefore = 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éenoEntryAfterTime = 192000timeEnterAfter = time < noEntryAfterTime// Empêche le système de placer de nouveaux ordres sur les jours de la semaine spécifiésdaysForbiddenEntry = OpenDayOfWeek = 6 OR OpenDayOfWeek = 0// Conditions pour ouvrir une position en vente à découvertindicator1 = SenkouSpanB[9,26,52]c1 = (close >= indicator1)indicator2 = SenkouSpanB[9,26,52]c2 = (low[1] < indicator2)IF (c1 AND c2) AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry and tally < maxTrades THENsellshort 1 CONTRACT AT MARKETENDIF//---------------------------------------------------------------------------------------------------------------once maxTrades = 3 //maxNumberDailyTradesonce tally = 0if intradayBarIndex = 0 thentally = 0endifnewTrades = (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 thentally = tally +1endif//------------------------------------------------------------------------------------------------------------------------//---------------------------------------------------------------------------------------------------------------//Max-Orders per Dayonce maxOrdersL = 1 //longonce maxOrdersS = 1 //shortif intradayBarIndex = 0 then //reset orders countordersCountL = 0ordersCountS = 0endifif longTriggered then //check if an order has opened in the current barordersCountL = ordersCountL + 1endifif shortTriggered then //check if an order has opened in the current barordersCountS = ordersCountS + 1endif//------------------------------------------------------------------------------------------------------------------------// Stops et objectifsset stop %loss 0.58set target %profit 0.81IF Not OnMarket THEN//// when NOT OnMarket reset values to default values//TrailStart = 1.79 //30 Start trailing profits from this pointBasePerCent = 0.000 //20.0% Profit percentage to keep when setting BerakEvenStepSize = 1 //10 Pip chunks to increase PercentagePerCentInc = 0.000 //10.0% PerCent increment after each StepSize chunkBarNumber = 10 //10 Add further % so that trades don't keep running too longBarPerCent = 0.235 //10% Add this additional percentage every BarNumber barsRoundTO = -0.5 //-0.5 rounds always to Lower integer, +0.4 rounds always to Higher integer, 0 defaults PRT behaviourPriceDistance = 9 * pipsize //7 minimun distance from current pricey1 = 0 //reset to 0y2 = 0 //reset to 0ProfitPerCent = BasePerCent //reset to desired default valueTradeBar = BarIndexELSIF 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 pipsIF x1 >= TrailStart THEN // go ahead only if N+ pipsDiff1 = abs(TrailStart - x1) //difference from current profit and TrailStartChunks1 = max(0,round((Diff1 / StepSize) + RoundTO)) //number of STEPSIZE chunksProfitPerCent = 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 - TradeBarIF BarCount MOD BarNumber = 0 THENProfitPerCent = ProfitPerCent + BarPerCentENDIF//ProfitPerCent = max(ProfitPerCent[1],min(100,ProfitPerCent)) //make sure ProfitPerCent doess not exceed 100%y1 = max(x1 * ProfitPerCent, y1) //y1 = % of max profitENDIFELSIF 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 pipsIF x2 >= TrailStart THEN // go ahead only if N+ pipsDiff2 = abs(TrailStart - x2) //difference from current profit and TrailStartChunks2 = max(0,round((Diff2 / StepSize) + RoundTO)) //number of STEPSIZE chunksProfitPerCent = 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 - TradeBarIF BarCount MOD BarNumber = 0 THENProfitPerCent = ProfitPerCent + BarPerCentENDIF//ProfitPerCent = max(ProfitPerCent[1],min(100,ProfitPerCent)) //make sure ProfitPerCent doess not exceed 100%y2 = max(x2 * ProfitPerCent, y2) //y2 = % of max profitENDIFENDIFIF 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 THENSELL AT SellPrice STOPELSESELL AT SellPrice LIMITENDIFELSE////sell AT MARKET when EXITPRICE does not meet the broker's minimun distance from current price//SELL AT MarketENDIFENDIFIF 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 THENEXITSHORT AT ExitPrice STOPELSEEXITSHORT AT ExitPrice LIMITENDIFELSE////ExitShort AT MARKET when EXITPRICE does not meet the broker's minimun distance from current price//EXITSHORT AT MarketENDIFENDIF07/17/2022 at 10:17 AM #197394Va bene, dimmi quanti lotti vuoi vendere (adesso ne vende solo 1) e quanti ne vuoi chiudere parzialmente e le condizioni per chiuderli.
07/17/2022 at 10:58 AM #197395Salve a tutti, inserisco la mia richiesta.
Ho condiviso una strategia algo di 2 minuti eurusd e sto cercando di integrare in questa strategia la vendita parziale in percentuale quando quella arriva (ad esempio a 15 euro. Vorrei che mi vendesse lo 0,5% della posizione.)
Ho provato quello che mi è stato suggerito ma non ha funzionato. non sta succedendo niente. Se potessi aiutarmi penso che potrebbe migliorare i guadagni.
E a proposito, cosa ne pensi della strategia?
Non vedo l’ora di leggerti e grazie.
07/17/2022 at 11:04 AM #197396Scusa, ho dovuto inviare più messaggi. Quindi vorrei come puoi vedere quando mi prende un contratto in vendita e quando la posizione arriva a +12 o + 15 o +20 euro non importa voglio che mi compri 0,5 il contratto mira a quello secondo i contratti che prendo voglio che mi metta al sicuro la metà e che il commercio scivoli via.
07/17/2022 at 3:53 PM #197407désolé roberto la traduction Français italien n’ai pas correcte.
Je te le transmet en Français.
Je voudrais dans le cas de mon alogo qu’il rachète 0.5 contrat sur les 1 contrat qu’il a pris sur le mini eurusd lorsque que le trade arrive à +12 euros par exemple ou + 15 par exemple.
et laisser filer le trade avec les contrats restant. Mais je n’arrive pas à l’intégrer dans ma formule donc si tu pouvais m’aider. c’est un algo qui tourne avec 5 contrats à l’origine.
jt’en remercie d’avance.scusa roberto la traduzione francese italiano non era corretta. Te lo mando in francese. Nel caso del mio alogo, vorrei che riacquistasse 0,5 contratti su 1 contratto che ha preso sul mini euro quando lo scambio raggiunge ad esempio +12 euro o +15 ad esempio. e lascia perdere il commercio con i restanti contratti. Ma non posso integrarlo nella mia formula quindi se potessi aiutarmi. è un algoritmo che funziona originariamente con 5 contratti. Ti ringrazio anticipatamente.
07/18/2022 at 8:29 AM #197429Pubblica solo nella lingua del forum in cui stai postando. Ad esempio solo l’inglese nei forum di lingua inglese e il francese solo nei forum di lingua francese.
Grazie 🙂
07/18/2022 at 9:45 AM #197435NON DUPLICARE i tuoi post, per favore, mi sembra questo sia identico a https://www.prorealcode.com/topic/strategie-eur-usd-2-min/.
Mi sembra ti sia già stato risposto, almeno inizialmente, nel forum Francese.
-
AuthorPosts
Find exclusive trading pro-tools on