Migliore/Peggiore mese per entrare
Forums › ProRealTime forum Italiano › Supporto ProOrder › Migliore/Peggiore mese per entrare
- This topic has 11 replies, 3 voices, and was last updated 3 years ago by robertogozzi.
-
-
04/01/2021 at 5:39 PM #165966123456789101112defparam cumulateorders=falsec=1// Condizioni per entrare su posizioni longIF dayofweek=g THENBUY c CONTRACTS AT MARKETENDIF// Condizioni per uscire da posizioni longIf LongOnMarket THENSELL AT MARKETENDIF
Vorrei cambiare la condizione invece che mettere i giorni della settimana (da 1 a 5) farlo mensile.
Come faccio a farlo con il mensile? quindi (1-12)(gennaio-dicembre)?
04/01/2021 at 6:14 PM #165968Ecco qui (è una versione aggiornata del codice che puoi trovare qui https://www.prorealcode.com/topic/time-and-day-conditions/), a cui ho aggiunto poche righe per una semplice entrata all’incrocio rialzista del prezzo con una media semplice a 20 periodi:
1234567891011121314151617181920212223242526272829303132333435363738DEFPARAM CumulateOrders = FALSE////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ONCE startT = 000000 //Starting TIMEONCE endT = 240000 //Ending TIMETimeRef = OpenTime //can be replaced by TIME, if neededDayRef = OpenDayOfWeek //can be replaced by DAYOFWEEK, if neededMonthRef = OpenMonth //can be replaced by MONTH, if needed//----------------------------------------------------------------------------------------------------------------------td0 = 0 AND DayRef = 0 AND TimeRef >= startT AND TimeRef <= endT //Sundaytd1 = 1 AND DayRef = 1 AND TimeRef >= startT AND TimeRef <= endT //Mondaytd2 = 1 AND DayRef = 2 AND TimeRef >= startT AND TimeRef <= endT //Tuesdaytd3 = 1 AND DayRef = 3 AND TimeRef >= startT AND TimeRef <= endT //Wednesdaytd4 = 1 AND DayRef = 4 AND TimeRef >= startT AND TimeRef <= endT //Thursdaytd5 = 1 AND DayRef = 5 AND TimeRef >= startT AND TimeRef <= endT //Fridaytd6 = 0 AND DayRef >=6 AND TimeRef >= startT AND TimeRef <= endT //Saturday (or else ?!)tdCond = td0 OR td1 OR td2 OR td3 OR td4 OR td5 OR td6 //Time & Day condition//----------------------------------------------------------------------------------------------------------------------m1 = 1 AND MonthRef = 1 //Januarym2 = 1 AND MonthRef = 2 //Februarym3 = 1 AND MonthRef = 3 //Marchm4 = 1 AND MonthRef = 4 //Aprilm5 = 1 AND MonthRef = 5 //Maym6 = 1 AND MonthRef = 6 //Junem7 = 1 AND MonthRef = 7 //Julym8 = 1 AND MonthRef = 8 //Augustm9 = 1 AND MonthRef = 9 //Septemberm10 = 1 AND MonthRef = 10 //Octoberm11 = 1 AND MonthRef = 11 //Novemberm12 = 1 AND MonthRef = 12 //DecembermCond = m1 OR m2 OR m3 OR m4 OR m5 OR m6 OR m7 OR m8 OR m9 OR m10 OR m11 OR m12 //Month condition//----------------------------------------------------------------------------------------------------------------------tdmCond = tdCond AND mCond //Time & Day & Month condition////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////IF close CROSSES OVER Average[20,0](close) AND Not OnMarket AND tdmCond THENBUY 1 Contract AT MarketENDIFSET TARGET pPROFIT 100SET STOP pLOSS 100Ovviamente potrai cambiare gli orari di trading (adesso è tutto il giorno, dalle 0 alle 24, da indicare sempre con 6 cifre).
Per DEselezionare i giorni della settimana ed i mesi basta che dove c’è “= 1” (nella prima parte dove viene assegnato il valore alla variabile) ci metti “= 0“, o viceversa per selezionarli.
04/01/2021 at 6:23 PM #16597004/01/2021 at 6:35 PM #165978td7 e td8 li ho cancellati poco dopo. Non servono.
Allora basta che all tua riga 5 scrivi Month al posto di DayOfWeek e G dovrà contenere il mese scelto di volta in volta.
1 user thanked author for this post.
04/01/2021 at 6:49 PM #16598004/01/2021 at 6:55 PM #165984Così va bene, ti aprirà posizioni solo per il mese di Gennaio.
Poi lo cambi in 2 per Febbraio e così via.
1 user thanked author for this post.
04/03/2021 at 3:52 PM #16610604/03/2021 at 7:09 PM #166118Posta il tuo codice,
04/03/2021 at 7:18 PM #166121Come devo impostare il tuo codice per ottenerne uno equivalente a questo?
123DEFPARAM Flatbefore = 000000DEFPARAM Flatafter = 215700limitHour = time<213000Ho provato questo ma su 120 k ci sono 10 operazioni in meno
123456789101112131415161718192021222324252627282930313233343536DEFPARAM Flatafter = 215700limitHour = time<213000//-------------------------------------------------------------------------------------////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ONCE startT = 0000000 //Starting TIMEONCE endT = 2157000 //Ending TIMETimeRef = OpenTime //can be replaced by TIME, if neededDayRef = OpenDayOfWeek //can be replaced by DAYOFWEEK, if neededMonthRef = OpenMonth //can be replaced by MONTH, if needed//----------------------------------------------------------------------------------------------------------------------td0 = 0 AND DayRef = 0 AND TimeRef >= startT AND TimeRef <= endT //Sundaytd1 = 1 AND DayRef = 1 AND TimeRef >= startT AND TimeRef <= endT //Mondaytd2 = 1 AND DayRef = 2 AND TimeRef >= startT AND TimeRef <= endT //Tuesdaytd3 = 1 AND DayRef = 3 AND TimeRef >= startT AND TimeRef <= endT //Wednesdaytd4 = 1 AND DayRef = 4 AND TimeRef >= startT AND TimeRef <= endT //Thursdaytd5 = 1 AND DayRef = 5 AND TimeRef >= startT AND TimeRef <= endT //Fridaytd6 = 0 AND DayRef >=6 AND TimeRef >= startT AND TimeRef <= endT //Saturday (or else ?!)tdCond = td0 OR td1 OR td2 OR td3 OR td4 OR td5 OR td6 //Time & Day condition//----------------------------------------------------------------------------------------------------------------------m1 = 1 AND MonthRef = 1 //Januarym2 = 1 AND MonthRef = 2 //Februarym3 = 1 AND MonthRef = 3 //Marchm4 = 1 AND MonthRef = 4 //Aprilm5 = 1 AND MonthRef = 5 //Maym6 = 1 AND MonthRef = 6 //Junem7 = 1 AND MonthRef = 7 //Julym8 = 1 AND MonthRef = 8 //Augustm9 = 1 AND MonthRef = 9 //Septemberm10 = 1 AND MonthRef = 10 //Octoberm11 = 1 AND MonthRef = 11 //Novemberm12 = 1 AND MonthRef = 12 //DecembermCond = m1 OR m2 OR m3 OR m4 OR m5 OR m6 OR m7 OR m8 OR m9 OR m10 OR m11 OR m12 //Month condition//----------------------------------------------------------------------------------------------------------------------tdmCond = tdCond AND mCond //Time & Day & Month condition////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////04/03/2021 at 9:09 PM #166130Non ho capito la relazione tra i mesi migliori/peggiori e limithour.
04/03/2021 at 9:19 PM #16613204/03/2021 at 10:32 PM #166137Alle righe 6 e 7 c’è uno zero di troppo.
Con DEFPARAM il mio codice non c’entra niente.
Ho postato quel codice perché volevi selezionare i mesi.
Non capisco cosa ha a che fare tutto quello che hai scritto dopo con il tuo primo post.
-
AuthorPosts
Find exclusive trading pro-tools on