CREAZIONE INDICATORE
Forums › ProRealTime forum Italiano › Supporto ProBuilder › CREAZIONE INDICATORE
- This topic has 8 replies, 2 voices, and was last updated 6 years ago by
robertogozzi.
-
-
05/18/2018 at 1:04 PM #70767
Salve, vorrei creare un indicatore stile istogramma con linea valore zero, che mi segni valore 1 quando si verificano queste condizioni contemporanemante.
quindi mi dovra seganre valore 1 per il long e valore -1 per lo short.
allego condizioni.
Grazie 🙂
12345678910condizione1 = (close[1] CROSSES OVER SuperTrend[3,10]condizione2 = close > exponentialaverage[10](close)condizione3 = CCI[3] > 30condizione4 = RSI[10]>30//viceversa per la barra che mi dovra' essere disegnata a valore -1condizione1 = (close[1] CROSSES UNDER SuperTrend[3,10]condizione2 = close < exponentialaverage[10](close)condizione3 = CCI[3] < 30condizione4 = RSI[10]<3005/18/2018 at 3:53 PM #70791123456789101112131415condizione1 = close[1] CROSSES OVER SuperTrend[3,10]condizione2 = close > exponentialaverage[10](close)condizione3 = CCI[3] > 30condizione4 = RSI[10]>30x = condizione1 AND condizione2 AND condizione3 AND condizione4//viceversa per la barra che mi dovra' essere disegnata a valore -1condizione5 = close[1] CROSSES UNDER SuperTrend[3,10]condizione6 = close < exponentialaverage[10](close)condizione7 = CCI[3] < 30condizione8 = RSI[10]<30y = condizione5 AND condizione6 AND condizione7 AND condizione8return x OR (-y),0Provalo e fammi sapere.
05/19/2018 at 9:17 AM #70831Ciao, Roberto buongiorno, funziona alla grande.
Vorrei aggiungere un’altra opzione e cioè: l’indicatore dovra’ evidenziare i valori solo in giorni stabiliti.
un esempio questo indicatore stile istogramma, dovra’ funzionare solo: dal 01 aprile 2018 al 15 aprile 2018.
E possibile fralo?
Grazie ancora per la tua disponibilità
05/19/2018 at 9:26 AM #70834Eccolo
1234567891011121314151617181920condizione1 = close[1] CROSSES OVER SuperTrend[3,10]condizione2 = close > exponentialaverage[10](close)condizione3 = CCI[3] > 30condizione4 = RSI[10]>30x = condizione1 AND condizione2 AND condizione3 AND condizione4//viceversa per la barra che mi dovra' essere disegnata a valore -1condizione5 = close[1] CROSSES UNDER SuperTrend[3,10]condizione6 = close < exponentialaverage[10](close)condizione7 = CCI[3] < 30condizione8 = RSI[10]<30y = condizione5 AND condizione6 AND condizione7 AND condizione8IF date < 20180401 OR date > 20180415 THENx = 0y = 0ENDIFreturn x OR (-y),005/19/2018 at 9:34 AM #70835123456789101112131415161718192021// Definizione dei parametri del codiceDEFPARAM CumulateOrders = False // Posizioni cumulate disattivate// Impedisce al sistema di creare nuovi ordini per entrare a mercato o aumentare la taglia della posizione prima dell'orario specificatonoEntryBeforeTime = 080000timeEnterBefore = time >= noEntryBeforeTime// Impedisce al sistema di piazzare nuovi ordini per entrare a mercato o aumentare la taglia della posizione dopo l'orario indicatonoEntryAfterTime = 220000timeEnterAfter = time < noEntryAfterTime// Condizioni per entrare su posizioni longindicator1 = ExponentialAverage[12](close)indicator2 = ExponentialAverage[26](close)c1 = (indicator1 > indicator2)IF c1 AND timeEnterBefore AND timeEnterAfter THENBUY 1 CONTRACT AT MARKETENDIFset stop ploss 26set target pprofit 52Funziona alla grande. inoltre un ultima domanda: all’interno dell’indicatore posso inserire dei valori (ad esempio il valore 26 di stop loss e il valore 52 di target profit) che richiamero’ nel codice del ts con la funzione call?
05/19/2018 at 9:59 AM #70845Certo, modificalo così
12345678910111213141516171819202122condizione1 = close[1] CROSSES OVER SuperTrend[3,10]condizione2 = close > exponentialaverage[10](close)condizione3 = CCI[3] > 30condizione4 = RSI[10]>30x = condizione1 AND condizione2 AND condizione3 AND condizione4//viceversa per la barra che mi dovra' essere disegnata a valore -1condizione5 = close[1] CROSSES UNDER SuperTrend[3,10]condizione6 = close < exponentialaverage[10](close)condizione7 = CCI[3] < 30condizione8 = RSI[10]<30y = condizione5 AND condizione6 AND condizione7 AND condizione8IF date < 20180401 OR date > 20180415 THENx = 0y = 0ENDIFMiaPerdita = 10 //metti tu il calcoloMioProfitto = 20 //Metti tu il calcoloreturn x OR (-y),0, MiaPerdita,MioProfittoTi restituirà 4 parametri, di cui il terzo (lo ZERO della barra divisoria tra 1 e -1) puoi ignorarlo, quindi farai la CALL così:
1Segnale, ignored, StopLoss, TargetProfit = CALL "Il Mio Indicatore"(close)Dove il primo parametro restituito è il segnale (0,1,-1), il secondo parametro è la linea dello zero che separa 1 da -1 e la ignori, il terzo è lo Stop Loss ed il quarto ed ultimo è il Profitto.
Però con questa modifica quando lo metti sotto al grafico ti visualizzerà anche le linee dello Stop Loss e del Profitto, che ti restrimgeranno molto la visualizzazione dell’indicatore, per cui ti suggerisco, tramite le sue proprietà, di rendere queste linee invisibili (v. foto allegata).
05/19/2018 at 10:01 AM #70848Ovviamente i calcoli della Perdita e del Profitto non li ho messi io, dovrai farlo tu secondo i parametri che desideri.
05/19/2018 at 10:04 AM #7085505/19/2018 at 10:13 AM #70856Scusami, è il SECONDO parametro (lo zero) che puoi ignorare, non il TERZO che è lo Stop Loss!
-
AuthorPosts
Find exclusive trading pro-tools on