Ts piano di accumulo evoluto
- This topic has 4 replies, 2 voices, and was last updated 4 years ago by .
Viewing 5 posts - 1 through 5 (of 5 total)
Viewing 5 posts - 1 through 5 (of 5 total)
Similar topics:
Forums › ProRealTime forum Italiano › Supporto ProOrder › Ts piano di accumulo evoluto
Sono un neofita dei codici e non riesco a sviluppare il codice per un sistema concettualmente molto semplice.
È un piano di accumulo che penso possa sfruttare meglio il bias rialzista dell’azionario americano.
Vorrei fare questo:
– se il prezzo, durante l’anno, scende sotto x% (che decido io) rispetto alla open del primo giorno dell’anno compra a mercato
– fai questo ogni mese o settimana (lo decido io)
– vendi tutto all’apertura dell’ultimo giorno dell’anno
Fattibile?
Grazie mille
Ciao
Giuseppe
Come TF di verifica per l’entrata ho messo il settimanale (Weekly), ma puoi cambiarlo in mensile (Monthly) o giornaliero (Daily).
Per uscire l’ultimo giorno devi dare l’ordine il penultimo, Siccome non si può sapere quand’è in automatico, devi metterlo te, ogni anno, msnualmente nel TF giornaliero.
(non l’ho provato):
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
Defparam CumulateOrders = false Timeframe(Daily,UpdateOnClose) Once OpenAnno = open Once PerCent = 10 //10% discesa Once Entrata = OpenAnno * (100 - PerCent) / 100 If OpenYear <> OpenYear[1] then OpenAnno = open Entrata = OpenAnno * (100 - PerCent) / 100 // Timeframe(Weekly,UpdateOnClose) If close <= Entrata and not OnMarket then Buy 1 contracts at Market Endif // Timeframe(Daily,UpdateOnClose) If OpenDate = 20211229 Then Sell at Market Endif |
Scusami, l’avevo scritto senza accumulo (inoltre mancava un ENDIF).
Eccolo la versione corretta (e provata), con alcune modifiche:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
Defparam CumulateOrders = true Timeframe(Daily,UpdateOnClose) Once OpenAnno = open Once PerCent = 10 //10% discesa Once Entrata = OpenAnno * (100 - PerCent) / 100 If OpenYear <> OpenYear[1] then OpenAnno = open Entrata = OpenAnno * (100 - PerCent) / 100 Endif // Timeframe(Weekly,UpdateOnClose) //oppure Daily o Monthly Segnale = (close <= Entrata) If Segnale then Buy 1 contracts at Market Segnale = 0 Endif // Timeframe(Daily,UpdateOnClose) If OpenMonth = 12 AND OpenDay > 26 Then Sell at Market Entrata = 0 Endif //graph CountOfPosition //graph PositionPerf //graphonprice PositionPrice coloured(0,0,255,255) |
Ottimo! Grazie Roberto
Si riesce a fargli fare il backtest pluriennale? L’ha eseguito nel 2020 e mi piacerebbe vedere l’equity curve di lungo periodo. Non riesco a capire se devo intervenire su qualche comando o se la cosa non sia proprio fattibile.
Grazie mille comunque
ciao
giuseppe
Aumenta le unità di tempo sul grafico, scegli 100K o più.
Find exclusive trading pro-tools on 