In the Zorro structs you can see that they use both float and double. They use double where speed matters, and float where memory footprint or file size matters. Internal calculations always use double.

For using external libraries such as ta-lib, there is no choice anyway. No serious finance library has floats nowadays. They all expect data in double arrays.