1. Do not provide a lottery. Approve by highest salary per occupational code/section. This will make sure wages are "high". 2. Mandate that beneficiaries of the H1B actually start employment and receive pay within 2 months of approval. This will ensure that companies don't just "hoard" H1B's. 3. Mandate a minimum of 1 years' work in the US per entry into the country unless employment is terminated due to forced loss.
The program has been misused. It's high time that is rectified.
By auctioning based on salary you're preferring areas with absurd costs of living - which is a) not where you necessarily need to get more people making the problem worse b) reinforcing economic inequality between areas of the country.
If there's a company needing some specialist somewhere with a saner cost of living, and they tried to find such a specialist, offering above market wages, what exactly is the benefit of not them having to pay twice or thrice the effective salary of somebody in SF/NYC?