Hands down, this is one of your best options (and what I got). https://www.amazon.com/gp/product/B01LONQ3TS/ref=oh_aui_detailpage_o07_s00?ie=UTF8&psc=1
it's short and does the job perfectly. Once you set it up the first time, all you do is plug both ends in and everything happens automatically (don't even have to open the app). It is USB C Male to USB C Male.
I saw the other post showing a 6ft belkin cable... not sure how it's practical to be handling a 6 foot cord just for booting.
I use the official OTG adapter for my oneplus 5t and I've successfully used the included usb a to usb c charger that came with it, and I've used a generic, crappy usb a to micro usb with a micro usb to usb c adapter from Anker. Those are the only 2 usb c cords I have.
I use a small micro USB cable with a USB c otg adapter on the full size USB end and a micro to c adapter on the other end. I have had no issues with this set up