Alleggerimento codice
Forums › ProRealTime forum Italiano › Supporto ProBuilder › Alleggerimento codice
- This topic has 2 replies, 2 voices, and was last updated 6 years ago by
Gianco.
-
-
06/19/2018 at 7:56 AM #73641
ho questo codice Candlestick Patterns Indicator che ho provato ad alleggerirlo per avere solo alcune indicazioni , ma nel tentativo di cancellare fisicamente mi viene fuori un avviso come da foto allegata , e intanto ho provveduto a mettere le doppie // davanti alle scritte per evitare di far scrivere ciò che non mi interessa . Ecco , si può alleggerire il codice in modo che rimangano quelle che ho lasciato attive alla scrittura ?
Candlestick Patterns Indicator123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312// Trend direction identification//TDS=2 //(choose 1=MACD, 2=SAR, 3=Directional Movement)//text color// white = 255,255,255 ; black = 0,0,0r = 0g = 0b = 0atr = averagetruerange[10](close)*0.5body=close-openabody=abs(body)if range>0 thenratio=abody/rangeelseratio=0endifmiddle=(open+close)/2bodytop=max(open, close)bodybottom=min(open, close)shadowtop=high-bodytopshadowbottom=bodybottom-lowlongcandle= (ratio>0.6)DojiSize = 0.05data=(abs(open - close) <= (high - low) * DojiSize)if data then//DRAWTEXT("Doji", barindex, high+atr, Dialog, Standard, 12) COLOURED(R,G,B)endifif TDS=1 thenTrendUp=(MACDline[12,26,9](close)>0 AND MACD[12,26,9](close)>0)TrendDown=(MACDline[12,26,9](close)<0 AND MACD[12,26,9](close)<0)elseif TDS=2 thenTrendUp=(SAR[0.02,0.02,0.2]<low)TrendDown=(SAR[0.02,0.02,0.2]>high)elseif TDS=3 thenTrendUp=(ADX[14]>23 AND DI[14](close)>0)TrendDown=(ADX[14]>23 AND DI[14](close)<0)endifendifendif//Bullish SignalMorningStar=(body[2]<0 and body>0 and longcandle[2] and open[1]<close[2] and open>close[1] and ratio[1]<0.3 and abody[1]<abody[2] and abody[1]<abody and low[1]<low and low[1]<low[2] and high[1]<open[2] and high[1]<close)if TrendDown[3] AND MorningStar thenDRAWTEXT("Morning Star", barindex, low[1]-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)DRAWARROWUP(barindex-1,low[1]) COLOURED(0,155,10)endifAbandonedBabyBottom=(body[2]<0 and body>0 and longcandle[2] and ratio[1]<0.3 and high[1]<low[2] and high[1]<low)if TrendDown[3] AND AbandonedBabyBottom thenDRAWTEXT("Abandoned Baby Bottom", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifThreeInsideUp=(body[2]<0 and body[1]>0 and body>0 and BullishHarami[1] and close>close[1])if TrendDown[3] AND ThreeInsideUp thenDRAWTEXT("Three Inside Up", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifThreeOutsideUp=(body[2]<0 and body[1]>0 and body>0 and BullishEngulfing[1] and close>close[1])if TrendDown[3] AND ThreeOutsideUp thenDRAWTEXT("Three Outside Up", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifThreeWhiteSoldiers=(body[2]>0 and body[1]>0 and body>0 and high[1]>high[2] and high>high[1] and close[1]>close[2] and close>close[1] and open[1]>open[2] and open[1]<close[2] and open>open[1] and open<close[1])if TrendDown[3] AND ThreeWhiteSoldiers thenDRAWTEXT("Three White Soldiers", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifConcealingBabySwallow=(body[3]<0 and body[2]<0 and body[1]<0 and body<0 and ratio[3]>0.8 and ratio[2]>0.8 and ratio>0.8 and open[1]<close[2] and high[1]>close[2] and shadowtop[1]>0.6*(abody[1]+shadowbottom[1]) and bodybottom<bodybottom[1] and bodytop>high[1])if TrendDown[4] AND ConcealingBabySwallow thenDRAWTEXT("Concealing Baby Swallow", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifBullishHarami=(body[1]<0 and body>0 and longcandle[1] and bodybottom>bodybottom[1] and bodytop<bodytop[1])if TrendDown[2] AND BullishHarami then//DRAWTEXT("Bullish Harami", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)//DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifBullishEngulfing=(body[1]<0 and body>0 and bodybottom<bodybottom[1] and bodytop>bodytop[1] and longcandle)if TrendDown[2] AND BullishEngulfing then//DRAWTEXT("Bullish Engulfing", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)//DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifDragonflyDojiBottom=(body[1]<0 and longcandle[1] and low<low[1] and shadowbottom>3*abody and shadowtop<shadowbottom/3)if TrendDown[2] AND DragonflyDojiBottom then//DRAWTEXT("Dragonfly Doji", barindex, low-atr, Dialog, Standard, 12) COLOURED(0,155,10)//DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifGravestoneDojiBottom=(body[1]<0 and longcandle[1] and low<low[1] and shadowtop>3*abody and shadowbottom<shadowtop/3)if TrendDown[2] AND GravestoneDojiBottom then//DRAWTEXT("Gravestone Doji", barindex, low-atr, Dialog, Standard, 12) COLOURED(0,155,10)//DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifDojiStarBottom=(body[1]<0 AND longcandle[1] AND low<low[1] AND open<close[1] AND ratio<0.3 AND range<0.3*range[1])if TrendDown[2] AND DojiStarBottom then//DRAWTEXT("Doji", barindex, low-atr, Dialog, Standard, 12) COLOURED(R,G,B)endifBullishHaramiCross=(body[1]<0 and longcandle[1] and bodybottom>bodybottom[1] and bodytop<bodytop[1] and ratio<0.3 and range<0.3*range[1])if TrendDown[2] AND BullishHaramiCross then//DRAWTEXT("Bullish Harami Cross", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)//DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifThreeStarsInTheSouth=(body[2]<0 and body[1]<0 and body<0 and shadowtop[2]<range[2]/4 and shadowbottom[2]>abody[2]/2 and low[1]>low[2] and high[1]<high[2] and abody[1]<abody[2] and shadowtop[1]<range[1]/4 and shadowbottom[1]>abody[1]/2 and low>low[1] and high<high[1] and abody<abody[1] and shadowtop<range/4 and shadowbottom<range/4)if TrendDown[3] AND ThreeStarsInTheSouth thenDRAWTEXT("Three Stars In The South", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifBullishBreakaway=(body[4]<0 and body[3]<0 and body>0 and open[3]<close[4] and close[2]<close[3] and close[1]<close[2] and longcandle and close<close[4] and close>open[3])if TrendDown[5] AND BullishBreakaway then//DRAWTEXT("Bullish Breakaway", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)//DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifHammer=(body[1]<0 and longcandle[1] and low<low[1] and shadowbottom>2*abody and shadowtop<0.3*abody)if TrendDown[2] AND Hammer then//DRAWTEXT("Hammer", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)//DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifInvertedHammer=(body[1]<0 and longcandle[1] and low<low[1] and shadowtop>2*abody and shadowbottom<0.3*abody)if TrendDown[2] AND InvertedHammer then//DRAWTEXT("Inverted Hammer", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)//DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifRisingThreeMethods=(body[4]>0 and body[3]<0 and body[1]<0 and body>0 and longcandle[4] and longcandle and close[2]<close[3] and close[1]<close[2] and high[2]<high[3] and high[1]<high[2] and low[1]>low[4] and open>close[1] and close>high[4] and close>high[3] and close>high[2] and close>high[1])if TrendUp[5] AND RisingThreeMethods thenDRAWTEXT("Rising Three Methods", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifBullishThreeLineStrike=(body[3]>0 and body[2]>0 and body[1]>0 and body<0 and longcandle[3] and longcandle[2] and longcandle[1] and close[2]>close[3] and close[1]>close[2] and open>close[1] and close<open[3])if TrendUp[4] AND BullishThreeLineStrike thenDRAWTEXT("Bullish Three Line Strike", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)DRAWARROWUP(barindex,low) COLOURED(0,155,10)endifBullishMatHold=(body[4]>0 and body[3]<0 and body[1]<0 and body>0 and longcandle[4] and close[3]>close[4] and close[2]<close[3] and close[1]<close[2] and high[2]<high[3] and high[1]<high[2] and low[1]>low[4] and open>close[1] and close>high[4] and close>high[3] and close>high[2] and close>high[1])if TrendUp[5] AND BullishMatHold thenDRAWTEXT("Bullish Mat Hold", barindex, low-atr*1.5, Dialog, Standard, 12) COLOURED(0,155,10)DRAWARROWUP(barindex,low) COLOURED(0,155,10)endif//Bearish SignalEveningStar=(body[2]>0 AND body<0 and longcandle[2] and open[1]>close[2] and open<close[1] and ratio[1]<0.3 and abody[1]<abody[2] and abody[1]<abody and high[1]>high and high[1]>high[2] and low[1]>open[2] and low[1]>close)if TrendUp[3] AND EveningStar thenDRAWTEXT("Evening Star", barindex, high[1]+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)DRAWARROWDOWN(barindex-1,high[1]) COLOURED(255,0,10)endifDarkCloudCover=(body[1]>0 and body<0 and longcandle[1] and longcandle and open>high[1] and close<middle[1] and close>open[1])if TrendUp[2] AND DarkCloudCover thenDRAWTEXT("Dark Cloud Cover", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifAbandonedBabyTop=(body[2]>0 and body<0 and longcandle[2] and ratio[1]<0.3 and low[1]>high[2] and low[1]>high)if TrendUp[3] AND AbandonedBabyTop thenDRAWTEXT("Abandoned Baby Top", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifThreeInsideDown=(body[2]>0 and body[1]<0 and body<0 and bearishharami[1] and close<close[1])if TrendUp[3] AND ThreeInsideDown thenDRAWTEXT("Three Inside Down", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifThreeOutsideDown=(body[2]>0 and body[1]<0 and body<0 and bearishengulfing[1] and close<close[1])if TrendUp[3] AND ThreeOutsideDown thenDRAWTEXT("Three Outside Down", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifThreeBlackCrows=(body[2]<0 and body[1]<0 and body<0 and longcandle[2] and longcandle[1] and longcandle and low[1]<low[2] and low<low[1] and close[1]<close[2] and close<close[1] and open[1]<open[2] and open[1]>close[2] and open<open[1] and open>close[1])if TrendUp[3] AND ThreeBlackCrows thenDRAWTEXT("Three Black Crows", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifUpsideGapTwoCrows=(body[2]>0 and body[1]<0 and body<0 and longcandle[2] and open[1]>close[2] and bodytop>bodytop[1] and bodybottom<bodybottom[1] and close>close[2])if TrendUp[3] AND UpsideGapTwoCrows thenDRAWTEXT("Upside Gap Two Crows", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifBearishHarami=(body[1]>0 and body<0 and longcandle[1] and bodybottom>bodybottom[1] and bodytop<bodytop[1])if TrendUp[2] AND BearishHarami then//DRAWTEXT("Bearish Harami", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)//DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifBearishEngulfing=(body[1]>0 and body<0 and bodybottom<bodybottom[1] and bodytop>bodytop[1] and longcandle)if TrendUp[2] AND BearishEngulfing then//DRAWTEXT("Bearish Engulfing", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)//DRAWARROWDOWN(barindex,high) COLOURED(255,0,20)endifDragonflyDojiTop=(body[1]>0 and longcandle[1] and high>high[1] and shadowbottom>3*abody and shadowtop<shadowbottom/3)if TrendUp[2] AND DragonflyDojiTop then//DRAWTEXT("Dragonfly Doji", barindex, high+atr, Dialog, Standard, 12) COLOURED(255,0,10)//DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifGravestoneDojiTop=(body[1]>0 and longcandle[1] and high>high[1] and shadowtop>3*abody and shadowbottom<shadowtop/3)if TrendUp[2] AND GravestoneDojiTop then//DRAWTEXT("Gravestone Doji", barindex, high+atr, Dialog, Standard, 12) COLOURED(255,0,10)//DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifDojiStarTop=(body[1]>0 AND longcandle[1] AND high>high[1] AND open>close[1] AND ratio<0.3 AND range<0.3*range[1])if TrendUp[2] AND DojiStarTop thenDRAWTEXT("Doji", barindex, high+atr, Dialog, Standard, 12) COLOURED(R,G,B)endifBearishHaramiCross=(body[1]>0 and longcandle[1] and bodybottom>bodybottom[1] and bodytop<bodytop[1] and ratio<0.3 and range<0.3*range[1])if TrendUp[2] AND BearishHaramiCross then//DRAWTEXT("Bearish Harami Cross", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)//DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifAdvanceBlock=(body[2]>0 and body[1]>0 and body>0 and high[2]<high[1] and high[1]<high and open[1]>bodybottom[2] and open[1]<bodytop[2] and open>bodybottom[1] and open<bodytop[1] and abody[1]<abody[2] and abody<abody[1])if TrendUp[3] AND AdvanceBlock then//DRAWTEXT("Advance Block", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)//DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifTwoCrows=(body[2]>0 and body[1]<0 and body<0 and longcandle[2] and open[1]>close[2] and close[1]>close[2] and open<bodytop[1] and open>bodybottom[1] and close<bodytop[2] and close>bodybottom[2])if TrendUp[3] AND TwoCrows thenDRAWTEXT("Two Crows", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifBearishBreakaway=(body[4]>0 and body[3]>0 and body<0 and open[3]>close[4] and close[2]>close[3] and close[1]>close[2] and longcandle and close>close[4] and close<open[3])if TrendUp[5] AND BearishBreakaway then//DRAWTEXT("Bearish Breakaway", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)//DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifShootingStar=(body[1]>0 and longcandle[1] and high>high[1] and shadowtop>2*abody and shadowbottom<0.3*abody)if TrendUp[2] AND ShootingStar thenDRAWTEXT("Shooting Star", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifHangingMan=(body[1]>0 and longcandle[1] and high>high[1] and shadowbottom>2*abody and shadowtop<0.3*abody)if TrendUp[2] AND HangingMan then//DRAWTEXT("Hanging Man", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)//DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifFallingThreeMethods=(body[4]<0 and body[3]>0 and body[1]>0 and body<0 and longcandle[4] and longcandle and close[2]>close[3] and close[1]>close[2] and low[2]>low[3] and low[1]>low[2] and high[1]<high[4] and open<close[1] and close<low[4] and close<low[3] and close<low[2] and close<low[1])if TrendDown[5] AND FallingThreeMethods thenDRAWTEXT("Falling Three Methods", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifBearishThreeLineStrike=(body[3]<0 and body[2]<0 and body[1]<0 and body>0 and longcandle[3] and longcandle[2] and longcandle[1] and close[2]<close[3] and close[1]<close[2] and open<close[1] and close>open[3])if TrendDown[4] AND BearishThreeLineStrike thenDRAWTEXT("Bearish Three Line Strike", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endifBearishMatHold=(body[4]<0 and body[3]>0 and body[1]>0 and body<0 and longcandle[4] and close[3]<close[4] and close[2]>close[3] and close[1]>close[2] and low[2]>low[3] and low[1]>low[2] and high[1]<high[4] and open<close[1] and close<low[4] and close<low[3] and close<low[2] and close<low[1])if TrendDown[5] AND BearishMatHold thenDRAWTEXT("Bearish Mat Hold", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)endif//Gaps//Extension = 10GapUp=(low>high[1])GapDown=(high<low[1])if GapUp thenDRAWTEXT(" ==", barindex, (high[1]+low)/2, Dialog, Bold, 20) COLOURED(0,0,255)//DRAWRECTANGLE(barindex[1]-1,low[1],barindex+Extension,high)coloured(248,248,255)elseif GapDown thenDRAWTEXT(" ==", barindex, (high+low[1])/2, Dialog, Bold, 20) COLOURED(255,0,255)endifendifRETURNin poche parole mi interessano : MorningStar , AbandonedBabyBottom , ThreeInsideUp , ThreeOutsideUp , ThreeWhiteSoldiers , ThreeStarsInTheSouth , RisingThreeMethods , BullishThreeLineStrike , EveningStar , AbandonedBabyTop , ThreeInsideDown , ThreeOutsideDown , DojiStarTop , ShootingStar ,
Serve per alleggerire il codice ? Oppure basta solamente non far scrivere sul grafico ?
Grazie
06/19/2018 at 10:29 AM #73658Per alleggerire un pò il codice puoi commentare le righe che non ti interessano, ad esempio le righe 251-255 puoi farle diventare così:
12345//AdvanceBlock=(body[2]>0 and body[1]>0 and body>0 and high[2]<high[1] and high[1]<high and open[1]>bodybottom[2] and open[1]<bodytop[2] and open>bodybottom[1] and open<bodytop[1] and abody[1]<abody[2] and abody<abody[1])//if TrendUp[3] AND AdvanceBlock then//DRAWTEXT("Advance Block", barindex, high+atr*1.5, Dialog, Standard, 12) COLOURED(255,0,10)//DRAWARROWDOWN(barindex,high) COLOURED(255,0,10)//endifPer quelle, invece cui fanno riferimento altri pattern, devi solo togliere l’indicazione sul grafico lasciandone però la definizione, in modo che gli altri pattern cui fanno riferimento possano utilizzarli, ad esempio BullishHarami (che non t’interessa) è utilizzata da ThreeInsideUp (che t’interessa) per cui NON puoi cancellarla o commentarla interamente, altrimenti ti viene segnalato l’errore che manca la definizione di una variabile, per cui in questo caso commenti, o togli, solo la visualizzazione sul grafico e lasci la definizione, come hai fatto alle righe 96-97.
06/30/2018 at 6:05 AM #74878Ok , grazie Roberto , ho capito che fanno riferimento e togliendole manca una indicazione che porta errore , quindi diciamo che non si alleggerisce come calcolo , ma non si fa segnalare ciò che non vogliamo .
Grazie Roberto , buona giornata
-
AuthorPosts
Find exclusive trading pro-tools on