[LegacyColorValue = true]; 

{ Ttest2vDF : Student T-test degrees of freedom for 2 variables
  Copyright 1998-1999, PJ Kaufman. All rights reserved }

	inputs: price1(numericseries), length1(numericsimple),
			price2(numericseries), length2(numericsimple);
	vars:	n1(0), n2(0),s1(0), s2(0), pow1(0), pow2(0), denom(0),
			diff1(0), diff12(0), sd1(0), diff2(0), diff22(0), sd2(0);

	TSMTtest2vDF = 0;
	n1 = length1;
	if currentbar > length1 then n1 = currentbar;
	n2 = length2;
	if currentbar > length2 then n2 = currentbar;
	if n1 > 0 and n2 > 0 then begin
{ calculate standard deviations }
		diff1 = price1 - average(price1,n1);
		diff12 = diff1 * diff1;
		sd1 = squareroot(average(diff12,n1));
		diff2 = price2 - average(price2,n2);
		diff22 = diff2 * diff2;
		sd2 = squareroot(average(diff22,n2));
{ calculate degrees of freedom }
 		s1 = sd1 * sd1 / n1;
		s2 = sd2 * sd2 / n2;
		pow1 = s1 * s1;
		pow2 = s2 * s2;
		if n1 <> n2 then begin
			denom =  (pow1 / (n1 - n2)) + (pow2 / (n2 - n1));
			if denom <> 0 then TSMTtest2vDF = power((s1 + s2),2) / denom;
			end;
		end;