While you can add filters as a consequence in Recommend Rules, the filter values are static and must be hard-coded in the Rule. They cannot be dynamically calculated or passed as variables.
For example, you can't create a Rule that dynamically recommends products within a price range based on the source product's price, such as $10–30 for a $20 product and $15–$35 for a $25 product.
A Rule could instead specify a fixed range, such as price:10 TO 30, but this would apply regardless of the source product's price.
How to use dynamic values
Rather than using a Rule, you can pass filters directly through the queryParameters parameter of your Recommend request.
This allows your application to retrieve a relevant value from the source items (ie: price, rating, etc), calculate the required filter values, and pass the resulting filter with each Recommend request.