I've been having trouble getting my external monitors set up, and I finally got one to work by switching from the proprietary nvidia drivers to the open source ones. I'm on a Razer Blade 15 which is running a GTX 1060M.
I'm trying to achieve two things: figure out why the nvidia drivers won't detect my external displays, and at least get my 3rd display running on the open source drivers. My third display is plugged in to my USB-C thunderbolt port and I think it's recognized as display port.