ALERTE PRT SUR INDICATEUR
Forums › ProRealTime forum Français › Support ProBuilder › ALERTE PRT SUR INDICATEUR
- This topic has 1 reply, 2 voices, and was last updated 6 years ago by Nicolas.
-
-
10/29/2018 at 3:43 PM #83737
Bonjour à tous , bonjour Nicolas
On a tous sur l’écran du PC un graphe prix et une ribambelle (ou pas) d’indicateurs en fenêtre, bien.
Est-il possible de déclencher une alerte PRT (celle de prorealtime symbolisée par une cloche) lors de l’apparition d’un signal sur un indicateur ?
J’ai pris ici l’exemple du Pekipek codé par Nicolas.
Si ce n’est pas possible en l’état, est-ce que le chef (qui doit avoir l’oreille du bon dieu) pourrait demander à PRT de nous créer un bout de code à cette fin.
Ainsi lors de l’ouverture d’une valeur l’alerte nous dirait que tel signal s’est déclenché sur tel indicateur.
Bonne journée, bons trades.
graphe joint de AIR LIQUIDE
PEKIPEK NICO PRC123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171// PEKIPEK NICO PRC 14.09.2018longtermdiv = 1 //input(true, title="Use long term Divergences?")divlookbackperiod = 55//input(55, minval=1, title="Lookback Period")fastLength = 12//input(12, minval=1),slowLength= 26 //input(26,minval=1)//signalLength= 9 //input(9,minval=1)smoother = 2 //input(2,minval=1)source = customclosefastMA = average[fastLength,1](source)slowMA = average[slowLength,1](source)mmacd = fastMA - slowMAmacd2=(mmacd/slowMA)*100d = average[smoother](macd2) // smoothing PPObullishPrice = lowpriceMins = (bullishPrice > bullishPrice[1] and bullishPrice[1] < bullishPrice[2]) or (low[1] = low[2] and low[1] < low and low[1] < low[3]) or (low[1] = low[2] and low[1] = low[3] and low[1] < low and low[1] < low[4]) or (low[1] = low[2] and low[1] = low[3] and low[1] and low[1] = low[4] and low[1] < low and low[1] < low[5]) // this line identifies bottoms and plateaus in the priceoscMins= d > d[1] and d[1] < d[2] // this line identifies bottoms in the PPOBottomPointsInPPO = oscMinsbearishPrice = highpriceMax = (bearishPrice < bearishPrice[1] and bearishPrice[1] > bearishPrice[2]) or (high[1] = high[2] and high[1] > high and high[1] > high[3]) or( high[1] = high[2] and high[1] = high[3] and high[1] > high and high[1] > high[4]) or (high[1] = high[2] and high[1] = high[3] and high[1] and high[1] = high[4] and high[1] > high and high[1] > high[5]) // this line identifies tops in the priceoscMax = d < d[1] and d[1] > d[2] // this line identifies tops in the PPOTopPointsInPPO = oscMax//avoid loops!if oscMins thencurrenttrough4=d[1] //valuewhen (oscMins, d[1], 0) // identifies the value of PPO at the most recent BOTTOM in the PPOoscMinsBar = barindexendifif oscMax thencurrenttrough5=d[1] //valuewhen (oscMax, d[1], 0) // identifies the value of PPO at the most recent TOP in the PPOoscMaxBar = barindexendifif priceMins thencurrenttrough6= low[1]//valuewhen (priceMins, low[1], 0) // this line identifies the low (price) at the most recent bottom in the PricepriceMinsBar = barindexif barindex-oscMinsBar<3 then //=line 47delayedlow=low[1]elsedelayedlow=0endifif priceMins<>priceMins[1] then //=line62longtermbullfilt=lowest[divlookbackperiod](source)[0]endifendifif priceMax thenpriceMaxBar = barindexcurrenttrough7= high[1]//valuewhen (priceMax, high[1], 0) // this line identifies the high (price) at the most recent top in the Priceif barindex-oscMaxBar<3 then //=line48delayedhigh=high[1]elsedelayedhigh=0endifif priceMax<>priceMax[1] then //=line63longtermbearfilt=highest[divlookbackperiod](source)[0]endifendif// only take tops/bottoms in price when tops/bottoms are less than 5 bars away//filter = barssince(priceMins) < 5 ? lowest(currenttrough6, 4) : naif barindex-priceMinsBar<5 thenfilter = lowest[4](currenttrough6)elsefilter=0endif//filter2 = barssince(priceMax) < 5 ? highest(currenttrough7, 4) : naif barindex-priceMaxBar<5 thenfilter2=highest[4](currenttrough7)elsefilter2=0endif//delayedbottom/top when oscillator bottom/top is earlier than price bottom/top//y11 = valuewhen(oscMins, delayedlow, 0)if oscMins then//y11=delayedlowy7=currenttrough4 //=line71y9 = currenttrough6 //=line74if oscMins<>oscMins[1] and filter2>0 theny2=filter2 //=line59y8=currenttrough4[1] //=line72endifendif//y12 = valuewhen(oscMax, delayedhigh, 0)if oscMax then//y12 = delayedhighy3=currenttrough5 //=line 65y10=currenttrough7 //=line75if oscMax<>oscMax[1] and filter>0 theny6=filter //=line60y4=currenttrough5[1] //=line66endifendif// only take tops/bottoms in price when tops/bottoms are less than 5 bars away, since 2nd most recent top/bottom in osc//y2=0//y6=0//for xyz=0 to barindex do////y2=valuewhen(oscMax, filter2, 1) // identifies the highest high in the tops of price with 5 bar lookback period SINCE the SECOND most recent top in PPO////y6=valuewhen(oscMins, filter, 1) // identifies the lowest low in the bottoms of price with 5 bar lookback period SINCE the SECOND most recent bottom in PPO//if filter2[xyz]<>filter2 and filter2>0 then//y2=filter2[xyz]//endif//if filter[xyz]<>filter and filter>0 then//y6=filter[xyz]//endif//if y2>0 and y6>0 then//break//endif//next//bulldiv= BottomPointsInPPO ? d[1] : na // plots dots at bottoms in the PPOif BottomPointsInPPo thendrawtext("●",barindex[1],d[1],dialog,bold,30) coloured (54,166,6) // vert foncé(0,255,72) // vert clairendif//beardiv= TopPointsInPPO ? d[1]: na // plots dots at tops in the PPOif TopPointsInPPO thendrawtext("●",barindex[1],d[1],dialog,bold,30) coloured(255,0,0)//rougeendifi = currenttrough5 < highest[divlookbackperiod](d) // long term bearish oscilator divergencei2 = y10 > longtermbearfilt // long term bearish top divergencei3 = delayedhigh > longtermbearfilt and delayedhigh>0 // long term bearish delayedhigh divergencei4 = currenttrough4 > lowest[divlookbackperiod](d) // long term bullish osc divergencei5 = y9 < longtermbullfilt // long term bullish bottom divi6 = delayedlow < longtermbullfilt and delayedlow>0// long term bullish delayedbottom div//plot(y10>y2 and oscMax and y3 < y4 ? d :na, title = "Bearish Divergence2", color=orange, style= circles, linewidth=4)if y10>y2 and oscMax and y3 < y4 thendrawtext("●",barindex,d,dialog,bold,10) coloured(255,165,0)endif//plot(y9<y6 and oscMins and y7 > y8 ? d :na, title = "Bullish Divergence2", color=purple, style=circles, linewidth=4)if y9<y6 and oscMins and y7 > y8 thendrawtext("●",barindex,d,dialog,bold,10) coloured(128,0,128)endif//plot(delayedlow<y6 and y7 > y8 ? d :na, title = "Bullish Divergence2", color=purple, style=circles, linewidth=4)if delayedlow<y6 and y7 > y8 and delayedlow>0 thendrawtext("●",barindex,d,dialog,bold,10) coloured(128,0,128)endif//plot(delayedhigh>y2 and y3 < y4 ? d :na, title = "Bearish Divergence2", color=orange, style= circles, linewidth=4)if delayedhigh>y2 and y3 < y4 and delayedhigh>0 thendrawtext("●",barindex,d,dialog,bold,10) coloured(255,165,0)endif//plot(long_term_div and oscMax and i and i2 ? d :na, title = "Bearish Divergence2", color=orange, style= circles, linewidth=4)if longtermdiv and oscMax and i and i2 thendrawtext("●",barindex,d,dialog,bold,10) coloured(255,165,0)endif//plot(long_term_div and oscMins and i4 and i5 ? d : na, title = "Bullish Divergence2", color=purple, style=circles, linewidth=4)if longtermdiv and oscMins and i4 and i5 thendrawtext("●",barindex,d,dialog,bold,10) coloured(128,0,128)endif//plot(long_term_div and i and i3 ? d :na, title = "Bearish Divergence2", color=orange, style= circles, linewidth=4)if longtermdiv and i and i3 thendrawtext("●",barindex,d,dialog,bold,10) coloured(255,165,0)endif//plot(long_term_div and i4 and i6 ? d : na, title = "Bullish Divergence2", color=purple, style=circles, linewidth=4)if longtermdiv and i4 and i6 thendrawtext("●",barindex,d,dialog,bold,10) coloured(128,0,128)endifreturn d as "ppo"10/30/2018 at 1:27 PM #83795 -
AuthorPosts
Find exclusive trading pro-tools on