Hi,
That's right, there is no such kind of filter in the HikaShop product listing (menu/modules).
But it is possible to add such feature using a plugin and there are two different solutions for the implementation.
You can use a plugin which will add settings when you configure a product listing menu/module (like HikaMarket do for the settings "show sold by" or "link vendor category to vendor page").
Then the plugin can read the setting when a product listing is displayed.
The other solution is to have a plugin which contains the ID of the modules/menu it has to filter.
The plugin "hikashop / productvendorfilter" currently do this job and you can use this plugin as a base for a new one.
Thanks to it, you can copy the plugin (to have a new one) and change the part of the filter
$vendor = hikamarket::loadVendor(false);
$filters[] = 'b.product_vendor_id = ' . (int)$vendor;
Into something like
$c .= ' INNER JOIN ' . hikashop_table('discount').' AS discount ON discount.discount_type = \'discount\' AND (discount.discount_product_id = b.product_id OR discount.discount_product_id LIKE CONCAT(\'%,\', b.product_id, \',%\')';
$filters[] = 'discount.discount_published = 1';
$filters[] = '(discount.discount_start = 0 OR discount.discount_start >= ' . time().')';
$filters[] = '(discount.discount_end = 0 OR discount.discount_end <= ' . time() .')';
(which should be improve if you want to manage the ACL ; I did not test it so I can't guarantee that it will work directly).
Regards,