// NewHMA returns a WMA.
NewHMA returns a WMA.
// NewHMA returns a WMA .
func NewHMA(sizes ...float64) *HMA {
	size := defaultHMASize
	if len(sizes) != 0 && sizes[0] > 1 {
		size = int(sizes[0])
	}
	wma := make([]*WMA, 3)
	wma[0] = NewWMA(size / 2)
	wma[1] = NewWMA(size)
	wma[2] = NewWMA(int(math.Sqrt(float64(size))))
	return &HMA{
		wma:  wma,
		size: uint64(size),
	}
}
func NewHMA ( sizes ... float64 ) * HMA { size := defaultHMASize if len ( sizes ) != 0 && sizes [ 0 ] > 1 { size = int ( sizes [ 0 ] ) } wma := make ( [ ] * WMA , 3 ) wma [ 0 ] = NewWMA ( size / 2 ) wma [ 1 ] = NewWMA ( size ) wma [ 2 ] = NewWMA ( int ( math . Sqrt ( float64 ( size ) ) ) ) return & HMA { wma : wma , size : uint64 ( size ) , } }
NewHMA returns a WMA.
NewHMA returns a WMA .