I suggest you try HDMI cable marked "Premium High Speed" and with anti-counterfeiting tags.
Also, keep in mind:
to get a Mac display to become active, you need the Mac to query the display, and the display to answer with its name and capabilities. Otherwise, the display will not be shown as present, and no data will be sent to the display. "No signal detected" is generated by the DISPLAY, not by the Mac.
This query is only sent at certain times:
• at startup
• at wake from sleep — so momentarily sleeping and waking your Mac may work
• at insertion of the Mac-end of the display-cable, provided everything on that cable is ready-to-go
• on invoking Option-(Detect Display) button in Displays preferences (from another display)
so try doing some of those things and see if the display comes alive.
Modern Displays with multiple ports are sometimes busy scanning the other ports, looking for an input, and miss the query from the Mac. They need to pay attention to the port you are actually using, or they will miss the query.
Some displays have On-Screen Display settings that can be used to tell the display a computer is attached on a certain port, or a certain port should be highest priority. Changing those may make your display more responsive.
Some displays include their own private "sleep" settings for the display alone. This can allow the display to enter its own sleep mode, on top of the Mac's not sending it data. A display that is sleeping on its own cannot respond to the Mac's query, and will stay dark.