my rule for amulet is simple.
@GOODAMULET:=([CRIT%].dual +[CRITDMG%].dual +[SOCKETS].dual) >= 2
[QUALITY]=="Legendary" && [TYPE]=="Amulet" # [@GOODAMULET] -> [KEEP]
means any amulet with at least two of crit, crit dmg and socket is valuable and kept.
Your rule can't check the minimum...