Bressert Double Stochastic - page 4

 

My trading style is nothing exciting

Day trader, using 1 hour and daily charts, EURUSD only (there are sometimes couple of days periods that I don't enter a new order), max order size 1% of equity if it goes against me 100 pips. Targeting low (compared to some expectations) : for last 4-5 years my awerage is from 20 to 40% (a year) and I am OK with that. Some of the indicators I use you can see on my pictures too.

lucmat:
Thanks mladen!

I hope my indicator's ideas are useful to you!!!

May I ask you what is your trading style and what indicator do you use?

Have a nice trading week ahead
 

Thank you

 

double post

 

Any possibility to make this Histo version

mladen:
I liked the idea to use something else for DSS calculation so tested some. Posting here 3 but the one I find interesting is the DSS of an average, so posting the picture of that one only. The others are not bad either (what surprises me that they do not lag when compared to "pure" DSS) so feel free to test them - it all depends on ones preferences which one to use

https://c.mql5.com/forextsd/forum/120/dss_bressert_-_ma.mq4

Mladen can this be converted into histo version

Thanks in advance

 
macerina:
https://c.mql5.com/forextsd/forum/120/dss_bressert_-_ma.mq4

Mladen can this be converted into histo version

Thanks in advance

Macerina, this is the Dss bressert ma histo version.

 
mrtools:
Macerina, this is the Dss bressert ma histo version.

Thank U much mrtools that was very helpful

 

DSS of MACD ...

One more for the collection : DSS of a MACD

Files:
 

DSS of Accumulation/Distribution

Fooling a bit with possible inputs for DSS. This one is using Accumulation/Distribution for that purpose. As a reminder Accumulation/Distribution is :

The Accumulation/Distribution is a momentum indicator that associates changes in price and volume. The indicator is based on the premise that the more volume that accompanies a price move, the more significant the price move.
Files:
 

Bressert System

hi mladen,

Bressert different settings generate the chart star,

either overbought or oversold

maybe they can help

thank mahatma

here the code

Meta:

Synopsis( "DSSBressertsys" ),

ShortCode( "DBS" ),

SubChart( False );

Inputs:

group(7),

Price( Close ),

Period1( 5, 1 ),

Period2( 8, 1 ),

Period3( 13, 1 ),

Period4( 21, 1 ),

Period5( 34, 1 ),

Period6( 55, 1 ),

Period7( 89, 1 ),

Period8( 144, 1 ),

Smoothing( 3.0, 1.0 ),

LowerZone(20),

HigherZone(80),

ecart(5),

SymbolWidth(3);

Variables:

db1,db2,db3,db4,

db5,db6,db7,db8,indic;

if currentbar>=Period8 then begin

db1 = DSSBressert( Price, Period1, Smoothing );

db2 = DSSBressert( Price, Period2, Smoothing );

db3 = DSSBressert( Price, Period3, Smoothing );

db4 = DSSBressert( Price, Period4, Smoothing );

db5 = DSSBressert( Price, Period5, Smoothing );

db6 = DSSBressert( Price, Period6, Smoothing );

db7 = DSSBressert( Price, Period7, Smoothing );

db8 = DSSBressert( Price, Period8, Smoothing );

indic=0;

if db1 <= lowerzone then indic = indic-1;

if db2 <= lowerzone then indic = indic-1;

if db3 <= lowerzone then indic = indic-1;

if db4 <= lowerzone then indic = indic-1;

if db5 <= lowerzone then indic = indic-1;

if db6 <= lowerzone then indic = indic-1;

if db7 <= lowerzone then indic = indic-1;

if db8 <= lowerzone then indic = indic-1;

if indic <= group * (-1) then

DrawSymbol( Low - ecart,"bullsig" ,SymbolStar, SymbolWidth,Yellow, Yellow);

indic=0;

if db1 >= higherzone then indic = indic+1;

if db2 >= higherzone then indic = indic+1;

if db3 >= higherzone then indic = indic+1;

if db4 >= higherzone then indic = indic+1;

if db5 >= higherzone then indic = indic+1;

if db6 >= higherzone then indic = indic+1;

if db7 >= higherzone then indic = indic+1;

if db8 >= higherzone then indic = indic+1;

if indic >= group then

DrawSymbol( High + ecart,"bearsig" , SymbolStar, SymbolWidth, Red, Red);

end;

 

DSS - fan and fan signal ...

mahatma

These two are extracted from the code you posted.

The first one (the "fan") is made in order to show what exactly is the indicator doing (calculating 8 instances of DSS), second is actually the code you posted made for metatrader : it shows signals when predefined instances of DSS are bellow or above LevelUp and LevelDown parameter values (70 and 30 by default)

________________________________

PS: if you set any StochasticLength parameter to less than or equal to 1, it will not be calculated (used) in the signal calculation and then Group parameter has to be adjusted

PPS: both are standalone indicators, They do not need any other indicator in order to work OK

mahatma:
hi mladen,

Bressert different settings generate the chart star,

either overbought or oversold

maybe they can help

thank mahatma

here the code

Meta:

Synopsis( "DSSBressertsys" ),

ShortCode( "DBS" ),

SubChart( False );

Inputs:

group(7),

Price( Close ),

Period1( 5, 1 ),

Period2( 8, 1 ),

Period3( 13, 1 ),

Period4( 21, 1 ),

Period5( 34, 1 ),

Period6( 55, 1 ),

Period7( 89, 1 ),

Period8( 144, 1 ),

Smoothing( 3.0, 1.0 ),

LowerZone(20),

HigherZone(80),

ecart(5),

SymbolWidth(3);

Variables:

db1,db2,db3,db4,

db5,db6,db7,db8,indic;

if currentbar>=Period8 then begin

db1 = DSSBressert( Price, Period1, Smoothing );

db2 = DSSBressert( Price, Period2, Smoothing );

db3 = DSSBressert( Price, Period3, Smoothing );

db4 = DSSBressert( Price, Period4, Smoothing );

db5 = DSSBressert( Price, Period5, Smoothing );

db6 = DSSBressert( Price, Period6, Smoothing );

db7 = DSSBressert( Price, Period7, Smoothing );

db8 = DSSBressert( Price, Period8, Smoothing );

indic=0;

if db1 <= lowerzone then indic = indic-1;

if db2 <= lowerzone then indic = indic-1;

if db3 <= lowerzone then indic = indic-1;

if db4 <= lowerzone then indic = indic-1;

if db5 <= lowerzone then indic = indic-1;

if db6 <= lowerzone then indic = indic-1;

if db7 <= lowerzone then indic = indic-1;

if db8 <= lowerzone then indic = indic-1;

if indic <= group * (-1) then

DrawSymbol( Low - ecart,"bullsig" ,SymbolStar, SymbolWidth,Yellow, Yellow);

indic=0;

if db1 >= higherzone then indic = indic+1;

if db2 >= higherzone then indic = indic+1;

if db3 >= higherzone then indic = indic+1;

if db4 >= higherzone then indic = indic+1;

if db5 >= higherzone then indic = indic+1;

if db6 >= higherzone then indic = indic+1;

if db7 >= higherzone then indic = indic+1;

if db8 >= higherzone then indic = indic+1;

if indic >= group then

DrawSymbol( High + ecart,"bearsig" , SymbolStar, SymbolWidth, Red, Red);

end;