MultiTimeFrame: aprire una sola posizione al Massimo o al minimo candela oraria
Forums › ProRealTime forum Italiano › Supporto ProOrder › MultiTimeFrame: aprire una sola posizione al Massimo o al minimo candela oraria
- This topic has 8 replies, 2 voices, and was last updated 3 years ago by Stanko.
-
-
03/08/2021 at 8:44 PM #163520
Salve Roberto,
ho incollato, precedentemente, il codice che non corrisponde alla descrizione che avevo dato.
Aggiungo il codice con il tentativo di operare su Multitimeframe.
CANDELA ore 8 MultiTimeFrames123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960DEFPARAM CumulateOrders = FalseTimeFrame (1 Hours,Updateonclose)Once VAR= 1IF IntraDayBarIndex = 0 THENVAR = 1ENDIF//TimeFrame (1 Hours,Updateonclose)MASSIMO = High[0]minimo = Low[0]// Condizioni per entrare su posizioniTimeFrame (5 Minutes,Updateonclose)COMPRA = MASSIMOVENDI = minimoUNO = VARIF Time = 090000 AND not OnMarket AND UNO = 1 THENBUY 1 CONTRACT AT COMPRA STOPIF OnMarket THENUNO = 0VENDI = 0ENDIFENDIFIF Time = 090000 AND not OnMarket AND UNO = 1 THENVENDI = Low[0]SELLSHORT 1 CONTRACT AT VENDI STOPIF OnMarket THENUNO = 0COMPRA = 0ENDIFENDIFATRSU = AverageTrueRange[5] < AverageTrueRange[1]ATRGIU = AverageTrueRange[5] > AverageTrueRange[1]IF ATRSU THENSET TARGET pPROFIT (100*1.2)SET STOP pLOSS (100*1.2)ELSEIF ATRGIU THENSET TARGET pPROFIT 100SET STOP pLOSS 100ENDIFENDIFSCA = 80IF LONGONMARKET AND (close - tradeprice(1)) >= (SCA* pipsize) THENbreakevenLevel = tradeprice(1) + (SCA* pipsize) //calculate the breakevenLevel//place the new stop orders on market at breakevenLevelIF breakevenLevel > 0 THENSELL AT breakevenLevel STOPENDIFENDIF// --- SHORT sideIF SHORTONMARKET AND (tradeprice(1) - close) >= (SCA* pipsize) THENbreakevenLevel = tradeprice(1) + (SCA* pipsize) //calculate the breakevenLevel//place the new stop orders on market at breakevenLevelIF breakevenLevel > 0 THENEXITSHORT AT breakevenLevel STOPENDIFENDIF03/09/2021 at 12:44 AM #163532L’altro post l’ho cancellato. Per favore non duplicare i post, se devi aggiungere qualcosa o postare delle modifiche che riguardano lo stesso oggetto, puoi farlo di seguito al primo, non c’è biusogno di creare un nuovo argomento.
Grazie 🙂
03/09/2021 at 2:06 AM #163533Le righe 17-20 vanno spostate tra la 14 e la 15 e va usato LongOnMarket al posto di OnMarket.
Le righe 25-28 vanno spostate tra la 14 e la 15 (prima o dopo quelle di sopra è indifferente) e va usato ShortOnMarket al posto di OnMarket.
Non so se questo basta a farti ottenere ciò che vuoi, perché non ben capito quale sia la tua precisa richiesta.
03/09/2021 at 11:13 AM #16358403/09/2021 at 12:27 PM #163593Ciao Roberto,
il quesito che ti avevo posto era già stato trattato in “SISTEMA OIL H1 – Aiuto per unica operazione giornaliera” in cui praticamente confermi che in una candela oraria è praticamente impossibile riuscire ad eseguire 1 sola operazione se il prezzo incrocia , ad esempio, prima il Massimo della candela e successivamente, nella stessa candela oraria, il minimo.
Pensavo che con la possibilità di operare con più TimeFrame si potesse risolvere il problema…
Ultima domanda: Il Massimo o il minimo di una candela oraria si può trasferire in una costante di un TimeFrame di 5 minuti?
Grazie
03/09/2021 at 12:55 PM #163599La tua frase “il quesito che ti avevo posto era già stato trattato in “SISTEMA OIL H1 – Aiuto per unica operazione giornaliera” in cui praticamente confermi che in una candela oraria è praticamente impossibile riuscire ad eseguire 1 sola operazione se il prezzo incrocia , ad esempio, prima il Massimo della candela e successivamente, nella stessa candela oraria, il minimo.” non riesco a comprenderla, puoi spiegarti meglio, magari con un esempio? Forse la soluzione è più semplice di quanto possa sembrare.
Riguardo la tua ultima domanda ecco un esempio di Massimo e Minimo rario che viene usato nel TF a 5 minuti:
1234567Timeframe(1h,UpdateOnClose)MassimoH1 = highMinimoH1 = lowTimeframe(5 minute,UpdateOnClose)IF close CROSSES OVER MassimoH1 THEN. //qui metterai il codice da eseguire quando il prezzo rompe il massimo orarioENDIF03/09/2021 at 3:19 PM #163622Premetto che nel mio codice cerco di aprire la posizione con un ordine pendente
In una candela oraria, dovendo aspettare la chiusura della stessa, potrebbe accadere che venga violato sia il Massimo che il minimo.
Ho notato che i vari filtri tipo STRATEGYPROFIT o INTRADAYBARINDEX in pratica non aiutano a limitare il numero delle operazioni.
03/09/2021 at 4:20 PM #163635L’unico rimedio è usare il supporto MTF, in tal modo usi un TF piccolo (anche 1 minuto o meno) e sarà difficile che in quel breve lasso di tempo siano entrambi violati.
Praticamente nel timeframe H1 predisponi solo i valori e le condizioini orarie, ma l’entrata la fai sul TF più piccolo (io ho messo 5 minute, ma è meglio usare Default, senza UpdateOnClose, in modo da usarlo su qualunque TF inferiore ad 1 ora) in modo che alla violazione di uno dei due non piazzi più ordini, fino ad un certo periodo che vuoi tu….. fino all’ora successiva fino al giorno successivo o per N barre, scegli tu.
L’unico inconveniente è che le barre di storico caricate sonoquelle relative al TF più piccolo usato, quello che è sul grafico, quindi, ad esempio 200K barre da 1 minuto sono molte meno di 200K barre orarie!
03/09/2021 at 6:04 PM #163647 -
AuthorPosts
Find exclusive trading pro-tools on