I've tried the Donchian and many other envelopes but never been entirely happy with any of them.
When able to be applied I find the Standard Error Channel does a very good job.
The chart illustrates the T3 which might be described as a more efficient or smoothed MA and is the best tool I've come across so far that 'cuts' the Price for B/S signals.
T3 MetaStock formula:
Periods:=Input("Periods?",1,63,5);
a:=Input("Hot?",0,2,.7);
e1:=Mov(P,Periods,E); {change P to H, L or O}
e2:=Mov(e1,Periods,E);
e3:=Mov(e2,Periods,E);
e4:=Mov(e3,Periods,E);
e5:=Mov(e4,Periods,E);
e6:=Mov(e5,Periods,E);
c1:=-a*a*a;
c2:=3*a*a+3*a*a*a;
c3:=-6*a*a-3*a-3*a*a*a;
c4:=1+3*a+a*a*a+3*a*a;
c1*e6+c2*e5+c3*e4+c4*e3;
edit: just discovered (!!!) entering 1.25 for instance in Hot produces a better higher/lower 'cut' with T3 P.