I did two versions I dug a trench about three feet wide and 4 feet deep in the 18" area then installed the liner into that trench when building the pond and then set three large flat rocks over the trench i have close to 30 koi anywhere from 4" to 24" and i have seen them all in there. the other is a tunnel where the slab of granite is like 5 foot long by 4 foot wide and then i placed a couple other flat stones on top of that to complete the tunnel to the sides of the pond wall. they call all easily hide in there. the cave is to the left in t5he video with the large flat rocks the cave in almost center in the video and black. oh and becareful what you wish for i gave my fish a place to hide alright it works so good i don't stand a chance cathing them https://www.gardenpondforum.com/threads/going-for-it-phase-one-12-000-gallon-pond.22563/page-31
We use a chimney flue liner too - I sanded down the edges to make it nice and smooth. I like that the clay very quickly acquires a nice layer of algae and blends right in. Plus it makes a great flat spot to put a water lily pot!
We used large planting pots and cut them in half, lengthwise. We cut off the bottoms and sanded the rough edges and got two fish caves for the price of one. They are heavy enough to sink and stay put. I usually remove them while I vacuum the pond when that is needed, then put them back. The fish seem to really like them.